-
Notifications
You must be signed in to change notification settings - Fork 52
/
HRController.php
39 lines (34 loc) · 1.18 KB
/
HRController.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
namespace App\Http\Controllers\Settings;
use App\Helpers\ContentHelper;
use App\Http\Controllers\Controller;
use App\Http\Requests\Setting\SettingRequest;
use App\Models\Setting;
use Modules\HR\Entities\Round;
class HRController extends Controller
{
public function index()
{
$this->authorize('view', Setting::class);
$attr = [];
$attr['settings'] = Setting::where('module', 'hr')->get()->keyBy('setting_key');
$attr['rounds'] = Round::all();
$attr['roundMailTypes'] = [
config('constants.hr.status.confirmed'),
config('constants.hr.status.rejected'),
];
return view('settings.hr.index')->with($attr);
}
public function update(SettingRequest $request)
{
$this->authorize('update', Setting::class);
$validated = $request->validated();
foreach ($validated['setting_key'] as $key => $value) {
Setting::updateOrCreate(
['module' => 'hr', 'setting_key' => $key],
['setting_value' => $value ? ContentHelper::editorFormat($value) : null]
);
}
return redirect()->back()->with('status', 'Settings saved!');
}
}