public ExchangeProfileViewModel(ProfileRegister register, ExchangeProfileDataStore.Factory storeFactory, ExchangeAuthenticationService authenticationService, AutoMapper.IMapper mapper) : base(register) { _storeFactory = storeFactory; _client = new GraphServiceClient( "https://graph.microsoft.com/v1.0", new DelegateAuthenticationProvider(async(request) => { try { var result = await authenticationService.AcquireTokenSilentAsync(EmailAddress); var token = result.AccessToken; request.Headers.Authorization = new AuthenticationHeaderValue("bearer", token); } catch (Exception ex) { IsAuthenticated = false; this.Log().Error(ex, $"Failed to silently authenticate {EmailAddress}."); } })); _mailService = new ExchangeMailService(register, _storeFactory, _client, mapper); var queryFactory = new RelayProfileDataQueryFactory(register.DataFilePath, path => storeFactory.Invoke(path, false)); MailBox = new MailBoxViewModel(queryFactory, _mailService); }
public void CheckLoginInformationAndNavigate() { try { CheckForNullOrWhiteSpace(Username, Password); if (LoginTypes[SelectedIndexLoginType] == "Kunde") { Pro = ProfileRegister.FindDicProfile(Username, Password); KundeLogin = KundeRegister.FindKunde(Pro.Username, Pro.Password); LoginUsername = Pro.Username; NavigateToMainSystem(); } if (LoginTypes[SelectedIndexLoginType] == "Admin") { AdminRegister.FindAdmin(Username, Password); NavigateToAdminPage(); } } catch (ArgumentException ex) { Dialog.Show(ex.Message); } catch (NullReferenceException ex) { Dialog.Show(ex.Message); } }
public async Task <ProfileViewModelBase> CreateViewModelAsync(ProfileRegister register) { var profile = new ExchangeProfileViewModel(register, _storeFactory, _authenticationService, _mapper); await profile.RestoreAsync(); return(profile); }
public FakeProfileViewModel(ProfileRegister register, Profile state, FakeProfileDataQueryFactory queryFactory, FakeMailService mailService) : base(register) { MailBox = new MailBoxViewModel(queryFactory, mailService); DisplayName = state.DisplayName; }
public async Task UnregisterAsync(ProfileRegister profile) { using var store = new ProfileRegistry(_storePath); store.Profiles.Remove(profile); await store.SaveChangesAsync(); _sourceProfiles.Remove(profile); }
public ExchangeMailService(ProfileRegister register, ExchangeProfileDataStore.Factory storeFactory, MSGraph.GraphServiceClient client, AM.IMapper mapper) { _register = register; _storeFactory = storeFactory; _client = client; _mapper = mapper; }
public void AddCustomerWithProfile() { try { ProfileRegister.AddDicProfile(Username, Password); KundeRegister.AddKunde(Username, Password, Adress, Email, Name, Tlf); CheckRepeatPassword(Password, RepeatPassword); Dialog.Show("Profil er tilføjet"); } catch (ArgumentException ex) { Dialog.Show(ex.Message); } ProfilePersistency.SaveProfilesAsJsonAsync(ProfileRegister.DicProfile); KundePersistency.SaveKunderAsJsonAsync(KundeRegister.Kunder); }
public FakeProfileProvider(string providerId, string emailAddress, string displayName, FakeProfileDataQueryFactory queryFactory, FakeMailService mailService) { _register = new ProfileRegister() { Id = emailAddress, EmailAddress = emailAddress, DataFilePath = null, ProviderId = providerId, }; _viewModel = new FakeProfileViewModel(_register, new Profile() { DisplayName = displayName, EmailAddress = emailAddress, ProviderId = providerId, }, queryFactory, mailService); _viewModel.Restore(); }
public BookingSystem() { Sommerhuse = new ObservableCollection <Sommerhus>(); PersoneriCombobox = new ObservableCollection <int>(); VærelserICombobox = new ObservableCollection <int>(); //InitSommerhus(); ProfileRegister = new ProfileRegister(); KundeRegister = new KundeRegister(); AdminRegister = new AdminRegister(); BookingRegister = new BookingRegister(); FavoritRegister = new FavoritRegister(); LoadKunder(); LoadProfiles(); LoadSommerhuse(); LoadBookings(); LoadFavorits(); _navigationService = new NavigationService(); NavToMainSystemCommand = new RelayCommand(CheckLoginInformationAndNavigate); AddProfileWithCustomerCommand = new RelayCommand(AddCustomerWithProfile); NavToOretProfilCommand = new RelayCommand(() => { _navigationService.Navigate(typeof(OpretProfil)); }); SendEmailCommand = new RelayCommand(() => { Dialog.Show("Logininformationer er sendt til din email"); }); NavToOpretSommerhus = new RelayCommand(() => { _navigationService.Navigate(typeof(OpretSommerhus)); }); NavToListSommerhus = new RelayCommand(() => { try { CheckComboboxValue(SelectedAntalPersoner, SelectedAntalVærelser); CheckTime(FraDato, TilDato); MatchAfSommerhus(); _navigationService.Navigate(typeof(SommerhusListe)); } catch (ArgumentException ex) { Dialog.Show(ex.Message); } }); LogudCommand = new RelayCommand(() => { _navigationService.Navigate(typeof(Login)); }); DeleteKundeCommand = new RelayCommand(DeleteKundeFromListe); AddSommerhusCommand = new RelayCommand(AddSommerhus); ShowPageOmOsCommand = new RelayCommand(ShowOmOs); ShowPageKontaktOsCommand = new RelayCommand(ShowKontaktOs); BookingCommand = new RelayCommand(TryToBook); NavToMinProfilCommand = new RelayCommand(() => { MatchFavorites(); _navigationService.Navigate(typeof(MinProfil)); }); AddFavoritCommand = new RelayCommand(AddToFavorites); }
public Task UnregisterAsync(ProfileRegister profile) { _sourceProfiles.Remove(profile); return(Task.CompletedTask); }
public Task RegisterAsync(ProfileRegister profile) { _sourceProfiles.Add(profile); return(Task.CompletedTask); }
public Task UnregisterAsync(ProfileRegister profile) { return(Task.CompletedTask); }
public ProfileViewModelBase(ProfileRegister register) { _register = register; }
public Task <ProfileViewModelBase> CreateViewModelAsync(ProfileRegister register) { return(Task.FromResult <ProfileViewModelBase>(_viewModel)); }