private void save_tournament() { try { if (cb_sets.SelectedIndex != 0 && cb_goals.SelectedIndex != 0 && cb_ranked.SelectedIndex != 0) { TMPersistenz.AddTournament(tb_tournament_name.Text, ApplicationState.GetValue <Client>("LoggedOnUser").Username, cb_game_mode.Text, int.Parse(cb_sets.Text), int.Parse(cb_goals.Text), Ranked()); ApplicationState.SetValue("CurrentTournament", TMPersistenz.FindTournament(tb_tournament_name.Text)); // MessageBox.Show("Das Turnier wurde erfolgreich erstellt. Jetzt Teilnehmer hinzufügen!", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Information); Tournament_Competitors tc = new Tournament_Competitors(); this.NavigationService.Navigate(tc); } else { MessageBox.Show("Bitte Sätze pro Match und Tore pro Satz eingeben!", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } } catch { MessageBox.Show("Es ist ein Fehler aufgetreten", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void b_send_Click(object sender, RoutedEventArgs e) { try { if (String.IsNullOrEmpty(txt_Address.Text)) { MessageBox.Show( "Das Feedback wird normalerweise automatisch an das Entwicklungsteam von KICKERCUP gesendet. Damit das Feature getestet werden kann, können Sie hier Ihre eigene E-Mail Adresse hinterlegen.", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Information); } //Prüfung ob es sich um eine E-Mail Adresse handelt else if (txt_Address != null || !txt_Address.Text.Contains("@")) { //E-Mail erstellen EMail mail = new EMail(); //E-Mail senden (Vorname + Nachname) des angemeldeten Benutzers im Betreff mail.SendMail( "KICKERCUP Feedback von " + ApplicationState.GetValue <Client>("LoggedOnUser").GetFullName(), txt_body.Text.Trim(), txt_Address.Text.Trim()); // Benutzer über erfolgte Sendung informieren MessageBox.Show("Vielen Dank für Ihr Feedback.", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Information); //Weiterleitung auf vorherige Page this.NavigationService.GoBack(); } } //Fehler des E-Mail Modules werden gefangen und ausgegeben catch (Exception ex) { MessageBox.Show(ex.Message, "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void b_save_Click(object sender, RoutedEventArgs e) { try { if (CheckFields()) { //ID und Skill Level koennen nicht durch den Benutzer bearbeitet werden Guid ID = ApplicationState.GetValue <Competitor>("SelectedCompetitor").CompetitorID; int skill = ApplicationState.GetValue <Competitor>("SelectedCompetitor").SkillLevel; comp.UpdateCompetitor(ID, tb_name.Text, tb_surname.Text, cb_gender.Text, skill, cb_visibility.Text); DataChanged?.Invoke(this, new EventArgs()); Close(); } else { MessageBox.Show("Bitte alle Felder ausfüllen!", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } } catch { MessageBox.Show("Fehler beim Speichern der Änderungen!", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } }
public Home_Page() { InitializeComponent(); //Begrüßungsnachricht "Hallo ..." auf der Admin PAge txt_welcome.Content = "Hallo " + ApplicationState.GetValue <Client>("LoggedOnUser").Name + "!"; }
//Ueberpruefen ob alle Felder ausgefuellt wurden public bool CheckFields() { if (String.IsNullOrEmpty(tb_name.Text)) { return(false); } else if (String.IsNullOrEmpty(tb_surname.Text)) { return(false); } else if (cb_gender.SelectedIndex == 0) { return(false); } else if (cb_visibility.SelectedIndex == 0) { return(false); } else if (String.IsNullOrEmpty(ApplicationState.GetValue <Client>("LoggedOnUser").Username)) { return(false); } else { return(true); } }
public Edit_Account() { InitializeComponent(); //Username des angemeldeten Benutzers in der TextBox einfrieren (Ist Primary Key, darf in der DB sowieso nicht verändert werden) tb_username.Text = ApplicationState.GetValue <Client>("LoggedOnUser").Username; tb_username.IsEnabled = false; tb_username.Background = new SolidColorBrush(Colors.LightGray); //Alle anderen Properties des angemeldeten Benutzers aus der Session-Variable in die TextBoxen laden tb_lastname.Text = ApplicationState.GetValue <Client>("LoggedOnUser").Surname; tb_name.Text = ApplicationState.GetValue <Client>("LoggedOnUser").Name; tb_email.Text = ApplicationState.GetValue <Client>("LoggedOnUser").EMail; pw_password.Password = "******"; //Geschlecht des angemeldeten Benutzers laden if (ApplicationState.GetValue <Client>("LoggedOnUser").Gender == "männlich") { cb_gender.SelectedValue = m; } if (ApplicationState.GetValue <Client>("LoggedOnUser").Gender == "weiblich") { cb_gender.SelectedValue = w; } }
public Tournament_Management() { InitializeComponent(); List <TournamentPers> allTournaments = TMPersistenz.GetAllTournaments(ApplicationState.GetValue <Client>("LoggedOnUser").Username); dg_tournament_list.ItemsSource = allTournaments; }
public Ranking_List() { InitializeComponent(); l_ranking.Content = "Rangliste " + ApplicationState.GetValue <TournamentPers>("CurrentTournament").Name; //Ranking aus der Datenbank laden und mit Namen anreichern List <RankingPers> rankinglist = TMPersistenz.LoadRankings(ApplicationState.GetValue <TournamentPers>("CurrentTournament").Name); dg_ranking_list.ItemsSource = rankinglist; }
public Create_Tournament() { InitializeComponent(); //Ueberpruefen ob Nutzer noch eingeloggt if (String.IsNullOrEmpty(ApplicationState.GetValue <Client>("LoggedOnUser").Username)) { Login login = new Login(); this.NavigationService.Navigate(login); } }
//wenn der Nutzer auf Turnier starten klickt, werden die Elemente fuer das Eintragen der Ergebnisse eingeblendet private void b_start_tournament_Click(object sender, RoutedEventArgs e) { b_start_tournament.Visibility = Visibility.Hidden; b_start.Visibility = Visibility.Hidden; b_stop.Visibility = Visibility.Hidden; l_title.Visibility = Visibility.Visible; i_pitch.Visibility = Visibility.Visible; tbl_team1.Visibility = Visibility.Visible; tbl_team2.Visibility = Visibility.Visible; tbl_nr_set.Visibility = Visibility.Visible; tb_team1.Visibility = Visibility.Visible; tb_team2.Visibility = Visibility.Visible; b_continue.Visibility = Visibility.Visible; b_home.Visibility = Visibility.Visible; tbl_chance_team1.Visibility = Visibility.Visible; tbl_chance_team2.Visibility = Visibility.Visible; try { tournament.StartTournament(); teams = tournament.CurrentMatch.GetTeams(); tbl_team1.Text = teams.ElementAt(0).ToString(); tbl_team2.Text = teams.ElementAt(1).ToString(); tbl_chance_team1.Text = "Gewinnchance: \n" + (tournament.CurrentMatch.GetWinExpectationThatTeamAWins()).ToString() + " %"; tbl_chance_team2.Text = "Gewinnchance: \n" + (tournament.CurrentMatch.GetWinExpectationThatTeamBWins()).ToString() + " %"; } catch (Exception ex) { if (ex is ArgumentOutOfRangeException) { MessageBox.Show( "Teilnehmeranzahl ist nicht korrekt für den ausgewählten Spielmodus " + ApplicationState.GetValue <TournamentPers>("CurrentTournament").Gamemode + ".", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Information); } else { MessageBox.Show("Es ist ein schwerer Fehler aufgetreten"); } if (this.NavigationService.CanGoBack) { this.NavigationService.GoBack(); } else { Tournament_Competitors tc = new Tournament_Competitors(); this.NavigationService.Navigate(tc); } } }
//Teilnehmersuche über Suchzeile private void competitor_search() { IDictionary <Guid, Competitor> competitors = new SortedList <Guid, Competitor>(); try { competitors = comp.LoadCompetitors(tb_competitor_search.Text, ApplicationState.GetValue <Client>("LoggedOnUser").Username); dg_competitor_list.ItemsSource = competitors; } catch { MessageBox.Show("Es ist ein Fehler bei der Suche in der Datenbank aufgetreten", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } }
//Weiterleitung zu den Datenbankeinstellungen private void b_dbsettings_Click(object sender, RoutedEventArgs e) { //Check ob schon mal Datenbankeinstellungen vorgenommen wurden if (ApplicationState.GetValue <bool>("SetDBSettings") == true) { //Benutzer informieren MessageBox.Show( "Die Datenbankverbindung kann nur vor der ersten Anmeldung nach Programmstart geändert werden. Starten Sie KICKERCUP neu um die Datenbankverbindung zu ändern.", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Information); } else { DBSettings dbs = new DBSettings(); this.NavigationService.Navigate(dbs); } }
//Abspeichern Teilnehmer private void b_save_Click(object sender, RoutedEventArgs e) { if (CheckFields()) { int skilllevel = 1500; //Startlevel festgesetzt comp.AddCompetitor(tb_name.Text, tb_surname.Text, cb_gender.Text, skilllevel, cb_visibility.Text, ApplicationState.GetValue <Client>("LoggedOnUser").Username); DataChanged?.Invoke(this, new EventArgs()); Close(); } else { MessageBox.Show("Bitte alle Felder ausfüllen!", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } }
//Teilnehmersuche über Suchzeile private void competitor_search() { try { IDictionary <Guid, Competitor> competitors = new SortedList <Guid, Competitor>(); competitors = comp.LoadCompetitors(tb_competitor_search.Text, ApplicationState.GetValue <Client>("LoggedOnUser").Username); dg_competitor_list.ItemsSource = null; dg_competitor_list.ItemsSource = competitors; } catch { MessageBox.Show("Es ist ein unbekannter Fehler aufgetreten. Nochmal versuchen", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void b_delete_tournament_Click(object sender, RoutedEventArgs e) { if (ApplicationState.GetValue <TournamentPers>("CurrentTournament") != null) { TMPersistenz.DeleteTournamentInDB(ApplicationState.GetValue <TournamentPers>("CurrentTournament").Name); dg_tournament_list.ItemsSource = null; ApplicationState.SetValue("CurrentTournament", null); l_current_tournament.Content = ""; List <TournamentPers> allTournaments = TMPersistenz.GetAllTournaments(ApplicationState.GetValue <Client>("LoggedOnUser").Username); dg_tournament_list.ItemsSource = allTournaments; } else { MessageBox.Show("Bitte zuerst ein Turnier auswählen!", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } }
//Weiterleitung Seite Rangliste private void b_ranking_list_Click(object sender, RoutedEventArgs e) { try { if (ApplicationState.GetValue <TournamentPers>("CurrentTournament").IsFinished == false) { MessageBox.Show("Das ausgewählte Turnier wurde noch nicht gespielt. Es ist somit keine Rangliste vorhanden", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } else { Ranking_List rl = new Ranking_List(); this.NavigationService.Navigate(rl); } } catch { MessageBox.Show("Bitte zuerst ein Turnier auswählen!", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } }
//noch nicht gespieltes Turnier fortsetzen private void b_continue_tournament_Click(object sender, RoutedEventArgs e) { try { if (ApplicationState.GetValue <TournamentPers>("CurrentTournament").IsFinished == true) { MessageBox.Show("Das ausgewählte Turnier wurde bereits beendet!", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } else { Tournament_Competitors tc = new Tournament_Competitors(); this.NavigationService.Navigate(tc); } } catch { MessageBox.Show("Bitte zuerst ein Turnier auswählen!", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } }
//Nach Eingabe aller notwendigen Daten, speichern eines neuen Teilnehmers private void b_save_Click(object sender, RoutedEventArgs e) { try { if (this.CheckFields()) { //falls Teilnehmer noch keine ID hat, also nicht über die Suche aufgerufen wurde, neuen anlegen if (l_compID.Content.ToString() == "") { comp.AddCompetitor(tb_name.Text, tb_surname.Text, cb_gender.Text, 1500, cb_visibility.Text, ApplicationState.GetValue <Client>("LoggedOnUser").Username); } //ansonsten Teilnehmer anhand der ID updaten else { Guid compID = Guid.Parse(l_compID.Content.ToString()); comp.UpdateCompetitor(compID, tb_name.Text, tb_surname.Text, cb_gender.Text, comp.FindCompetitor(compID).SkillLevel, cb_visibility.Text); } EmptyAll(); } else { MessageBox.Show("Es wurden nicht alle Felder ausgefüllt", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } } catch { MessageBox.Show("Es ist ein Fehler aufgetreten", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } competitor_search(); }
//Speichern der Aenderungen private void b_save_Click(object sender, RoutedEventArgs e) { List <ICompetitor> teilnehmerListe = new List <ICompetitor>(); foreach (KeyValuePair <Guid, Competitor> c in tournament_competitors) { teilnehmerListe.Add(c.Value); } try { ITournament tournament = TMPersistenz.GetTournamentFromDB( ApplicationState.GetValue <TournamentPers>("CurrentTournament").Name, teilnehmerListe); //Startseite Turnier oeffnen, Turnier ueber Konstruktor der Seite weitergegeben Input_Results ir = new Input_Results(tournament); this.NavigationService.Navigate(ir); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
//Felder werden anhand des ausgewahlten Teilnehmers befuellt und koennen veraendert werden public Edit_Competitor() { InitializeComponent(); l_current_comp.Content = ApplicationState.GetValue <Competitor>("SelectedCompetitor").Name + " " + ApplicationState.GetValue <Competitor>("SelectedCompetitor").Surname; tb_name.Text = ApplicationState.GetValue <Competitor>("SelectedCompetitor").Name; tb_surname.Text = ApplicationState.GetValue <Competitor>("SelectedCompetitor").Surname; switch (ApplicationState.GetValue <Competitor>("SelectedCompetitor").Gender) { case "männlich": cb_gender.SelectedIndex = 1; break; case "weiblich": cb_gender.SelectedIndex = 2; break; default: break; } switch (ApplicationState.GetValue <Competitor>("SelectedCompetitor").Visibility) { case "global": cb_visibility.SelectedIndex = 1; break; case "lokal": cb_visibility.SelectedIndex = 2; break; default: break; } }
//Aufruf der ShareOnTwitter Methode des jeweilig gerade angemeldeten Benutzers private void b_twitter_share_Click(object sender, RoutedEventArgs e) { ApplicationState.GetValue <Client>("LoggedOnUser").ShareOnTwitter(); }
//Aufruf der ShareOnFacebook Methode des jeweilig gerade angemeldeten Benutzers private void b_fb_share_Click(object sender, RoutedEventArgs e) { ApplicationState.GetValue <Client>("LoggedOnUser").ShareOnFacebook(); }
public Tournament_Competitors() { InitializeComponent(); competitor_search(); l_current_tournament.Content = ApplicationState.GetValue <TournamentPers>("CurrentTournament").Name; }
public Finished_Tournament() { InitializeComponent(); l_current_tournament.Content = ApplicationState.GetValue <TournamentPers>("CurrentTournament").Name; l_winner_team.Content = ApplicationState.GetValue <Team>("MatchWinner").ToString(); }
private void b_continue_Click(object sender, RoutedEventArgs e) { try { if (!tournament.IsFinished) { tbl_chance_team1.Text = "Gewinnchance: \n" + (tournament.CurrentMatch.GetWinExpectationThatTeamAWins()).ToString() + " %"; tbl_chance_team2.Text = "Gewinnchance: \n" + (tournament.CurrentMatch.GetWinExpectationThatTeamBWins()).ToString() + " %"; tournament.SetGoalForCurrentSet(teams.ElementAt(0), Int32.Parse(tb_team1.Text), teams.ElementAt(1), Int32.Parse(tb_team2.Text)); tb_team1.Clear(); tb_team2.Clear(); if (countSet == ApplicationState.GetValue <TournamentPers>("CurrentTournament").AmountSets) { countMatch++; l_title.Content = "Spiel " + countMatch.ToString(); countSet = 0; } teams = tournament.CurrentMatch.GetTeams(); if (!String.IsNullOrEmpty(tbl_team1.Text) && !String.IsNullOrEmpty(tbl_team2.Text)) { tbl_team1.Text = teams.ElementAt(0).ToString(); tbl_team2.Text = teams.ElementAt(1).ToString(); countSet++; tbl_nr_set.Text = "Satz: " + countSet.ToString(); ApplicationState.SetValue("MatchWinner", tournament.CurrentMatch.Winner); } else { MessageBox.Show("Bitte Tore eintragen", "KICKERCUP", MessageBoxButton.OK, MessageBoxImage.Error); } } if (tournament.IsFinished) { TMPersistenz.SaveFinishedTournamendToDB(tournament, ApplicationState.GetValue <Client>("LoggedOnUser").Username); if (tournament.IsRanked) { //Rankings des Turniers in der Datenbank abspeichern TMPersistenz.SaveRankingsToDB(tournament); } Finished_Tournament ft = new Finished_Tournament(); ft.DataChanged += Finished_Tournament_DataChanged; ft.Show(); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }