app/routes/web.php

47 lines
1.5 KiB
PHP
Raw Normal View History

<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\Auth\LoginController;
use App\Http\Controllers\Auth\RegisterController;
Route::get('/', function () {
return redirect()->route('dashboard');
});
// Guest routes
Route::middleware('guest')->group(function () {
Route::get('/login', [LoginController::class, 'showLoginForm'])->name('login');
Route::post('/login', [LoginController::class, 'login']);
Route::get('/register', [RegisterController::class, 'showRegistrationForm'])->name('register');
Route::post('/register', [RegisterController::class, 'register']);
});
// CSRF refresh route (available to both guest and authenticated users)
Route::get('/refresh-csrf', function () {
return response()->json(['token' => csrf_token()]);
})->name('refresh-csrf');
// Authenticated routes
Route::middleware('auth')->group(function () {
Route::post('/logout', [LoginController::class, 'logout'])->name('logout');
2026-01-05 23:51:50 +01:00
// Routes requiring active subscription in SaaS mode
Route::middleware('subscription')->group(function () {
Route::get('/dashboard', function () {
return view('dashboard');
})->name('dashboard');
Route::get('/dishes', function () {
return view('dishes.index');
})->name('dishes.index');
Route::get('/schedule', function () {
return view('schedule.index');
})->name('schedule.index');
Route::get('/users', function () {
return view('users.index');
})->name('users.index');
});
});