private void ExecuteNavigateToHouseholdsCommand() { ApplicationInstanceData.GoToView(new HouseholdsSearchContentPage { BindingContext = new HouseholdsSearchContentPageModel(ApplicationInstanceData) }); }
private void ExecuteNavigateToAboutCommand() { ApplicationInstanceData.GoToView(new AboutContentPage { BindingContext = new AboutContentPageModel(ApplicationInstanceData) }); }
private void ExecuteNavigateToGetNewApiKeyViewCommand() { ApplicationInstanceData.GoToView(new AuthenticationContentPage { BindingContext = new AuthenticationContentPageModel(ApplicationInstanceData) }); }
private void ExecuteNavigateToLocalizationSelectionCommand() { var view = new LocalizationSelectionContentPage(); var viewModel = new LocalizationSelectionContentPageModel(ApplicationInstanceData, true); view.BindingContext = viewModel; ApplicationInstanceData.GoToView(view); }
private async void ExecuteDeleteCommand() { // is it allowed? if (Household.HasExternalId) { return; } // are you sure? all children will be deleted as well var actionDecision = await ApplicationInstanceData.App.MainPage.DisplayAlert( ApplicationInstanceData.SelectedLocalization.Translations[@"Confirm"], ApplicationInstanceData.SelectedLocalization.Translations[@"ConfirmationMessageDeleteHousehold"], ApplicationInstanceData.SelectedLocalization.Translations[@"OK"], ApplicationInstanceData.SelectedLocalization.Translations[@"Cancel"]); if (actionDecision) { ApplicationInstanceData.Data.DeleteHousehold(Household.InternalId); ApplicationInstanceData.Data.SaveChanges(); ApplicationInstanceData.GoToView(new HouseholdsSearchContentPage { BindingContext = new HouseholdsSearchContentPageModel(ApplicationInstanceData) }); } }
private async void ExecuteSyncCommand() { // check for internet connectivity var hasInternetConnectivity = Plugin.Connectivity.CrossConnectivity.Current.IsConnected; if (!hasInternetConnectivity) { ExecuteNoInternetConnectivityErrorMessageAction(); ApplicationInstanceData.RootPage.IsPresented = false; return; } // save current view var currentView = ApplicationInstanceData.NavigationPage; // show sync view var syncContentPageModel = new SyncContentPageModel(ApplicationInstanceData); ApplicationInstanceData.GoToView(new SyncContentPage { BindingContext = syncContentPageModel }); HideMenu(); // disable menu ApplicationInstanceData.RootPage.IsGestureEnabled = false; // sync syncContentPageModel.StatusMessage = ApplicationInstanceData.SelectedLocalization.Translations[@"Syncing"]; syncContentPageModel.IsBusy = true; var taskResult = new Tuple <bool, string>(false, @""); await Task.Run(() => { taskResult = Workers.SyncWorker.Sync(ApplicationInstanceData, false); }); syncContentPageModel.IsBusy = false; // display original view ApplicationInstanceData.NavigationPage = currentView; // if HouseholdsView then refresh if (currentView.Pages.First().GetType() == typeof(HouseholdsSearchContentPage)) { var householdsSearchContentPageModel = (HouseholdsSearchContentPageModel)currentView.Pages.First().BindingContext; // use existing //await Task.Run(() => { householdsSearchContentPageModel.RefreshCommand.Execute(null); }); // create new var searchText = householdsSearchContentPageModel.SearchText; var newHouseholdsSearchContentPageModel = new HouseholdsSearchContentPageModel(ApplicationInstanceData); newHouseholdsSearchContentPageModel.SearchText = searchText; ApplicationInstanceData.GoToView(new HouseholdsSearchContentPage { BindingContext = newHouseholdsSearchContentPageModel }); } // if HouseholdMembersSearchView then refresh if (currentView.Pages.First().GetType() == typeof(HouseholdMembersSearchContentPage)) { var viewModel = (HouseholdMembersSearchContentPageModel)currentView.Pages.First().BindingContext; // use existing //await Task.Run(() => { viewModel.RefreshCommand.Execute(null); }); // create new var searchText = viewModel.SearchText; var newHouseholdMembersSearchContentPageModel = new HouseholdMembersSearchContentPageModel(ApplicationInstanceData); newHouseholdMembersSearchContentPageModel.SearchText = searchText; ApplicationInstanceData.GoToView(new HouseholdMembersSearchContentPage { BindingContext = newHouseholdMembersSearchContentPageModel }); } ApplicationInstanceData.RootPage.Detail = ApplicationInstanceData.NavigationPage; ApplicationInstanceData.RootPage.IsPresented = false; // re-enable menu ApplicationInstanceData.RootPage.IsGestureEnabled = true; ExecutePostExecuteSyncCommand(taskResult); }