From 99c3bd58e1c300456dace635aa145641b59a2f86 Mon Sep 17 00:00:00 2001 From: Natlinux81 <97396587+Natlinux81@users.noreply.github.com> Date: Thu, 18 Aug 2022 04:13:30 +0200 Subject: [PATCH] Add a Tournament --- Apollon.WPF/Commands/AddTournamentCommand.cs | 18 +++++++++------- .../ViewModels/OverviewListingViewModel.cs | 21 ++++++++++++------- Apollon.WPF/ViewModels/OverviewViewModel.cs | 8 +------ 3 files changed, 25 insertions(+), 22 deletions(-) diff --git a/Apollon.WPF/Commands/AddTournamentCommand.cs b/Apollon.WPF/Commands/AddTournamentCommand.cs index 3763635..0ff349d 100644 --- a/Apollon.WPF/Commands/AddTournamentCommand.cs +++ b/Apollon.WPF/Commands/AddTournamentCommand.cs @@ -32,22 +32,26 @@ namespace Apollon.WPF.Commands public override async Task ExecuteAsync(object parameter) { AddEditDetailsViewModel formViewModel = _addTournamentViewModel.AddEditDetailsViewModel; - Tournament tournament = new Tournament(formViewModel.Organisation,formViewModel.TournamentName, formViewModel.Competition, formViewModel.StartDate, formViewModel.EndDate, - formViewModel.Location, formViewModel.Rounds); + Tournament tournament = new Tournament( + formViewModel.Organisation, + formViewModel.TournamentName, + formViewModel.Competition, + formViewModel.StartDate, + formViewModel.EndDate, + formViewModel.Location, + formViewModel.Rounds); try { await _tournamentStore.Add(tournament); + + _modalNavigationStore.Close(); } catch (Exception) { throw; - } - // Add Tournament to Database - - - _modalNavigationStore.Close(); + } } } } diff --git a/Apollon.WPF/ViewModels/OverviewListingViewModel.cs b/Apollon.WPF/ViewModels/OverviewListingViewModel.cs index 089ca5b..91a06aa 100644 --- a/Apollon.WPF/ViewModels/OverviewListingViewModel.cs +++ b/Apollon.WPF/ViewModels/OverviewListingViewModel.cs @@ -45,16 +45,21 @@ namespace Apollon.WPF.ViewModels _modalNavigationStore = modalNavigationStore; _overviewListingItemViewModels = new ObservableCollection(); - //_overviewListingItemViewModels.Add(new OverviewListingItemViewModel(new Tournament("DSB", "Meisterschaft", "Halle", DateTime.Now, DateTime.Now, "Bruchsal", 10))); - - - //AddTournament(new Tournament("DSB", "Deutschemeisterschaft1", "Halle", "01.01.2021", "05.01.2021", "Wiesbaden",3),modalNavigationStore); - //AddTournament(new Tournament("DSB", "Deutschemeisterschaft2", "im Freien", "01.01.2021", "05.01.2021", "Berlin",5),modalNavigationStore); - AddTournament(new Tournament("DSB", "Deutschemeisterschaft3", "Halle", DateTime.Now, DateTime.Today, "Bruchsal", 6), modalNavigationStore); - + _tournamentStore.TournamentAdded += TournamentStore_TournamentAdded; } - private void AddTournament(Tournament tournament, ModalNavigationStore modalNavigationStore) + protected override void Dispose() + { + _tournamentStore.TournamentAdded -= TournamentStore_TournamentAdded; + + base.Dispose(); + } + private void TournamentStore_TournamentAdded(Tournament tournament) + { + AddTournament(tournament); + } + + private void AddTournament(Tournament tournament) { // TO DO EditTournamentCommand _overviewListingItemViewModels.Add(new OverviewListingItemViewModel(tournament)); diff --git a/Apollon.WPF/ViewModels/OverviewViewModel.cs b/Apollon.WPF/ViewModels/OverviewViewModel.cs index 00ceba0..326f197 100644 --- a/Apollon.WPF/ViewModels/OverviewViewModel.cs +++ b/Apollon.WPF/ViewModels/OverviewViewModel.cs @@ -16,7 +16,7 @@ namespace Apollon.WPF.ViewModels public OverviewDetailsViewModel OverviewDetailsViewModel{ get; } public ICommand AddTournamentCommand { get; } - public ICommand EditTournamentCommand { get; set ; } + public ICommand EditTournamentCommand { get;} @@ -28,12 +28,6 @@ namespace Apollon.WPF.ViewModels AddTournamentCommand = new OpenAddTournamentCommand(tournamentStore, modalNavigationStore); EditTournamentCommand = new OpenEditTournamentCommand(modalNavigationStore); - AddTournament(new Tournament("DSB", "Deutschemeisterschaft3", "Halle", DateTime.Now, DateTime.Today, "Bruchsal", 6), modalNavigationStore); - } - - private void AddTournament(Tournament tournament, ModalNavigationStore modalNavigationStore) - { - ICommand editTournamentCommand = new EditTournamentCommand(modalNavigationStore); } }