예제 #1
0
        private async Task LoadAngeboteAsync()
        {
            _angeboteVM.SetLoading();
            _angeboteVM.MeineAngebote.Clear();
            await foreach (var angebot in _angebotService.GetMeineAsync())
            {
                var vm = new AngebotViewModel(angebot);
                //await vm.LoadAngebotsStatus(); Brauchen wir erst wieder, wenn ImageEdit.ToMonochrome funktionieren würde
                _angeboteVM.MeineAngebote.Add(vm);
            }

            _angeboteVM.SetNotLoading();
        }
예제 #2
0
        private async Task LoadAngeboteAsync()
        {
            _angeboteVM.SetLoading();
            _angeboteVM.AlleAngebote.Clear();
            await foreach (var angebot in _angebotService.GetAlleAsync())
            {
                var angebotVM = new AngebotViewModel(angebot);
                _angeboteVM.AlleAngebote.Add(angebotVM);
            }

            foreach (var angebotVM in _angeboteVM.AlleAngebote)
            {
                await angebotVM.LoadReservierungenAsync();
            }

            _angeboteVM.SetNotLoading();
        }
예제 #3
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();
        }
예제 #4
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();
        }