2024-07-19 19:51:38 -04:00
|
|
|
<?php
|
|
|
|
|
|
|
|
use App\Http\Controllers\ProfileController;
|
|
|
|
use Illuminate\Support\Facades\Route;
|
2024-07-20 13:02:52 -04:00
|
|
|
use App\Http\Controllers\TwitchController;
|
2024-07-27 15:40:35 -04:00
|
|
|
use App\Http\Controllers\GameSessionController;
|
|
|
|
use App\Http\Controllers\PaletteController;
|
2024-07-28 18:06:05 -04:00
|
|
|
use App\Http\Controllers\CommandController;
|
|
|
|
use App\Http\Controllers\CurrentStateController;
|
|
|
|
use App\Http\Controllers\AdministrationController;
|
2024-07-27 15:40:35 -04:00
|
|
|
|
2024-07-28 18:06:05 -04:00
|
|
|
// Administration routes
|
|
|
|
Route::get('/administration', [AdministrationController::class, 'index'])->name('administration.index');
|
|
|
|
Route::post('/administration/reset-board', [AdministrationController::class, 'resetBoard'])->name('administration.resetBoard');
|
|
|
|
Route::post('/administration/change-palette', [AdministrationController::class, 'changePalette'])->name('administration.changePalette');
|
|
|
|
Route::post('/administration/create-game', [AdministrationController::class, 'createGame'])->name('administration.createGame');
|
|
|
|
|
|
|
|
// Command parsing route
|
|
|
|
Route::post('/command/parse', [CommandController::class, 'parseChatMessage']);
|
|
|
|
|
|
|
|
// Current state route
|
|
|
|
Route::get('/api/current-state', [CurrentStateController::class, 'index']);
|
|
|
|
|
|
|
|
// Palette Editor routes
|
2024-07-27 15:40:35 -04:00
|
|
|
Route::get('/palette-editor', [PaletteController::class, 'index']);
|
|
|
|
Route::post('/palette-editor', [PaletteController::class, 'store']);
|
2024-07-28 18:06:05 -04:00
|
|
|
Route::post('/palette-editor/{palette}/rename', [PaletteController::class, 'rename']);
|
|
|
|
Route::delete('/palette-editor/{palette}', [PaletteController::class, 'delete']);
|
|
|
|
Route::get('/palette-editor/{palette}/colors', [PaletteController::class, 'getColors']);
|
2024-07-27 15:40:35 -04:00
|
|
|
Route::post('/palette-editor/{palette}/colors', [PaletteController::class, 'addColor']);
|
|
|
|
Route::put('/palette-editor/{palette}/colors/{color}', [PaletteController::class, 'updateColor']);
|
|
|
|
Route::delete('/palette-editor/{palette}/colors/{color}', [PaletteController::class, 'deleteColor']);
|
2024-07-28 18:06:05 -04:00
|
|
|
Route::get('/palette-editor/{palette}/export', [PaletteController::class, 'export']);
|
|
|
|
Route::post('/palette-editor/import', [PaletteController::class, 'import']);
|
2024-07-27 15:40:35 -04:00
|
|
|
|
2024-07-20 13:02:52 -04:00
|
|
|
|
2024-07-28 18:06:05 -04:00
|
|
|
// Twitch chat message parsing route
|
2024-07-20 13:02:52 -04:00
|
|
|
Route::post('/twitch/parse', [TwitchController::class, 'parseChatMessage']);
|
2024-07-19 19:51:38 -04:00
|
|
|
|
2024-07-28 18:06:05 -04:00
|
|
|
// Game session routes
|
2024-07-27 15:40:35 -04:00
|
|
|
Route::post('/game-session/start', [GameSessionController::class, 'start']);
|
2024-07-28 18:06:05 -04:00
|
|
|
Route::post('/game-session/end/{id}', [GameSessionController::class, 'end']);
|
2024-07-27 15:40:35 -04:00
|
|
|
Route::get('/game-session/current', [GameSessionController::class, 'current']);
|
|
|
|
|
2024-07-28 18:06:05 -04:00
|
|
|
// Static views
|
2024-07-19 19:51:38 -04:00
|
|
|
Route::get('/', function () {
|
|
|
|
return view('welcome');
|
|
|
|
});
|
|
|
|
|
2024-07-20 13:02:52 -04:00
|
|
|
Route::get('/prototype', function () {
|
|
|
|
return view('prototype');
|
|
|
|
});
|
|
|
|
|
2024-07-19 19:51:38 -04:00
|
|
|
Route::get('/dashboard', function () {
|
|
|
|
return view('dashboard');
|
2024-07-27 15:40:35 -04:00
|
|
|
});
|
2024-07-19 19:51:38 -04:00
|
|
|
|
2024-07-20 13:02:52 -04:00
|
|
|
Route::get('/testing', function () {
|
|
|
|
return view('testing');
|
|
|
|
})->middleware(['auth', 'verified'])->name('testing');
|
|
|
|
|
2024-07-28 18:06:05 -04:00
|
|
|
// Authenticated user profile routes
|
2024-07-19 19:51:38 -04:00
|
|
|
Route::middleware('auth')->group(function () {
|
|
|
|
Route::get('/profile', [ProfileController::class, 'edit'])->name('profile.edit');
|
|
|
|
Route::patch('/profile', [ProfileController::class, 'update'])->name('profile.update');
|
|
|
|
Route::delete('/profile', [ProfileController::class, 'destroy'])->name('profile.destroy');
|
2024-07-28 18:06:05 -04:00
|
|
|
Route::get('/register', [ProfileController::class, 'register'])->name('register');
|
|
|
|
Route::post('/register', [ProfileController::class, 'store'])->name('register.store');
|
2024-07-19 19:51:38 -04:00
|
|
|
});
|
|
|
|
|
|
|
|
require __DIR__.'/auth.php';
|