136 lines
5.6 KiB
PHP
136 lines
5.6 KiB
PHP
<?php
|
|
|
|
use App\Http\Controllers\DashboardController;
|
|
use App\Http\Controllers\EntryController;
|
|
use App\Http\Controllers\FilterController;
|
|
use App\Http\Controllers\SchoolController;
|
|
use App\Http\Controllers\StudentController;
|
|
use App\Http\Controllers\TestController;
|
|
use App\Http\Controllers\UserController;
|
|
use App\Http\Middleware\CheckIfAdmin;
|
|
use Illuminate\Support\Facades\Auth;
|
|
use Illuminate\Support\Facades\Route;
|
|
|
|
Route::get('/test',[TestController::class,'flashTest'])->middleware('auth','verified');
|
|
|
|
Route::view('/','welcome')->middleware('guest');
|
|
|
|
// Admin Routes
|
|
Route::middleware(['auth','verified',CheckIfAdmin::class])->prefix('admin/')->group(function() {
|
|
Route::view('/','admin.dashboard');
|
|
|
|
// Scoring
|
|
Route::prefix('scoring')->controller(\App\Http\Controllers\Admin\ScoringGuideController::class)->group(function() {
|
|
Route::get('/','index'); // Scoring Setup Homepage
|
|
Route::post('/guides','store'); // Save a new scoring guide
|
|
Route::get('/guides/{guide}/edit','edit'); // Edit scoring guide
|
|
Route::patch('/guides/{guide}/edit','update'); // Save changes to audition guide (rename)
|
|
Route::post('/guides/{guide}/subscore','subscore_store'); // Save a new subscore
|
|
Route::post('/reorder-display','reorder_display');
|
|
Route::post('/reorder-tiebreak','reorder_tiebreak');
|
|
});
|
|
|
|
|
|
// Admin Auditions Routes
|
|
Route::prefix('auditions')->controller(\App\Http\Controllers\Admin\AuditionController::class)->group(function() {
|
|
Route::get('/','index')->name('adminAuditionIndex');
|
|
Route::get('/create','create');
|
|
Route::post('/','store');
|
|
Route::get('/{audition}/edit','edit');
|
|
Route::patch('/{audition}','update');
|
|
Route::post('/reorder','reorder');
|
|
Route::delete('/{audition}','destroy');
|
|
});
|
|
|
|
// Admin Entries Routes
|
|
Route::prefix('entries')->controller(\App\Http\Controllers\Admin\EntryController::class)->group(function() {
|
|
Route::get('/','index');
|
|
Route::get('/create','create');
|
|
Route::post('/','store');
|
|
Route::get('/{entry}/edit','edit');
|
|
Route::patch('/{entry}','update');
|
|
});
|
|
|
|
// Admin Student Routes
|
|
Route::prefix('students')->controller(\App\Http\Controllers\Admin\StudentController::class)->group(function() {
|
|
Route::get('/','index');
|
|
Route::get('/create','create');
|
|
Route::post('/','store');
|
|
Route::get('/{student}/edit','edit');
|
|
Route::patch('/{student}','update');
|
|
});
|
|
|
|
// Admin School Routes
|
|
Route::prefix('schools')->controller(\App\Http\Controllers\Admin\SchoolController::class)->group(function() {
|
|
Route::get('/','index');
|
|
Route::get('/{school}/edit','edit');
|
|
Route::patch('/{school}','update');
|
|
});
|
|
|
|
// Admin User Routes
|
|
Route::prefix('users')->controller(\App\Http\Controllers\Admin\UserController::class)->group(function() {
|
|
Route::get('/','index');
|
|
Route::get('/create','create');
|
|
Route::post('/','store');
|
|
Route::get('/{user}/edit','edit');
|
|
Route::patch('/{user}','update');
|
|
Route::delete('/{user}','destroy');
|
|
});
|
|
});
|
|
|
|
// Dashboard Related Routes
|
|
Route::middleware(['auth','verified'])->group(function () {
|
|
Route::get('/dashboard', [DashboardController::class, 'dashboard'])->name('dashboard');
|
|
Route::get('/profile', [DashboardController::class, 'profile']);
|
|
Route::get('/my_school', [DashboardController::class, 'my_school']);
|
|
});
|
|
|
|
// Entry Related Routes
|
|
Route::middleware(['auth','verified','can:create,App\Models\Entry'])->controller(EntryController::class)->group(function() {
|
|
Route::get('/entries','index');
|
|
Route::get('/entries/create','create');
|
|
Route::post('/entries', 'store');
|
|
Route::delete('/entries/{entry}', 'destroy');
|
|
});
|
|
|
|
// User Related Routes
|
|
Route::middleware(['auth','verified'])->controller(UserController::class)->group(function() {
|
|
Route::patch('/users/{user}/set_school', 'set_school');
|
|
Route::patch('/users/{$user}', 'update');
|
|
});
|
|
|
|
// Student Related Routes
|
|
Route::middleware(['auth','verified','can:create,App\Models\Student'])->controller(StudentController::class)->group(function() {
|
|
Route::get('/students','index');
|
|
Route::post('students', 'store');
|
|
Route::get('/students/{student}/edit','edit');
|
|
Route::patch('/students/{student}','update');
|
|
Route::delete('/students/{student}', 'destroy');
|
|
});
|
|
|
|
|
|
// School Related Routes
|
|
Route::middleware(['auth','verified'])->controller(SchoolController::class)->group(function() {
|
|
Route::get('/schools/create', 'create');
|
|
Route::post('/schools','store');
|
|
Route::get('/schools/{school}/edit','edit');
|
|
Route::get('/schools/{school}','show');
|
|
Route::patch('/schools/{school}','update');
|
|
});
|
|
|
|
// Filter Related Routes
|
|
Route::prefix('filters')->middleware(['auth','verified'])->controller(FilterController::class)->group(function() {
|
|
Route::post('/admin_entry_filter','adminEntryFilter');
|
|
Route::get('/admin_entry_filter/clear','clearAdminEntryFilter');
|
|
});
|
|
|
|
|
|
//Route::get('/my_school', [SchoolController::class, 'my_school'])->middleware('auth','verified');
|
|
//Route::get('/schools/create', [SchoolController::class, 'create'])->middleware('auth','verified');
|
|
//Route::post('/schools', [SchoolController::class, 'store'])->middleware('auth','verified');
|
|
//Route::get('/schools/{school}/edit', [SchoolController::class, 'edit'])->middleware('auth','verified');
|
|
//Route::get('/schools/{school}', [SchoolController::class, 'show'])->middleware('auth','verified');
|
|
//Route::patch('/schools/{school}', [SchoolController::class, 'update'])->middleware('auth','verified');
|
|
|
|
|