first
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin\Setup;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Requests\Admin\Setup\UpsertElectionSettingsRequest;
|
||||
use App\Models\Election;
|
||||
use App\Services\Admin\ElectionSettingsService;
|
||||
use App\Services\RegistrationPeriodService;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use Illuminate\View\View;
|
||||
|
||||
class ElectionSettingsController extends Controller
|
||||
{
|
||||
public function edit(Election $election, RegistrationPeriodService $registrationPeriodService): View
|
||||
{
|
||||
return view('admin.setup.settings.edit', [
|
||||
'election' => $election->load('settings'),
|
||||
'isRegistrationOpen' => $election->settings
|
||||
? $registrationPeriodService->isOpen($election)
|
||||
: false,
|
||||
]);
|
||||
}
|
||||
|
||||
public function store(
|
||||
UpsertElectionSettingsRequest $request,
|
||||
Election $election,
|
||||
ElectionSettingsService $service,
|
||||
): RedirectResponse {
|
||||
abort_if($election->settings !== null, 409);
|
||||
|
||||
$service->create($election, $request->validated(), $request->user());
|
||||
|
||||
return redirect()->route('admin.setup.settings.edit', $election)
|
||||
->with('status', 'Tetapan pilihanraya telah dicipta.');
|
||||
}
|
||||
|
||||
public function update(
|
||||
UpsertElectionSettingsRequest $request,
|
||||
Election $election,
|
||||
ElectionSettingsService $service,
|
||||
): RedirectResponse {
|
||||
abort_unless($election->settings !== null, 404);
|
||||
|
||||
$service->update($election, $request->validated(), $request->user());
|
||||
|
||||
return redirect()->route('admin.setup.settings.edit', $election)
|
||||
->with('status', 'Tetapan pilihanraya telah dikemas kini.');
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user