Feat: create room

This commit is contained in:
Grail Finder
2025-05-09 11:24:33 +03:00
parent e20118acea
commit 2b4bf2ec29
6 changed files with 39 additions and 18 deletions

View File

@ -72,16 +72,20 @@ func HandleFrontLogin(w http.ResponseWriter, r *http.Request) {
abortWithError(w, err.Error())
return
}
state := models.MakeTestState(cleanName)
state.State.Username = cleanName
// state := models.MakeTestState(cleanName)
// state.State.Username = cleanName
userstate := models.InitState(cleanName)
fi := &models.FullInfo{
State: userstate,
}
// save state to cache
// if err := saveState(cleanName, state.State); err != nil {
if err := saveFullInfo(state); err != nil {
if err := saveState(cleanName, userstate); err != nil {
// if err := saveFullInfo(fi); err != nil {
log.Error("failed to save state", "error", err)
abortWithError(w, err.Error())
return
}
tmpl.ExecuteTemplate(w, "base", state)
tmpl.ExecuteTemplate(w, "base", fi)
}
func makeCookie(username string, remote string) (*http.Cookie, error) {
@ -152,7 +156,7 @@ func cacheSetSession(key string, session *models.Session) error {
}
func updateRoomInSession(ctx context.Context, roomID string) (context.Context, error) {
s, ok := ctx.Value("session").(models.Session)
s, ok := ctx.Value(models.CtxSessionKey).(*models.Session)
if !ok {
return context.TODO(), errors.New("failed to extract session from ctx")
}