64 lines
3.4 KiB
PHP
64 lines
3.4 KiB
PHP
<?php
|
|
|
|
// Tabulation Routes
|
|
use App\Http\Controllers\Tabulation\AdvancementController;
|
|
use App\Http\Controllers\Tabulation\BonusScoreController;
|
|
use App\Http\Controllers\Tabulation\DoublerDecisionController;
|
|
use App\Http\Controllers\Tabulation\EntryFlagController;
|
|
use App\Http\Controllers\Tabulation\ScoreController;
|
|
use App\Http\Controllers\Tabulation\SeatAuditionFormController;
|
|
use App\Http\Controllers\Tabulation\SeatingPublicationController;
|
|
use App\Http\Controllers\Tabulation\SeatingStatusController;
|
|
use App\Http\Middleware\CheckIfCanTab;
|
|
use Illuminate\Support\Facades\Route;
|
|
|
|
Route::middleware(['auth', 'verified', CheckIfCanTab::class])->group(function () {
|
|
|
|
// Score Management
|
|
Route::prefix('scores/')->controller(ScoreController::class)->group(function () {
|
|
Route::get('/choose_entry', 'chooseEntry')->name('scores.chooseEntry');
|
|
Route::get('/entry', 'entryScoreSheet')->name('scores.entryScoreSheet');
|
|
Route::post('/entry/{entry}', 'saveEntryScoreSheet')->name('scores.saveEntryScoreSheet');
|
|
Route::delete('/{score}', 'destroyScore')->name('scores.destroy');
|
|
});
|
|
|
|
// Bonus Score Management
|
|
Route::prefix('bonus-scores/')->controller(BonusScoreController::class)->group(function () {
|
|
Route::get('/choose_entry', 'chooseEntry')->name('bonus-scores.chooseEntry');
|
|
Route::get('/entry', 'entryBonusScoreSheet')->name('bonus-scores.entryBonusScoreSheet');
|
|
Route::post('/entry/{entry}', 'saveEntryBonusScoreSheet')->name('bonus-scores.saveEntryBonusScoreSheet');
|
|
Route::delete('/{bonusScore}', 'destroyBonusScore')->name('bonus-scores.destroy');
|
|
});
|
|
|
|
// Entry Flagging
|
|
Route::prefix('entry-flags/')->controller(EntryFlagController::class)->group(function () {
|
|
Route::get('/choose_no_show', 'noShowSelect')->name('entry-flags.noShowSelect');
|
|
Route::get('/propose-no-show', 'noShowConfirm')->name('entry-flags.confirmNoShow');
|
|
Route::post('/no-show/{entry}', 'enterNoShow')->name('entry-flags.enterNoShow');
|
|
Route::delete('/no-show/{entry}', 'undoNoShow')->name('entry-flags.undoNoShow');
|
|
});
|
|
|
|
// Seating Routes
|
|
Route::prefix('seating/')->group(function () {
|
|
Route::get('/', SeatingStatusController::class)->name('seating.status');
|
|
Route::match(['get', 'post'], '/{audition}', SeatAuditionFormController::class)->name('seating.audition');
|
|
Route::post('/{audition}/publish', [SeatingPublicationController::class, 'publishSeats'])->name('seating.audition.publish');
|
|
Route::post('/{audition}/unpublish', [SeatingPublicationController::class, 'unpublishSeats'])->name('seating.audition.unpublish');
|
|
});
|
|
|
|
// Advancement Routes
|
|
Route::prefix('advancement/')->controller(AdvancementController::class)->group(function () {
|
|
Route::get('/status', 'status')->name('advancement.status');
|
|
Route::get('/{audition}', 'ranking')->name('advancement.ranking');
|
|
Route::post('/{audition}', 'setAuditionPassers')->name('advancement.setAuditionPassers');
|
|
Route::delete('/{audition}', 'clearAuditionPassers')->name('advancement.clearAuditionPassers');
|
|
});
|
|
|
|
// Doubler decision routes
|
|
Route::prefix('doubler-decision')->controller(DoublerDecisionController::class)->group(function () {
|
|
Route::post('{entry}/accept', 'accept')->name('doubler.accept');
|
|
Route::post('{entry}/decline', 'decline')->name('doubler.decline');
|
|
});
|
|
|
|
});
|