public async void Signout() { try { await m_AnilibriaApiService.Logout(); RefreshOptions(); UserModel = null; await RefreshFavorites?.Invoke(); ShowMessage( new MessageModel { Header = "Выход из аккаунта", Message = "Вы вышли из аккаунта. Для повторного входа выберите в меню пункт Войти." } ); } catch { ShowMessage( new MessageModel { Header = "Ошибка", Message = "Не удалось выйти из аккаунта." } ); } }
/// <summary> /// Change user session. /// </summary> public async Task ChangeUserSession() { try { if (m_AnilibriaApiService.IsAuthorized()) { var model = await m_AnilibriaApiService.GetUserData(); model.ImageUrl = m_AnilibriaApiService.GetUrl(model.Avatar); await RefreshFavorites?.Invoke(); UserModel = model; } } catch { m_AnilibriaApiService.ClearSession(); //paranoic mode: on RefreshOptions(); UserModel = null; } }