public static void AddUser(LoggedInUser user) { if (!Deployment.Current.Dispatcher.CheckAccess()) { Deployment.Current.Dispatcher.BeginInvoke(() => AddUser(user)); return; } if (_users.Any(cachedUser => cachedUser.id == user.id)) { _users.Remove(_users.First(cachedUser => cachedUser.id == user.id)); } _users.Insert(0, user); Save(); }
public void CopyTo(LoggedInUser user) { base.CopyTo(user); if (auth_token != null) user.auth_token = auth_token; if (email != null) user.email = email; if (needs_to_confirm_registration != null) user.needs_to_confirm_registration = needs_to_confirm_registration; if (needs_name_change != null) user.needs_name_change = needs_name_change; if (clouds != null) user.clouds = clouds; if (bans != null) { user.old_bans = user.bans; user.bans = bans; foreach (var cloud in Connection.CurrentCloudsdaleUser.clouds) { cloud.PropChanged("IsBannedFrom"); cloud.PropChanged("ApplicableBan"); } OnPropertyChanged("bans"); } if (status != null) user.status = status; }