private async Task RemoveSpelerRonde(Guid gebruikersId, Guid rondeId) { checkConnectivity(); //Een confirmatie vragen bool confirmatie = await DisplayAlert("Waarschuwing", "Ben je zeker dat je de ronde wilt verlaten?", "Ja", "Nee"); if (confirmatie == true) { int response = await EtappeRepository.RemoveDeelnemerRonde(GebruikersInfo.GebruikerId, RondeInfo.RondeId); if (response == 1) { await DisplayAlert("Ronde verlaten", "Je ben succesvol uit de ronde verwijderd", "Ok"); await Navigation.PushAsync(new RondeOverzichtPage(GebruikersInfo)); } else { await DisplayAlert("Fout", "Er is een fout opgetreden bij het verlaten", "Ok"); } } else { } }
private async Task OpgevenRonde() { checkConnectivity(); //pop up zodat we zeker zijn of de deelnemer wil stoppen met zijn etappe bool answer = await DisplayAlert("Opgepast", "Als u nu stopt met deelnemen kan u volgende etappes niet meer meerijden. Bent u zeker dat u wil stoppen met deelnemen?", "Ja", "Nee"); Console.WriteLine("Answer: " + answer); if (answer == true) { isRacing = false; DeviceDisplay.KeepScreenOn = false; //Deelnemer uit de ronde smijten await EtappeRepository.UpdateDeelnemerGestopt(etappe.RondId, gebruikersInfo.GebruikerId); Navigation.PushAsync(new RondeOverzichtPage(gebruikersInfo)); } }
private async Task SaveEtappeAsync() { checkConnectivity(); //Scherm mag uit gaan want er zijn geen berekeningen en while loops meer DeviceDisplay.KeepScreenOn = false; await DisplayAlert("Etappe afgewerkt", "U heeft deze etappe afgewerkt, deze wordt nu opgeslagen en verwerkt. U wordt doorgestuurd naar de etappe pagina bij succes.", "SLUITEN"); bool succes = await EtappeRepository.SaveRiddenEtappe(timeRegistrations); if (succes) { Navigation.PopAsync(); } else { await ReSaveEtappeAsync(); } }
private async Task controleInput(DateTime date) { checkConnectivity(); // controleren of opgegeven data niet in het verleden ligt if (date < DateTime.Now) { //alert await DisplayAlert("Foutmelding", "De etappe kan niet in het verleden plaats vinden", "OK"); } // controleren of er 1 of meerdere laps zijn if (laps < 1) { //alert await DisplayAlert("Foutmelding", "Er moet minstens 1 lap gereden worden", "OK"); } //controleren als alles goed is if (date > DateTime.Now && laps > 0) { //dataverwerken in database Etappe etappe = new Etappe(); etappe.Laps = laps; etappe.RondeId = RondeInfo.RondeId; etappe.LapAfstand = (float)(laps * 333.33); etappe.StartTijd = date; Etappe etappeResponse = await EtappeRepository.CreateEtappe(etappe); if (etappeResponse == null) { //Foutmelding await DisplayAlert("Foutmelding", "Er is iets foutgelopen bij het aanmaken van de etappe", "OK"); } else { //melding dat de ronde succesvol is aangemaakt await DisplayAlert("Succes", "Etappe is succesvol aangemaakt", "OK"); //Etappe aangemaakt doorgaan naar etappe pagina Navigation.PopAsync(); } } //anders niets doen }
private async Task LoadEtappesAsync() { checkConnectivity(); List <EtappesRonde> etappes = await EtappeRepository.GetEtappesRonde(RondeInfo.RondeId, GebruikersInfo.GebruikerId); if (etappes == null || etappes.Count == 0) { lvwEtappes.EndRefresh(); lvwEtappes.IsVisible = false; lblNoData.IsVisible = true; } else { lblNoData.IsVisible = false; lvwEtappes.IsVisible = true; } etappeTeller += etappes.Count(); foreach (EtappesRonde item in etappes) { item.EtappeNaam = $"Etappe {etappeTeller}"; etappeTeller -= 1; } if (GebruikersInfo.GebruikerId != RondeInfo.Admin) { lvwEtappes.ItemsSource = etappes; lblRondePlaats.Text = RondeInfo.Ranking; lblRondeTijd.Text = TimeSpan.FromSeconds(RondeInfo.TotaalTijd).ToString(); } else { lvwEtappesAdmin.ItemsSource = etappes; } lvwEtappes.EndRefresh(); lvwEtappesAdmin.EndRefresh(); }
private async Task StopEtappe() { checkConnectivity(); bool answer = await DisplayAlert("Etappe stoppen", "Bent u zeker dat u deze etappe wil stoppen? Doe dit enkel wanneer elke deelnemer klaar is met zijn etappe.", "JA", "NEE"); if (answer) { // API CALL ETAPPE NIET ACTIEF ZETTEN bool succes = await EtappeRepository.StopEtappe(etappe); if (succes) { DisplayAlert("Etappe gestopt", "U heeft deze etappe beeïndigd", "OKE"); isNotStopped = false; Navigation.PopAsync(); } else { DisplayAlert("Etappe niet gestopt", "Er liep iets mis, porbeer opnieuw door nogmaals op stop etappe te klikken", "OKE"); } } }
//Fallback bij eerste poging opslaan. private async Task ReSaveEtappeAsync() { bool answer = await DisplayAlert("Etappe NIET opgeslagen", "De etappe is niet opgeslagen, klik op probeer opnieuw.", "PROBEER OPNIEUW", "NIET OPSLAAN"); if (answer) { bool succes = await EtappeRepository.SaveRiddenEtappe(timeRegistrations); if (succes) { Navigation.PopAsync(); } else { await ReSaveEtappeAsync(); } } else { Navigation.PopAsync(); } }