Subscores can be deleted from a scoring guide
This commit is contained in:
parent
4a21fb39ce
commit
a96e7f4206
|
|
@ -135,6 +135,9 @@ class ScoringGuideController extends Controller
|
|||
if (! $guide->exists() || ! $subscore->exists()) {
|
||||
abort(409);
|
||||
}
|
||||
if ($subscore->scoring_guide_id !== $guide->id) { // Make sure the subscore were updating belongs to the guide
|
||||
abort(409);
|
||||
}
|
||||
$validateData = request()->validate([
|
||||
'name' => ['required'],
|
||||
'max_score' => ['required', 'integer'],
|
||||
|
|
@ -157,6 +160,24 @@ class ScoringGuideController extends Controller
|
|||
return redirect('/admin/scoring/guides/'.$guide->id.'/edit')->with('success', 'Subscore updated');
|
||||
}
|
||||
|
||||
public function subscore_destroy(ScoringGuide $guide, SubscoreDefinition $subscore)
|
||||
{
|
||||
if (! Auth::user()->is_admin) {
|
||||
abort(403);
|
||||
}
|
||||
if (! $guide->exists() || ! $subscore->exists()) {
|
||||
abort(409);
|
||||
}
|
||||
if ($subscore->scoring_guide_id !== $guide->id) { // Make sure the subscore were updating belongs to the guide
|
||||
abort(409);
|
||||
}
|
||||
|
||||
$subscore->delete();
|
||||
|
||||
return redirect('/admin/scoring/guides/'.$guide->id.'/edit')->with('success', 'Subscore deleted');
|
||||
|
||||
}
|
||||
|
||||
|
||||
public function reorder_display(Request $request)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
<x-modal-body>
|
||||
<x-modal-body class="relative">
|
||||
<x-slot:title>Edit Subscore</x-slot:title>
|
||||
<x-table.table>
|
||||
<thead><tr>
|
||||
|
|
@ -29,4 +29,11 @@
|
|||
</x-form.form>
|
||||
</x-table.body>
|
||||
</x-table.table>
|
||||
<div class="border-t relative pb-12">
|
||||
<form method="POST" action="{{ route('admin.scoring.subscore_destroy', ['guide' => $guide->id, 'subscore' => $subscore->id]) }}">
|
||||
@csrf
|
||||
@method('DELETE')
|
||||
<x-form.red-trash-button class="mt-3 absolute bottom-0 right-0" />
|
||||
</form>
|
||||
</div>
|
||||
</x-modal-body>
|
||||
|
|
|
|||
|
|
@ -52,7 +52,8 @@ Route::middleware(['auth', 'verified', CheckIfAdmin::class])->prefix('admin/')->
|
|||
Route::get('/guides/{guide}/edit', 'edit')->name('admin.scoring.edit'); // Edit scoring guide
|
||||
Route::patch('/guides/{guide}/edit', 'update')->name('admin.scoring.update'); // Save changes to audition guide (rename)
|
||||
Route::post('/guides/{guide}/subscore', 'subscore_store')->name('admin.scoring.subscore_store'); // Save a new subscore
|
||||
Route::patch('/guides/{guide}/subscore/{subscore}', 'subscore_update')->name('admin.scoring.subscore_update'); // Save a new subscore
|
||||
Route::patch('/guides/{guide}/subscore/{subscore}', 'subscore_update')->name('admin.scoring.subscore_update'); // Modify a subscore
|
||||
Route::delete('/guides/{guide}/subscore/{subscore}', 'subscore_destroy')->name('admin.scoring.subscore_destroy'); // Delete a subscore
|
||||
Route::post('/reorder-display', 'reorder_display')->name('admin.scoring.reorder_display');
|
||||
Route::post('/reorder-tiebreak', 'reorder_tiebreak')->name('admin.scoring.reorder_tiebreak');
|
||||
Route::delete('/guides/{guide}', 'destroy')->name('admin.scoring.destroy'); // Delete a scoring guide
|
||||
|
|
|
|||
Loading…
Reference in New Issue