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