Fix: join room by link to load css
This commit is contained in:
		| @@ -253,13 +253,16 @@ func HandleStartGame(w http.ResponseWriter, r *http.Request) { | |||||||
|  |  | ||||||
| func HandleJoinRoom(w http.ResponseWriter, r *http.Request) { | func HandleJoinRoom(w http.ResponseWriter, r *http.Request) { | ||||||
| 	roomID := r.URL.Query().Get("id") | 	roomID := r.URL.Query().Get("id") | ||||||
|  | 	log.Debug("got join-room request", "id", roomID) | ||||||
| 	room, err := repo.RoomGetExtended(r.Context(), roomID) | 	room, err := repo.RoomGetExtended(r.Context(), roomID) | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
|  | 		log.Error("failed to fetch room", "error", err, "room_id", roomID) | ||||||
| 		abortWithError(w, err.Error()) | 		abortWithError(w, err.Error()) | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 	tmpl, err := template.ParseGlob("components/*.html") | 	tmpl, err := template.ParseGlob("components/*.html") | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
|  | 		log.Error("failed to parse templates", "error", err, "room_id", roomID) | ||||||
| 		abortWithError(w, err.Error()) | 		abortWithError(w, err.Error()) | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| @@ -271,6 +274,7 @@ func HandleJoinRoom(w http.ResponseWriter, r *http.Request) { | |||||||
| 		if err := tmpl.ExecuteTemplate(w, "base", fi); err != nil { | 		if err := tmpl.ExecuteTemplate(w, "base", fi); err != nil { | ||||||
| 			log.Error("failed to execute base template", "error", err) | 			log.Error("failed to execute base template", "error", err) | ||||||
| 		} | 		} | ||||||
|  | 		log.Error("failed to fetch fi", "error", err, "room_id", roomID) | ||||||
| 		// abortWithError(w, err.Error()) | 		// abortWithError(w, err.Error()) | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| @@ -283,7 +287,7 @@ func HandleJoinRoom(w http.ResponseWriter, r *http.Request) { | |||||||
| 		abortWithError(w, err.Error()) | 		abortWithError(w, err.Error()) | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 	if err := tmpl.ExecuteTemplate(w, "room", fi); err != nil { | 	if err := tmpl.ExecuteTemplate(w, "base", fi); err != nil { | ||||||
| 		log.Error("failed to execute room template", "error", err) | 		log.Error("failed to execute room template", "error", err) | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|   | |||||||
| @@ -88,6 +88,11 @@ func HandleExit(w http.ResponseWriter, r *http.Request) { | |||||||
| 		http.Redirect(w, r, "/", 302) | 		http.Redirect(w, r, "/", 302) | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
|  | 	if fi.Room == nil { | ||||||
|  | 		log.Error("failed to fetch room") | ||||||
|  | 		http.Redirect(w, r, "/", 302) | ||||||
|  | 		return | ||||||
|  | 	} | ||||||
| 	if fi.Room.IsRunning { | 	if fi.Room.IsRunning { | ||||||
| 		abortWithError(w, "cannot leave when game is running") | 		abortWithError(w, "cannot leave when game is running") | ||||||
| 		return | 		return | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Grail Finder
					Grail Finder