36 lines
1.5 KiB
PHP
36 lines
1.5 KiB
PHP
<?php
|
||
|
||
use App\Http\Controllers\PokerController;
|
||
use Illuminate\Support\Facades\Route;
|
||
|
||
Route::get('/', function () {
|
||
return view('welcome');
|
||
});
|
||
|
||
// Публичные маршруты
|
||
Route::get('/s/{token}', [PokerController::class, 'showForm'])->name('vote.form');
|
||
Route::post('/s/{token}', [PokerController::class, 'submitVote']);
|
||
Route::get('/thanks', [PokerController::class, 'thanks'])->name('vote.thanks');
|
||
|
||
// Админка с базовой аутентификацией
|
||
Route::prefix('admin')->group(function () {
|
||
Route::match(['get', 'post'], '/login', function () {
|
||
if (isset($_SERVER['PHP_AUTH_USER'])) {
|
||
if ($_SERVER['PHP_AUTH_USER'] === env('ADMIN_USER') &&
|
||
$_SERVER['PHP_AUTH_PW'] === env('ADMIN_PASS')) {
|
||
session(['admin_logged_in' => true]);
|
||
return redirect('/admin/sessions');
|
||
}
|
||
}
|
||
header('WWW-Authenticate: Basic realm="Admin Login"');
|
||
abort(401);
|
||
});
|
||
|
||
Route::middleware([\App\Http\Middleware\EnsureAdminAuthenticated::class])->group(function () {
|
||
Route::get('/sessions/create', [PokerController::class, 'createEstimationRoundForm'])->name('admin.session.create');
|
||
Route::post('/sessions', [PokerController::class, 'createEstimationRound'])->name('admin.sessions.store');
|
||
Route::get('/sessions', [PokerController::class, 'listEstimationRounds'])->name('admin.sessions');
|
||
Route::get('/sessions/{id}', [PokerController::class, 'showEstimationRound']);
|
||
});
|
||
});
|