Enha: load state instead of room
This commit is contained in:
		| @@ -80,6 +80,7 @@ func HandleFrontLogin(w http.ResponseWriter, r *http.Request) { | |||||||
| 	// } | 	// } | ||||||
| 	// state := models.InitState(cleanName) | 	// state := models.InitState(cleanName) | ||||||
| 	state := models.MakeTestState() | 	state := models.MakeTestState() | ||||||
|  | 	state.Username = cleanName | ||||||
| 	// save state to cache | 	// save state to cache | ||||||
| 	saveState(cleanName, state) | 	saveState(cleanName, state) | ||||||
| 	tmpl.ExecuteTemplate(w, "base", state) | 	tmpl.ExecuteTemplate(w, "base", state) | ||||||
|   | |||||||
| @@ -29,21 +29,27 @@ func HandleHideCreateForm(w http.ResponseWriter, r *http.Request) { | |||||||
| func HandleShowColor(w http.ResponseWriter, r *http.Request) { | func HandleShowColor(w http.ResponseWriter, r *http.Request) { | ||||||
| 	word := r.URL.Query().Get("word") | 	word := r.URL.Query().Get("word") | ||||||
| 	ctx := r.Context() | 	ctx := r.Context() | ||||||
| 	session, ok := ctx.Value(models.CtxSessionKey).(models.Session) | 	session, ok := ctx.Value(models.CtxSessionKey).(*models.Session) | ||||||
| 	if !ok { | 	if !ok { | ||||||
| 		// trying to get color without a session -> error | 		// trying to get color without a session -> error | ||||||
| 		abortWithError(w, "session not found") | 		abortWithError(w, "session not found") | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 	// get room by room-id | 	// // get room by room-id | ||||||
| 	room, err := getRoomByID(session.CurrentRoom) | 	// room, err := getRoomByID(session.CurrentRoom) | ||||||
|  | 	// if err != nil { | ||||||
|  | 	// 	log.Error("failed to get room", "error", err, "session", session) | ||||||
|  | 	// 	abortWithError(w, "failed to get room") | ||||||
|  | 	// 	return | ||||||
|  | 	// } | ||||||
|  | 	// log.Debug("got room", "room", room) | ||||||
|  | 	state, err := loadState(session.Username) | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		log.Error("failed to get room", "error", err, "session", session) | 		abortWithError(w, err.Error()) | ||||||
| 		abortWithError(w, "failed to get room") |  | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 	log.Debug("got room", "room", room) | 	log.Debug("got state", "state", state) | ||||||
| 	// update room score | 	// TODO: update room score | ||||||
| 	color, exists := roundWords[word] | 	color, exists := roundWords[word] | ||||||
| 	log.Debug("got show-color request", "word", word, "color", color) | 	log.Debug("got show-color request", "word", word, "color", color) | ||||||
| 	if !exists { | 	if !exists { | ||||||
|   | |||||||
| @@ -77,6 +77,7 @@ func GetSession(next http.Handler) http.Handler { | |||||||
| 			return | 			return | ||||||
| 		} | 		} | ||||||
| 		userSession, err := cacheGetSession(sessionToken) | 		userSession, err := cacheGetSession(sessionToken) | ||||||
|  | 		log.Debug("userSession from cache", "us", userSession) | ||||||
| 		if err != nil { | 		if err != nil { | ||||||
| 			msg := "auth failed; session does not exists" | 			msg := "auth failed; session does not exists" | ||||||
| 			err = errors.New(msg) | 			err = errors.New(msg) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Grail Finder
					Grail Finder