route('room'); if (! $room instanceof Room) { abort(404); } $sessionKey = "room_players.{$room->id}"; $playerId = $request->session()->get($sessionKey); if (! $playerId) { return to_route('room.join', [ 'join_code' => $room->join_code, ])->withErrors([ 'join_code' => 'Du musst diesen Raum erst beitreten.', ]); } $player = $room->players()->find($playerId); if (! $player) { $request->session()->forget($sessionKey); return to_route('room.join', [ 'join_code' => $room->join_code, ]); } $request->attributes->set('currentPlayer', $player); return $next($request); } }