Skip to content

Commit 0e4788e

Browse files
authored
Merge pull request #81 from bvipul/vs_settings
Refactored Settings
2 parents fa36f1e + 344ada5 commit 0e4788e

File tree

3 files changed

+19
-46
lines changed

3 files changed

+19
-46
lines changed

app/Http/Controllers/Backend/Settings/SettingsController.php

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,22 +14,19 @@
1414
*/
1515
class SettingsController extends Controller
1616
{
17-
/**
18-
* @var SettingsRepository
19-
*/
2017
protected $settings;
2118

2219
/**
23-
* @param SettingsRepository $settings
20+
* @param \App\Repositories\Backend\Settings\SettingsRepository $settings
2421
*/
2522
public function __construct(SettingsRepository $settings)
2623
{
2724
$this->settings = $settings;
2825
}
2926

3027
/**
31-
* @param Setting $setting
32-
* @param ManageEmailTemplatesRequest $request
28+
* @param \App\Models\Settings\Setting $setting
29+
* @param \App\Http\Requests\Backend\Settings\ManageSettingsRequest $request
3330
*
3431
* @return mixed
3532
*/
@@ -40,16 +37,18 @@ public function edit(Setting $setting, ManageSettingsRequest $request)
4037
}
4138

4239
/**
43-
* @param Setting $setting
44-
* @param UpdateEmailTemplatesRequest $request
40+
* @param \App\Models\Settings\Setting $setting
41+
* @param \App\Http\Requests\Backend\Settings\UpdateSettingsRequest $request
4542
*
4643
* @return mixed
4744
*/
4845
public function update(Setting $setting, UpdateSettingsRequest $request)
4946
{
50-
$this->settings->update($setting, $request->all());
47+
$this->settings->update($setting, $request->except(['_token', '_method']));
5148

52-
return redirect()->route('admin.settings.edit', $setting->id)->withFlashSuccess(trans('alerts.backend.settings.updated'));
49+
return redirect()
50+
->route('admin.settings.edit', $setting->id)
51+
->with('flash_success', trans('alerts.backend.settings.updated'));
5352
}
5453

5554
/**

app/Http/Requests/Backend/Settings/UpdateSettingsRequest.php

Lines changed: 3 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -27,25 +27,9 @@ public function authorize()
2727
*/
2828
public function rules()
2929
{
30-
$data = Setting::find(1);
31-
$checkLogo = $data->logo;
32-
$checkFavicon = $data->favicon;
33-
if (!empty($checkLogo)) {
34-
$logoValidation = 'image|dimensions:min_width=226,min_height=48';
35-
} else {
36-
$logoValidation = 'required|image|dimensions:min_width=226,min_height=48';
37-
}
38-
if (!empty($checkFavicon)) {
39-
$faviconValidation = 'mimes:jpg,jpeg,png,ico|dimensions:width=16,height=16';
40-
} else {
41-
$faviconValidation = 'required|mimes:jpg,jpeg,png,ico|dimensions:width=16,height=16';
42-
}
43-
4430
return [
45-
'logo' => $logoValidation,
46-
'favicon' => $faviconValidation,
47-
'from_name' => 'required',
48-
'from_email' => 'required',
31+
'logo' => 'image|dimensions:min_width=226,min_height=48',
32+
'favicon' => 'mimes:jpg,jpeg,png,ico|dimensions:width=16,height=16',
4933
];
5034
}
5135

@@ -58,11 +42,7 @@ public function messages()
5842
{
5943
return [
6044
'logo.dimensions' => 'Invalid logo - should be minimum 226*48',
61-
'favicon.dimensions' => 'Invalid icon - should be 16*16',
62-
'logo.required' => 'The logo field is required in seo settings.',
63-
'favicon.required' => 'The favicon field is required in seo settings.',
64-
'from_name.required' => 'The from name field is required in mail settings.',
65-
'from_email.required' => 'The from email field is required in mail settings.',
45+
'favicon.dimensions' => 'Invalid favicon - should be 16*16'
6646
];
6747
}
6848
}

app/Repositories/Backend/Settings/SettingsRepository.php

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -18,19 +18,15 @@ class SettingsRepository extends BaseRepository
1818
const MODEL = Setting::class;
1919

2020
/**
21-
* @param Model $permission
21+
* @param \App\Models\Settings\Setting $setting
2222
* @param $input
2323
*
24-
* @throws GeneralException
24+
* @throws \App\Exceptions\GeneralException
2525
*
2626
* return bool
2727
*/
28-
public function update(Model $setting, array $input)
28+
public function update(Setting $setting, array $input)
2929
{
30-
// Unsetting method and token values from array
31-
unset($input['_method']);
32-
unset($input['_token']);
33-
3430
if (isset($input['logo'])) {
3531
$image_upload = $this->uploadlogoimage($setting, $input['logo']);
3632
$input['logo'] = $image_upload;
@@ -41,13 +37,11 @@ public function update(Model $setting, array $input)
4137
$input['favicon'] = $image_upload;
4238
}
4339

44-
DB::transaction(function () use ($setting, $input) {
45-
if ($setting->update($input)) {
46-
return true;
47-
}
40+
if ($setting->update($input)) {
41+
return true;
42+
}
4843

49-
throw new GeneralException(trans('exceptions.backend.settings.update_error'));
50-
});
44+
throw new GeneralException(trans('exceptions.backend.settings.update_error'));
5145
}
5246

5347
/*

0 commit comments

Comments
 (0)