Skip to content

Commit c20e575

Browse files
committed
controller can be swapped now
1 parent d13ccd1 commit c20e575

File tree

3 files changed

+50
-42
lines changed

3 files changed

+50
-42
lines changed

src/Controllers/AppSettingController.php

+2-38
Original file line numberDiff line numberDiff line change
@@ -2,46 +2,10 @@
22

33
namespace QCod\AppSettings\Controllers;
44

5-
use Illuminate\Http\Request;
65
use Illuminate\Routing\Controller;
7-
use QCod\AppSettings\Setting\AppSettings;
8-
use Illuminate\Foundation\Validation\ValidatesRequests;
6+
use QCod\AppSettings\SavesSettings;
97

108
class AppSettingController extends Controller
119
{
12-
use ValidatesRequests;
13-
14-
/**
15-
* Display the settings page
16-
*
17-
* @return \Illuminate\View\View
18-
*/
19-
public function index()
20-
{
21-
$settingsUI = config('app_settings', []);
22-
$settingViewName = config('app_settings.setting_page_view');
23-
24-
return view($settingViewName, compact('settingsUI'));
25-
}
26-
27-
/**
28-
* Save settings
29-
*
30-
* @param Request $request
31-
* @param AppSettings $appSettings
32-
* @return \Illuminate\Http\RedirectResponse
33-
*/
34-
public function store(Request $request, AppSettings $appSettings)
35-
{
36-
// validate the settings
37-
$this->validate($request, $appSettings->getValidationRules());
38-
39-
// save settings
40-
$appSettings->save($request);
41-
42-
return redirect(config('app_settings.url', '/'))
43-
->with([
44-
'status' => config('app_settings.submit_success_message', 'Settings Saved.')
45-
]);
46-
}
10+
use SavesSettings;
4711
}

src/SavesSettings.php

+46
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
<?php
2+
3+
namespace QCod\AppSettings;
4+
5+
use Illuminate\Http\Request;
6+
use QCod\AppSettings\Setting\AppSettings;
7+
use Illuminate\Foundation\Validation\ValidatesRequests;
8+
9+
trait SavesSettings
10+
{
11+
use ValidatesRequests;
12+
13+
/**
14+
* Display the settings page
15+
*
16+
* @return \Illuminate\View\View
17+
*/
18+
public function index()
19+
{
20+
$settingsUI = config('app_settings', []);
21+
$settingViewName = config('app_settings.setting_page_view');
22+
23+
return view($settingViewName, compact('settingsUI'));
24+
}
25+
26+
/**
27+
* Save settings
28+
*
29+
* @param Request $request
30+
* @param AppSettings $appSettings
31+
* @return \Illuminate\Http\RedirectResponse
32+
*/
33+
public function store(Request $request, AppSettings $appSettings)
34+
{
35+
// validate the settings
36+
$this->validate($request, $appSettings->getValidationRules());
37+
38+
// save settings
39+
$appSettings->save($request);
40+
41+
return redirect(config('app_settings.url', '/'))
42+
->with([
43+
'status' => config('app_settings.submit_success_message', 'Settings Saved.')
44+
]);
45+
}
46+
}

src/routes/web.php

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
<?php
22

33
Route::group([
4-
'namespace' => 'QCod\AppSettings\Controllers',
54
'middleware' => array_merge(['web'], config('app_settings.middleware', []))
65
], function () {
7-
Route::get(config('app_settings.url'), 'AppSettingController@index');
8-
9-
Route::post(config('app_settings.url'), 'AppSettingController@store');
6+
Route::get(config('app_settings.url'), config('app_settings.controller').'@index');
7+
Route::post(config('app_settings.url'), config('app_settings.controller').'@store');
108
});

0 commit comments

Comments
 (0)