func (Player) PlayerSettingsSet(so *wsevent.Client, args struct { Key *string `json:"key"` Value *string `json:"value"` }) interface{} { player := chelpers.GetPlayer(so.Token) switch *args.Key { case "siteAlias": if len(*args.Value) > 32 { return errors.New("Site alias must be under 32 characters long.") } player.SetSetting(*args.Key, *args.Value) player.SetPlayerProfile() so.EmitJSON(helpers.NewRequest("playerProfile", player)) if lobbyID, _ := player.GetLobbyID(true); lobbyID != 0 { lob, _ := lobby.GetLobbyByID(lobbyID) slot, _ := lob.GetPlayerSlot(player) player.SetMumbleUsername(lob.Type, slot) lobby.BroadcastLobby(lob) } default: player.SetSetting(*args.Key, *args.Value) } return emptySuccess }
func (Unauth) PlayerProfile(so *wsevent.Client, args struct { Steamid *string `json:"steamid"` }) interface{} { player, err := player.GetPlayerBySteamID(*args.Steamid) if err != nil { return err } player.SetPlayerProfile() return newResponse(player) }
func (Player) PlayerProfile(so *wsevent.Client, args struct { Steamid *string `json:"steamid"` }) interface{} { steamid := *args.Steamid if steamid == "" { steamid = so.Token.Claims.(*chelpers.TF2StadiumClaims).SteamID } player, err := player.GetPlayerBySteamID(steamid) if err != nil { return err } player.SetPlayerProfile() return newResponse(player) }