예제 #1
0
        private async Task DeleteAsync()
        {
            ContentDialog deleteDlg = new ContentDialog()
            {
                Title               = "Wirklich löschen?",
                Content             = "Willst Du dieses Angebot wirklich unwiderruflich löschen?",
                PrimaryButtonText   = "Ja",
                SecondaryButtonText = "Nein",
            };

            var res = await deleteDlg.ShowAsync();

            _angebotVM.SetIsLoading();
            if (res == ContentDialogResult.Primary)
            {
                var erfolg = await _angebotService.DeleteAngebotAsync(_angebotVM.Angebot);

                if (erfolg)
                {
                    Models.NutzMichCommand.GoBackCommand.Execute(null);
                }
            }
            _angebotVM.SetIsNotLoading();
        }
예제 #2
0
        protected async override void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);

            SetzeCommands();

            this.DataContext = _angebotVM = e.Parameter as AngebotViewModel;

            Messenger.Default.Send(new ChangePageMessage(this, _angebotVM.Angebot.Ueberschrift));

            _angebotVM.SetIsLoading();
            await _angebotVM.InitAnbieterProfilAsync();

            await _angebotVM.LoadReservierungenAsync(true);

            _angebotVM.RefreshBindings();
            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(_angebotVM)));
            _angebotVM.SetIsNotLoading();

            _angebotVM.LoadFotos();
        }
예제 #3
0
        protected async override void OnNavigatedTo(NavigationEventArgs e)
        {
            bool istNeuesAngebot = false;

            base.OnNavigatedTo(e);

            if (e.Parameter != null)
            {
                _angebotVM = e.Parameter as AngebotViewModel;
                _angebotVM.SetIsLoading();
                await _angebotVM.LoadAngebotsStatus();

                await _angebotVM.LoadFotos();

                Messenger.Default.Send(new ChangePageMessage(this, _angebotVM.Angebot.Ueberschrift));
            }
            else
            {
                _angebotVM = new AngebotViewModel();
                Messenger.Default.Send(new ChangePageMessage(this, "Neues Angebot"));
                istNeuesAngebot = true;
            }
            var aktivierenDeaktivieren = new NutzMichCommand();

            if (_angebotVM.IstInaktiv)
            {
                aktivierenDeaktivieren.Symbol            = Symbol.Play;
                aktivierenDeaktivieren.Command           = new AsyncRelayCommand(AktivierenAsync);
                aktivierenDeaktivieren.NurWennAngemeldet = true;
            }
            else
            {
                aktivierenDeaktivieren.Symbol            = Symbol.Stop;
                aktivierenDeaktivieren.Command           = new AsyncRelayCommand(DeaktivierenAsync);
                aktivierenDeaktivieren.NurWennAngemeldet = true;
            }
            if (istNeuesAngebot)
            {
                Messenger.Default.Send(new SetCommandsMessage(new List <Models.NutzMichCommand>()
                {
                    new Models.NutzMichCommand()
                    {
                        Symbol  = Symbol.Back,
                        Command = Models.NutzMichCommand.GoBackCommand
                    },
                    new Models.NutzMichCommand()
                    {
                        Symbol            = Symbol.Save,
                        Command           = new AsyncRelayCommand(SaveAsync),
                        NurWennAngemeldet = true
                    }
                }));
            }
            else
            {
                Messenger.Default.Send(new SetCommandsMessage(new List <Models.NutzMichCommand>()
                {
                    new Models.NutzMichCommand()
                    {
                        Symbol  = Symbol.Back,
                        Command = Models.NutzMichCommand.GoBackCommand
                    },
                    aktivierenDeaktivieren,
                    new Models.NutzMichCommand()
                    {
                        Symbol            = Symbol.Delete,
                        Command           = new AsyncRelayCommand(DeleteAsync),
                        NurWennAngemeldet = true
                    },
                    new Models.NutzMichCommand()
                    {
                        Symbol            = Symbol.Save,
                        Command           = new AsyncRelayCommand(SaveAsync),
                        NurWennAngemeldet = true
                    }
                }));
            }

            this.DataContext = _angebotVM;
            _angebotVM.SetIsNotLoading();
            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(MoeglicheKategorien)));
            MarkiereErstesFotoAlsGalleriebild();
        }