ldc-tousenselle/app/Http/Middleware/TeaserMiddleware.php
Jérémy Munsch f7a3f5d5f9 first draw
2021-06-14 09:34:42 +02:00

32 lines
876 B
PHP

<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Illuminate\Support\Carbon;
class TeaserMiddleware
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle(Request $request, Closure $next)
{
config(['game.gameStarted' => Carbon::now() >= config('game.gameStart')]);
if (
!in_array($request->route()->getName(), [
'teaser', 'logout', 'rules', 'legals'
]) and Carbon::now() < config('game.gameStart')
) {
return response()->redirectToRoute('teaser');
} elseif ($request->route()->getName() === 'teaser') {
return response()->redirectToRoute('home', [], 301);
}
return $next($request);
}
}