query('join_code'))); $room = $this->roomParticipation->findByJoinCode($joinCode); $existingPlayer = $room !== null ? $this->roomParticipation->findExistingPlayer( $room, $request->user(), $request->session()->get("room_players.{$room->id}"), ) : null; if ( $room !== null && ! $room->isClosed() && $existingPlayer instanceof Player ) { return to_route('room.show', $room); } return Inertia::render('rooms/Join', [ 'join_code' => $joinCode, 'defaultPlayerName' => $existingPlayer instanceof Player ? $existingPlayer->name : $request->user()?->name, 'closedRoom' => $room?->isClosed() ? (new ClosedRoomResource($room))->resolve($request) : null, ]); } }