private async Task DeleteEvent() { var message = await networkAPI.DeletePromotion(Promotion.PromotionId); await MessageUtils.ShowDialog("Promotie verwijderen", message.Item1); if (message.Item2) { mainPageViewModel.BackButtonPressed(); mainPageViewModel.BackButtonPressed(); mainPageViewModel.NavigationHistoryItems.RemoveAll(v => v.GetType() == typeof(PromotionDetailViewModel) || v.GetType() == typeof(PromotionsViewModel)); mainPageViewModel.NavigateTo(new PromotionsViewModel(mainPageViewModel)); } }
private async Task Subscribe() { if (isSubscribed) { var message = await networkAPI.Unsubscribe(Establishment.EstablishmentId); if (string.IsNullOrEmpty(message)) { SubscriptionButtonText = is_not_subbed_text; isSubscribed = false; await MessageUtils.ShowDialog("Abonneren", $"U zal geen meldingen meer ontvangen van {Establishment.Name}!"); Toast toast = new Toast(); toast.SubscriptionAsyncWriteOnly(); } else { await MessageUtils.ShowDialog("Abonneren", message); } } else { try { var token = passwordVault.Retrieve("Stapp", "Token"); var message = await networkAPI.Subscribe(Establishment.EstablishmentId); if (string.IsNullOrEmpty(message)) { isSubscribed = true; SubscriptionButtonText = is_subbed_text; await MessageUtils.ShowDialog("Abonneren", $"U bent succesvol geabonneerd op {Establishment.Name}!"); mainPageViewModel.BackButtonPressed(); mainPageViewModel.NavigationHistoryItems.RemoveAll(v => v.GetType() == typeof(EstablishmentDetailViewModel)); mainPageViewModel.NavigateTo(new EstablishmentDetailViewModel(Establishment, mainPageViewModel)); } else { await MessageUtils.ShowDialog("Abonneren", message); } } catch { await ShowNotSignedInDialog("Abonneren", "U bent momenteel niet aangemeld. Om te kunnen abonneren op handelaars, heeft u een account nodig. Aanmelden of een account aanmaken kan u doen op de accountpagina."); } } }