Feat: switch team; team model
This commit is contained in:
		| @@ -107,46 +107,13 @@ func HandleJoinTeam(w http.ResponseWriter, r *http.Request) { | ||||
| 		return | ||||
| 	} | ||||
| 	// get username | ||||
| 	fi, _ := getFullInfoByCtx(r.Context()) | ||||
| 	// get room | ||||
| 	if role == "mime" { | ||||
| 		if team == "blue" { | ||||
| 			fi.Room.BlueMime = fi.State.Username | ||||
| 			fi.State.Team = "blue" | ||||
| 			fi.State.Role = "mime" | ||||
| 		} else if team == "red" { | ||||
| 			fi.Room.RedMime = fi.State.Username | ||||
| 			fi.State.Team = "red" | ||||
| 			fi.State.Role = "mime" | ||||
| 		} else { | ||||
| 			msg := "uknown team:" + team | ||||
| 			log.Error(msg) | ||||
| 			abortWithError(w, msg) | ||||
| 			return | ||||
| 		} | ||||
| 	} else if role == "guesser" { | ||||
| 		if team == "blue" { | ||||
| 			fi.Room.BlueGuessers = append(fi.Room.BlueGuessers, fi.State.Username) | ||||
| 			fi.State.Team = "red" | ||||
| 			fi.State.Role = "guesser" | ||||
| 		} else if team == "red" { | ||||
| 			fi.Room.RedGuessers = append(fi.Room.RedGuessers, fi.State.Username) | ||||
| 			fi.State.Team = "red" | ||||
| 			fi.State.Role = "guesser" | ||||
| 		} else { | ||||
| 			msg := "uknown team:" + team | ||||
| 			log.Error(msg) | ||||
| 			abortWithError(w, msg) | ||||
| 			return | ||||
| 		} | ||||
| 	} else { | ||||
| 		msg := "uknown role:" + role | ||||
| 		log.Error(msg) | ||||
| 		abortWithError(w, msg) | ||||
| 	fi, err := getFullInfoByCtx(r.Context()) | ||||
| 	if err != nil { | ||||
| 		abortWithError(w, err.Error()) | ||||
| 		return | ||||
| 	} | ||||
| 	if err := saveFullInfoByUsername(fi.State.Username, fi); err != nil { | ||||
| 		log.Error("failed to save state", "error", err) | ||||
| 	fi, err = joinTeam(r.Context(), role, team) | ||||
| 	if err != nil { | ||||
| 		abortWithError(w, err.Error()) | ||||
| 		return | ||||
| 	} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Grail Finder
					Grail Finder