From eb53a7484e036f9ab5e63269ba9713ae8cee9358 Mon Sep 17 00:00:00 2001 From: denisdulici Date: Sat, 18 Nov 2017 12:47:57 +0300 Subject: [PATCH] fixed #83 --- .../Controllers/Api/Settings/Settings.php | 84 +++++++++++++++++++ app/Transformers/Setting/Setting.php | 23 +++++ 2 files changed, 107 insertions(+) create mode 100644 app/Http/Controllers/Api/Settings/Settings.php create mode 100644 app/Transformers/Setting/Setting.php diff --git a/app/Http/Controllers/Api/Settings/Settings.php b/app/Http/Controllers/Api/Settings/Settings.php new file mode 100644 index 000000000..d2a75f1c6 --- /dev/null +++ b/app/Http/Controllers/Api/Settings/Settings.php @@ -0,0 +1,84 @@ +response->collection($settings, new Transformer()); + } + + /** + * Display the specified resource. + * + * @param int|string $id + * @return \Dingo\Api\Http\Response + */ + public function show($id) + { + // Check if we're querying by id or key + if (is_numeric($id)) { + $setting = Setting::find($id); + } else { + $setting = Setting::where('key', $id)->first(); + } + + return $this->response->item($setting, new Transformer()); + } + + /** + * Store a newly created resource in storage. + * + * @param $request + * @return \Dingo\Api\Http\Response + */ + public function store(Request $request) + { + $setting = Setting::create($request->all()); + + return $this->response->created(url('api/settings/'.$setting->id)); + } + + /** + * Update the specified resource in storage. + * + * @param $setting + * @param $request + * @return \Dingo\Api\Http\Response + */ + public function update(Setting $setting, Request $request) + { + $setting->update($request->all()); + + return $this->response->item($setting->fresh(), new Transformer()); + } + + /** + * Remove the specified resource from storage. + * + * @param Setting $setting + * @return \Dingo\Api\Http\Response + */ + public function destroy(Setting $setting) + { + $setting->delete(); + + return $this->response->noContent(); + } +} diff --git a/app/Transformers/Setting/Setting.php b/app/Transformers/Setting/Setting.php new file mode 100644 index 000000000..733b0610e --- /dev/null +++ b/app/Transformers/Setting/Setting.php @@ -0,0 +1,23 @@ + $model->id, + 'company_id' => $model->company_id, + 'key' => $model->key, + 'value' => $model->value, + ]; + } +}