Feat: db reconnect
This commit is contained in:
		| @@ -75,6 +75,7 @@ func HandleFrontLogin(w http.ResponseWriter, r *http.Request) { | ||||
| 		abortWithError(w, msg) | ||||
| 		return | ||||
| 	} | ||||
| 	var makeplayer bool | ||||
| 	roomID := r.PostFormValue("room_id") | ||||
| 	// make sure username does not exists | ||||
| 	cleanName := utils.RemoveSpacesFromStr(username) | ||||
| @@ -90,7 +91,9 @@ func HandleFrontLogin(w http.ResponseWriter, r *http.Request) { | ||||
| 	// userstate, err := loadState(cleanName) | ||||
| 	userstate, err := repo.PlayerGetByName(r.Context(), cleanName) | ||||
| 	if err != nil || userstate == nil { | ||||
|  | ||||
| 		userstate = models.InitPlayer(cleanName) | ||||
| 		makeplayer = true | ||||
| 	} | ||||
| 	fi := &models.FullInfo{ | ||||
| 		State: userstate, | ||||
| @@ -125,11 +128,13 @@ func HandleFrontLogin(w http.ResponseWriter, r *http.Request) { | ||||
| 		} | ||||
| 		// save state to cache | ||||
| 		// if err := saveState(cleanName, userstate); err != nil { | ||||
| 		if err := repo.PlayerUpdate(r.Context(), userstate); err != nil { | ||||
| 			// if err := saveFullInfo(r.Context(), fi); err != nil { | ||||
| 			log.Error("failed to save state", "error", err) | ||||
| 			abortWithError(w, err.Error()) | ||||
| 			return | ||||
| 		if makeplayer { | ||||
| 			if err := repo.PlayerAdd(r.Context(), userstate); err != nil { | ||||
| 				// if err := saveFullInfo(r.Context(), fi); err != nil { | ||||
| 				log.Error("failed to save state", "error", err) | ||||
| 				abortWithError(w, err.Error()) | ||||
| 				return | ||||
| 			} | ||||
| 		} | ||||
| 	} | ||||
| 	// if err := tmpl.ExecuteTemplate(w, "base", fi); err != nil { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Grail Finder
					Grail Finder