private async void Signin() { ErrorMessage = ""; try { var(result, message) = await m_AnilibriaApiService.Authentification(Email, Password, TwoFACode); if (result) { ChangePage("Releases", null); RefreshOptions?.Invoke(); await ChangeUserSession(); if (m_AnilibriaApiService.IsAuthorized()) { ObserverEvents.FireEvent( "showMessage", new MessageModel { Header = "Авторизация", Message = "Вы успешно вошли в аккаунт" } ); } } else { ErrorMessage = message; } } catch { ErrorMessage = "Ошибка авторизации"; } }
/// <summary> /// Synchronize favorites. /// </summary> public async Task SynchronizeFavorites() { if (!m_AnilibriaApiService.IsAuthorized()) { return; } try { var favorites = await m_AnilibriaApiService.GetUserFavorites(); var userModel = m_AnilibriaApiService.GetUserModel(); if (userModel == null) { return; } var userFavoritesCollection = m_DataContext.GetCollection <UserFavoriteEntity> (); var userFavorite = userFavoritesCollection.FirstOrDefault(a => a.Id == userModel.Id); if (userFavorite != null) { userFavorite.Releases = favorites.ToList(); userFavoritesCollection.Update(userFavorite); } else { userFavoritesCollection.Add( new UserFavoriteEntity { Id = userModel.Id, Releases = favorites.ToList() } ); } } catch { ObserverEvents.FireEvent( "showMessage", new MessageModel { Header = "Синхронизация избранного", Message = "Не удалось выполнить синхронизацию избранного" } ); } }
private bool AuthorizeOptionIsVisible() { return(!m_AnilibriaApiService.IsAuthorized()); }