From de232ab2b51caa22bf3f81c16a50993d8a9ae2ba Mon Sep 17 00:00:00 2001 From: James Brooks Date: Wed, 27 Apr 2016 14:47:47 +0100 Subject: [PATCH] Fixes removal of Customization values --- app/Config/Repository.php | 14 ++++++++++++++ .../Dashboard/SettingsController.php | 18 ++++++++++++++---- 2 files changed, 28 insertions(+), 4 deletions(-) diff --git a/app/Config/Repository.php b/app/Config/Repository.php index d245318c..9b758ecb 100644 --- a/app/Config/Repository.php +++ b/app/Config/Repository.php @@ -70,6 +70,20 @@ class Repository } } + /** + * Deletes a setting. + * + * @param string $name + * + * @return void + */ + public function delete($name) + { + $this->stale = true; + + $this->model->where('name', $name)->delete(); + } + /** * Is the config state stale? * diff --git a/app/Http/Controllers/Dashboard/SettingsController.php b/app/Http/Controllers/Dashboard/SettingsController.php index f4275796..9c5cdc4b 100644 --- a/app/Http/Controllers/Dashboard/SettingsController.php +++ b/app/Http/Controllers/Dashboard/SettingsController.php @@ -226,12 +226,22 @@ class SettingsController extends Controller $setting->set('app_banner', null); } - if ($header = Binput::get('header', null, false, false)) { - $setting->set('header', $header); + $parameters = Binput::all(); + + if (isset($parameters['header'])) { + if ($header = Binput::get('header', null, false, false)) { + $setting->set('header', $header); + } else { + $setting->delete('header'); + } } - if ($footer = Binput::get('footer', null, false, false)) { - $setting->set('footer', $footer); + if (isset($parameters['footer'])) { + if ($footer = Binput::get('footer', null, false, false)) { + $setting->set('footer', $footer); + } else { + $setting->delete('footer'); + } } if (Binput::hasFile('app_banner')) {