private async Task ShowPromotionAsync()
        {
            NetworkAPI    networkAPI    = new NetworkAPI();
            Establishment establishment = await networkAPI.GetEstablishmentById(Promotion.Establishment.EstablishmentId);

            mainPageViewModel.NavigateTo(new EstablishmentDetailViewModel(establishment, mainPageViewModel));
        }
Example #2
0
        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.");
                }
            }
        }
Example #3
0
 private void NavigateToEstablishmentDetail(object args) => mainPageViewModel.NavigateTo(new EstablishmentDetailViewModel(args as Establishment, mainPageViewModel));
Example #4
0
 private void NavigateToLogin() => mainPageViewModel.NavigateTo(new LoginViewModel(mainPageViewModel));
Example #5
0
 private void PromotionClicked(object args) => mainPageViewModel.NavigateTo(new PromotionDetailViewModel(args as Promotion, mainPageViewModel));
Example #6
0
 private void EventClicked(object args) => mainPageViewModel.NavigateTo(new EventDetailViewModel(args as Event, mainPageViewModel));
Example #7
0
 private void SubscriptionClicked(object args) => mainPageViewModel.NavigateTo(new EstablishmentDetailViewModel(args as Establishment, mainPageViewModel));
Example #8
0
 private void CompanyClicked(object args) => mainPageViewModel.NavigateTo(new MerchantEditViewModel(MerchantObjectType.COMPANY, mainPageViewModel, args as Company));
Example #9
0
 private void NavigateToRegistration() => mainPageViewModel.NavigateTo(new RegistrationViewModel(mainPageViewModel));