FIX: fix saving settings

Until now, only existing settings could be saved. No new records, only updates.
This commit is contained in:
Michal Kváček
2016-04-01 17:00:55 +02:00
parent 0c1162589c
commit efd2465b8b
+16 -7
View File
@@ -43,18 +43,27 @@ class Settings extends Controller
$settings = $this->settings->getAll(); $settings = $this->settings->getAll();
$updated = 0; $updated = 0;
foreach($data as $key => $value) { foreach ($data as $key => $value) {
if ($settings->$key != $value) { if (isset($settings->$key)) {
$updated ++; if ($settings->$key != $value) {
\App\Models\Settings::where('key', $key)->update(['value' => $value]); $updated++;
\App\Models\Settings::where('key', $key)
->update(['value' => $value]);
}
} else {
\App\Models\Settings::create(['key' => $key, 'value' => $value]);
$updated++;
} }
} }
if ($updated > 0) { if ($updated > 0) {
return redirect()->route('settings.overview')->with('success', trans('admin/settings.successfullySaved')); return redirect()
->route('settings.overview')
->with('success', trans('admin/settings.successfullySaved'));
} else { } else {
return redirect()->route('settings.overview')->with('error', trans('admin/settings.nothingToSave')); return redirect()
->route('settings.overview')
->with('error', trans('admin/settings.nothingToSave'));
} }
} }
} }