private void createRememberedButton(RememberMeAccountData accountData) { GameObject gameObject = Object.Instantiate(buttonPrefab, RememberedAccountsParent, worldPositionStays: false); LoginRememberMeListButton component = gameObject.GetComponent <LoginRememberMeListButton>(); component.OnToggleInteraction += onToggleInteraction; component.OnRemoveAccount += onRemoveAccount; rememberedButtons.Add(component); component.LoadData(accountData); }
private void displayRememberedAccounts() { RememberMeService rememberMeService = Service.Get <RememberMeService>(); List <string> usernames = rememberMeService.Usernames; int count = usernames.Count; List <RememberMeAccountData> list = new List <RememberMeAccountData>(); for (int i = 0; i < count; i++) { RememberMeAccountData item = rememberMeService.LoadAccountData(usernames[i]); list.Add(item); } list.Sort((RememberMeAccountData x, RememberMeAccountData y) => string.Compare(x.DisplayName, y.DisplayName)); for (int i = 0; i < count; i++) { createRememberedButton(list[i]); } }
public void LoadData(RememberMeAccountData accountData) { this.accountData = accountData; DisplayName.text = accountData.DisplayName; if (AvatarIcon != null) { AvatarIcon.RenderAvatar(accountData.Outfit, accountData.BodyColor); } if (MembershipSelector != null) { int index = 0; switch (accountData.MembershipType) { case MembershipType.Member: index = 1; break; case MembershipType.None: case MembershipType.AllAccessEventMember: { AllAccessService allAccessService = Service.Get <AllAccessService>(); if (allAccessService.IsAllAccessActive() && AllAccessHelper.HasSeenAllAccessFlow(allAccessService.GetAllAccessEventKey(), accountData.DisplayName)) { index = 2; } break; } } MembershipSelector.SelectSprite(index); } if (accountData.Banned.HasValue) { if (!accountData.Banned.Value.ExpirationDate.HasValue) { displayBannedState(); } else if ((accountData.Banned.Value.ExpirationDate - DateTime.Now).Value.TotalHours >= 0.0) { displayBannedState(); } } }
public RememberMeAccountData LoadAccountData(string username) { CacheableType <string> accountDataCache = getAccountDataCache(username); RememberMeAccountData rememberMeAccountData = null; try { rememberMeAccountData = Service.Get <JsonService>().Deserialize <RememberMeAccountData>(accountDataCache.GetValue()); } catch { } if (rememberMeAccountData == null) { rememberMeAccountData = new RememberMeAccountData(); } rememberMeAccountData.StoredData = accountDataCache; rememberMeAccountData.Username = username; rememberMeAccountData.KeychainCredential = getCredentialDataCache(username); return(rememberMeAccountData); }
private void onAccountDataUpdated(RememberMeAccountData accountData) { SaveAccountData(accountData); }
public void SaveAccountData(RememberMeAccountData accountData) { string value = Service.Get <JsonService>().Serialize(accountData); accountData.StoredData.SetValue(value); }