Exemplo n.º 1
0
        static public void deleteAccount(AccountForm form, string password)
        {
            string currEmail = LoggedUserUtility.getCurrentEmail();

            try
            {
                var user       = db.uzytkownik.FirstOrDefault(uz => uz.login == currEmail && uz.haslo == password);
                var contestant = db.zawodnik.FirstOrDefault(uz => uz.id_uzytkownik == user.id_uzytkownik);
                db.uzytkownik.Remove(user);
                db.zawodnik.Remove(contestant);
                db.SaveChanges();

                form.Close();
                LoginForm lf = new LoginForm(null);
                lf.Show();

                for (int i = 0; i < Application.OpenForms.Count; i++)
                {
                    if (Application.OpenForms[i].Text == "Multiliga")
                    {
                        Application.OpenForms[i].Close();
                        break;
                    }
                }
            }
            catch
            {
                MessageBox.Show("Błędne hasło", "Niepowodzenie");
            }
        }
Exemplo n.º 2
0
      private void NoLoginButton_Click(object sender, EventArgs e)
      {
          this.Hide();
          MainForm mf   = new MainForm(this);
          var      user = LoggedUserUtility.userType.lurker;

          LoggedUserUtility.setCurrentUserType(user);
          LoggedUserUtility.setCurrentEmail("");
          mf.SetMenu(user);
          mf.Show();
      }
        private void ResultView_CellClick(object sender, DataGridViewCellEventArgs e)       //kiedy klikam komorke w gridview moich zawodow/druzyn
        {
            var loggedUserType   = LoggedUserUtility.getCurrentUserType();
            var loggedContestant = LoggedUserUtility.getLoggedContestant();

            if (CompetitionBox.Text == "Lista zawodów")
            {
                DataGridViewTextBoxCell IDcell = (DataGridViewTextBoxCell)CompetitionView.Rows[e.RowIndex].Cells[3];      //cells[3] -> bierzemy dane z kolumny ID
                competitionId = Convert.ToInt32(IDcell.Value);


                CompetitionsTeamsForm competitionsTeamsForm = new CompetitionsTeamsForm(this);
                competitionsTeamsForm.SetWindow("wyścigi", competitionId);

                competitionsTeamsForm.ConfirmButton.Visible = false;
                competitionsTeamsForm.Show();
            }
            else if (CompetitionBox.Text == "Lista wyścigów")
            {
                DataGridViewCell        clickedCell = (DataGridViewCell)CompetitionView.Rows[e.RowIndex].Cells[e.ColumnIndex];
                DataGridViewTextBoxCell raceIdCell  = (DataGridViewTextBoxCell)CompetitionView.Rows[e.RowIndex].Cells[3];  //teamId w 3 kolumnie
                //na podstawie competitionId otworz wyscigi
                if (loggedUserType == LoggedUserUtility.userType.organiser || loggedUserType == LoggedUserUtility.userType.supervisor)
                {
                    CreateDeleteEditForm createDeleteEditForm = new CreateDeleteEditForm(this);
                    if (clickedCell.Value == "Dodaj trasę")
                    {
                        createDeleteEditForm.ModifiedRaceId = Convert.ToInt32(raceIdCell.Value);
                        createDeleteEditForm.SetCreateForm("Podaj trasę wyścigów", "", "", "", "Trasa", "", "", "");
                        createDeleteEditForm.dropDownTracks();
                        createDeleteEditForm.Show();
                    }
                }
                else if (loggedUserType == LoggedUserUtility.userType.captain || loggedUserType == LoggedUserUtility.userType.contestant)
                {
                    if (clickedCell.Value == "Akceptuj")
                    {
                        ContestantDataUtility.acceptRaceInvitation(loggedContestant.id_zawodnik, Convert.ToInt32(raceIdCell.Value));
                        fillWithRaces(CompetitionView, loggedContestant.id_zawodnik, competitionId);
                    }
                }
            }
            else if (CompetitionBox.Text == "Lista drużyn")
            {
                DataGridViewCell        clickedCell = (DataGridViewCell)CompetitionView.Rows[e.RowIndex].Cells[e.ColumnIndex];
                DataGridViewTextBoxCell teamIdCell  = (DataGridViewTextBoxCell)CompetitionView.Rows[e.RowIndex].Cells[3];  //teamId w 3 kolumnie
                if (clickedCell.Value == "Akceptuj")
                {
                    ContestantDataUtility.acceptTeamInvitation(loggedContestant.id_zawodnik, Convert.ToInt32(teamIdCell.Value));
                    fillWithInvitations(CompetitionView, loggedContestant.id_zawodnik);
                }
            }
        }
Exemplo n.º 4
0
        static public void logIn(LoginForm form, string login, string password)
        {
            //form.IncorrectLoginLabel.Visible = false;
            form.setIncorrectLoginLabel(false);

            if (db.uzytkownik.Any(u => u.login == login.ToString() && u.haslo == password.ToString()))         //sprawdzam czy podany login i podane hasło są w bazie danych
            {
                form.Hide();
                MainForm mf = new MainForm(form);
                // 0 - mozliwosc wyszukiwania
                // 1 - organizator
                // 2 - kapitan
                // 3 - opiekun
                // 4 - zawodnik
                // default - mozliwosc logowania
                LoggedUserUtility.setCurrentEmail(login.ToString());


                var currentUser = LoggedUserUtility.getLoggedUser();

                var user = LoggedUserUtility.userType.lurker;
                if (currentUser.rola == "zawodnik")
                {
                    user = LoggedUserUtility.userType.contestant;
                    //TODO kapitan, sprawdzic czy w tabeli druzyna jest jako kapitan
                    if (ContestantDataUtility.checkIfCaptain(LoggedUserUtility.getLoggedContestant().id_zawodnik))
                    {
                        user = LoggedUserUtility.userType.captain;
                    }
                }
                else
                {
                    var currentEmployee = LoggedUserUtility.getLoggedEmployee();

                    if (currentEmployee.stanowisko == "organizator")
                    {
                        user = LoggedUserUtility.userType.organiser;
                    }
                    else if (currentEmployee.stanowisko == "opiekun")
                    {
                        user = LoggedUserUtility.userType.supervisor;
                    }
                }
                // jesli do set menu podany user > 4 to nie ma mozliwosci wyszukiwania
                LoggedUserUtility.setCurrentUserType(user);
                mf.SetMenu(user);
                mf.Show();
            }
            else
            {
                form.setIncorrectLoginLabel(true);
            }
        }
        static public void createCompetition(int disciplineId, int numberOfRaces, string city, int supervisorId, string name, string schedule, string qualifiers, ref bool successfulOperation, TemplateForm form)
        {
            if (!raceNameTaken(name))   //jeśli nazwa nie jest zajęta
            {
                if (competitionScheduleCheck(Convert.ToInt32(numberOfRaces), schedule))
                {
                    var currentEmployee = LoggedUserUtility.getLoggedEmployee();

                    var competition = new zawody
                    {
                        id_organizator     = currentEmployee.id_pracownik,
                        id_dyscyplina      = disciplineId,
                        nazwa              = name,
                        id_opiekun_zawodow = supervisorId
                    };
                    db.zawody.Add(competition);
                    db.SaveChanges();

                    var dates = new List <DateTime>();
                    dates = getCompetitionDates(schedule);

                    for (int i = 0; i < dates.Count; ++i)
                    {
                        var race = new wyscig {
                            miasto = city, id_zawody = competition.id_zawody, data = dates[i], id_trasa = 1
                        };
                        db.wyscig.Add(race);
                        db.SaveChanges();

                        if (checkQualifiersPossibility(numberOfRaces, qualifiers) && i == 0)
                        {
                            competition.id_kwalifikacje = race.id_wyscig;
                            db.SaveChanges();
                        }
                    }
                    competition.data_poczatek = dates[0];
                    competition.data_koniec   = dates[dates.Count - 1];
                    db.SaveChanges();
                }
                else
                {
                    MessageBox.Show("Błąd przy wprowadzaniu harmonogramu wyścigu", "Niepowodzenie");
                    successfulOperation = false;
                }
            }
            else
            {
                MessageBox.Show("Podana nazwa wyścigu jest już zajęta", "Niepowodzenie");
                successfulOperation = false;
            }
        }
Exemplo n.º 6
0
 private void SaveButton_Click(object sender, EventArgs e)
 {
     if (this.groupBox1.Text == "Przypomnienie hasła")
     {
         LoggedUserUtility.remindPassword(textBox2.Text);
     }
     else if (this.groupBox1.Text == "Zmiana hasła")
     {
         LoggedUserUtility.changePassword(this, textBox1.Text, textBox2.Text, textBox3.Text);
     }
     else if (this.groupBox1.Text == "Usuwanie konta")
     {
         LoggedUserUtility.deleteAccount(this, textBox2.Text);
     }
 }
        internal void SetProfile(LoggedUserUtility.userType user, string groupBox, string inviteMessage, string label1, string label2, string label3, string label4, string label5, string label6, string label7)
        {
            this.ProfileView.Text  = groupBox;
            this.label1.Text       = label1;
            this.label2.Text       = label2;
            this.label3.Text       = label3;
            this.label4.Text       = label4;
            this.label5.Text       = label5;
            this.label6.Text       = label6;
            this.label7.Text       = label7;
            this.InviteButton.Text = inviteMessage;

            if (inviteMessage == "Zaproś do zawodów")
            {
                if (user == LoggedUserUtility.userType.supervisor)  //tylko opiekun (user = 3) może dodać druzyne do zawodów
                {
                    InviteButton.Visible = true;
                    comboBox1.Visible    = true;
                    //znajduje zawody obecnie zalogowanego organizatora/opiekuna i wyświetlam je w comboBox1
                    var invitingUser      = LoggedUserUtility.getLoggedEmployee();
                    var usersCompetitions = LoggedUserUtility.getEmployeesCompetitions(invitingUser.id_pracownik);

                    comboBox1.ValueMember   = "id_zawody";
                    comboBox1.DisplayMember = "nazwa";
                    comboBox1.DataSource    = usersCompetitions;
                }
            }
            else
            {
                if (user == LoggedUserUtility.userType.captain)   //tylko kapitan (user = 2) może dodać zawodnika do drużyny
                {
                    InviteButton.Visible = true;
                    comboBox1.Visible    = true;

                    //znajduje drużyny obecnie zalogowanego kapitana i wyświetlam jest w comboBox1
                    var captain       = LoggedUserUtility.getLoggedContestant();
                    var captainsTeams = db.druzyna.Where(d => d.id_kapitan == captain.id_zawodnik).ToList();

                    comboBox1.ValueMember   = "id_druzyna";
                    comboBox1.DisplayMember = "nazwa";
                    comboBox1.DataSource    = captainsTeams;
                }
            }

            //MatchesView.Rows.Add("Motocross Lublin 1:0 Olsztyn");
            //MatchesView.Rows.Add("XYZ 0:1 Motocross Lublin");
        }
        internal void SetWindow(string kind, int competitionId = 0)
        {
            var type = LoggedUserUtility.getCurrentUserType();

            if (kind == "zawody")
            {
                CompetitionBox.Text   = "Lista zawodów";
                ConfirmButton.Visible = false;
                if (type == LoggedUserUtility.userType.contestant || type == LoggedUserUtility.userType.captain)
                {
                    fillWithAttendedCompetitions(CompetitionView, LoggedUserUtility.getLoggedContestant().id_zawodnik);
                }
                else if (type == LoggedUserUtility.userType.supervisor || type == LoggedUserUtility.userType.organiser)
                {   //wyswietlanie zawodow zarzadzanych przez organizatora/opiekuna
                    List <zawody> competitions       = LoggedUserUtility.getEmployeesCompetitions(LoggedUserUtility.getLoggedEmployee().id_pracownik);
                    var           competitionsAccept = competitions.Select(x => new { Nazwa = x.nazwa, Akcja = "Akceptuj" }).ToList();
                    CompetitionView.DataSource = competitions.Select(x => new { Nazwa = x.nazwa, competitionId = x.id_zawody }).ToList();
                }
            }
            else if (kind == "druzyny")  //done
            {
                CompetitionBox.Text   = "Lista drużyn";
                ConfirmButton.Visible = false;

                fillWithInvitations(CompetitionView, LoggedUserUtility.getLoggedContestant().id_zawodnik);
            }
            else
            {
                CompetitionBox.Text = "Lista wyścigów";

                ConfirmButton.Visible = false;
                if (type == LoggedUserUtility.userType.contestant || type == LoggedUserUtility.userType.captain)  //wyswietlanie wyscigow w ktorych bierze udzial/jest zaproszony zawodnik
                {
                    fillWithRaces(CompetitionView, LoggedUserUtility.getLoggedContestant().id_zawodnik, competitionId);
                    //TODO po kliknieciu zaakceptowane update _zawodnik_wyscig
                }
                else if (type == LoggedUserUtility.userType.supervisor || type == LoggedUserUtility.userType.organiser) // wyscigi ktorymi zarzadzaja organizator/opiekun
                {
                    var races = CompetitionDataUtility.getRacesInCompetition(competitionId);
                    CompetitionView.DataSource = races.AsEnumerable().Select((x, index) => new { Nazwa = "Wyścig nr. " + (index + 1), Akcja = "Dodaj trasę", competitionId = x.id_wyscig }).ToList();  //idwyscig czy dobrze
                    //po kliknieciu przejscie do edycji trasy wyscigu
                }
            }
            CompetitionView.ClearSelection();
            CompetitionView.CurrentCell = null;
        }
Exemplo n.º 9
0
 static public void createTeam(string name, TemplateForm form)
 {
     if (name.Length > 0)
     {
         using (var db = new multiligaEntities())
         {
             var team = new druzyna {
                 nazwa = name, id_kapitan = LoggedUserUtility.getLoggedContestant().id_zawodnik
             };
             db.druzyna.Add(team);
             var userTeam = new zawodnik_druzyna {
                 id_druzyna = team.id_druzyna, id_zawodnik = LoggedUserUtility.getLoggedContestant().id_zawodnik
             };
             db.zawodnik_druzyna.Add(userTeam);
             db.SaveChanges();
         }
     }
 }
 static public void deleteCompetition(string name, ref bool successfulOperation, TemplateForm form)
 {
     if (raceNameTaken(name))
     {
         var competition = db.zawody.FirstOrDefault(z => z.nazwa == name);
         if (LoggedUserUtility.getLoggedEmployee().id_pracownik == competition.id_organizator)   //sprawdzenie uprawnien
         {
             db.zawody.Remove(competition);
             db.SaveChanges();
         }
         else
         {
             MessageBox.Show("Nie masz uprawnień do usunięcia tych zawodów", "Niepowodzenie");
             successfulOperation = false;
         }
     }
     else
     {
         MessageBox.Show("Nie znaleziono zawodów o podanej nazwie", "Niepowodzenie");
         successfulOperation = false;
     }
 }
Exemplo n.º 11
0
 private void SaveButton_Click(object sender, EventArgs e)
 {
     LoggedUserUtility.editAccount(this, EmailText.Text, HeightText.Text, WeightText.Text, AboutMe.Text, PermissionsCheckBox.Checked);
 }
        static public void updateCompetition(int disciplineId, int numberOfRaces, string city, int supervisorId, string name, string schedule, string qualifiers, ref bool successfulOperation, TemplateForm form)
        {
            if (raceNameTaken(name))
            {
                var competition = db.zawody.FirstOrDefault(z => z.nazwa == name);

                if (LoggedUserUtility.getLoggedEmployee().id_pracownik == competition.id_organizator)   //sprawdzam uprawnienia
                {
                    competition.id_dyscyplina      = disciplineId;
                    competition.id_opiekun_zawodow = supervisorId;

                    if (city.Length > 0)   //sprawdzam czy wpisano jakies miasto
                    {
                        var races = db.wyscig.Where(w => w.id_zawody == competition.id_zawody);
                        foreach (var race in races)
                        {
                            race.miasto = city.ToString();
                        }
                        db.SaveChanges();
                    }

                    if (competitionScheduleCheck(numberOfRaces, schedule))  //sprawdzam czy liczba wyscigow pokrywa sie z iloscia dat
                    {
                        var dates = new List <DateTime>();
                        dates = getCompetitionDates(schedule);

                        var races     = db.wyscig.Where(w => w.id_zawody == competition.id_zawody);
                        int raceIndex = 0;
                        foreach (var race in races)
                        {
                            if (dates.Count <= raceIndex)
                            {
                                db.wyscig.Remove(race);
                            }
                            else
                            {
                                race.data = dates[raceIndex];
                            }
                            ++raceIndex;
                        }
                        if (dates.Count > races.Count())   //jesli po edycji jest więcej wyścigów niż poprzednio
                        {
                            var cityName = "";
                            if (city.Length == 0)  //sprawdzam czy przy edycji zostało podane nowe miasto
                            {
                                cityName = races.FirstOrDefault <wyscig>().miasto;
                            }
                            else
                            {
                                cityName = city;
                            }

                            for (int i = races.Count(); i < dates.Count; ++i)
                            {
                                var race = new wyscig {
                                    miasto = cityName, id_zawody = competition.id_zawody, data = dates[i], id_trasa = 1
                                };
                                db.wyscig.Add(race);
                            }
                        }

                        //todo qualifiers
                        competition.data_poczatek = dates[0];
                        competition.data_koniec   = dates[dates.Count - 1];
                        db.SaveChanges();
                    }
                }
                else
                {
                    MessageBox.Show("Nie masz uprawnień do usunięcia tych zawodów", "Niepowodzenie");
                    successfulOperation = false;
                }
            }
            else
            {
                MessageBox.Show("Nie znaleziono zawodów o podanej nazwie", "Niepowodzenie");
                successfulOperation = false;
            }
        }
Exemplo n.º 13
0
        private void SaveButton_Click(object sender, EventArgs e)
        {
            string _operation = "";

            successfulOperation = true;
            switch (groupBox1.Text)
            {
            case "Usuń zawody":
            {
                _operation = "usunięto zawody!";
                CompetitionDataUtility.deleteCompetition(textBox5.Text, ref successfulOperation, this);
                break;
            }

            case "Utwórz nowe zawody":
            {
                _operation = " utworzono zawody!";
                CompetitionDataUtility.createCompetition(int.Parse(comboBox1.SelectedValue.ToString()), Convert.ToInt32(numberOfRaces.Value),
                                                         textBox3.Text, int.Parse(comboBox4.SelectedValue.ToString()), textBox5.Text, textBox6.Text, comboBox7.Text, ref successfulOperation, this);
                break;
            }

            case "Edytuj zawody":
            {
                _operation = " edytowano zawody!";
                CompetitionDataUtility.updateCompetition(int.Parse(comboBox1.SelectedValue.ToString()), Convert.ToInt32(numberOfRaces.Value),
                                                         textBox3.Text, int.Parse(comboBox4.SelectedValue.ToString()), textBox5.Text, textBox6.Text, comboBox7.Text, ref successfulOperation, this);
                break;
            }

            case "Załóż konto":
            {
                _operation = " założone konto!";
                LoggedUserUtility.createAccount(textBox5.Text, textBox6.Text, textBox3.Text, ref successfulOperation);
                break;
            }

            case "Załóż drużynę":
            {
                _operation = " założona drużyna!";
                TeamDataUtility.createTeam(textBox3.Text, this);
                break;
            }

            case "Podaj trasę wyścigów":
            {
                _operation = " dodana trasa!";
                CompetitionDataUtility.addRaceTrack(Convert.ToInt32(comboBox4.SelectedValue), ModifiedRaceId, ref successfulOperation);
                break;
            }

            default:
                break;
            }

            if (successfulOperation == true)
            {
                MessageBox.Show("Poprawnie " + _operation, "Sukces");
                Close();
            }
            else
            {
                successfulOperation = true;
            }
        }
Exemplo n.º 14
0
        static public void editAccount(AccountEditForm form, string email, string height, string weight, string aboutMe, bool permissionsChecked)
        {
            string _operation = "";

            var currEmail  = LoggedUserUtility.getCurrentEmail();
            var user       = db.uzytkownik.FirstOrDefault(uz => uz.login == currEmail);
            var contestant = db.zawodnik.FirstOrDefault(zaw => zaw.id_uzytkownik == user.id_uzytkownik);

            if (IsValidEmail(email))
            {
                user.login = email;
                LoggedUserUtility.setCurrentEmail(email);
                _operation += "\n- email";
            }
            else if (email.Length > 0)
            {
                MessageBox.Show("Zły format adresu email", "Niepowodzenie");
            }

            if (isNumber(height))
            {
                contestant.wzrost = int.Parse(height);
                _operation       += "\n- wzrost";
            }
            else if (height.Length > 0)
            {
                MessageBox.Show("Błąd w podanym wzroście", "Niepowodzenie");
            }

            if (isNumber(weight))
            {
                contestant.waga = int.Parse(weight);
                _operation     += "\n- waga";
            }
            else if (weight.Length > 0)
            {
                MessageBox.Show("Błąd w podanej wadze", "Niepowodzenie");
            }

            if (aboutMe.Length > 0)
            {
                contestant.o_sobie = aboutMe;
                _operation        += "\n- osiagniecia";
            }

            var previousPermissions = contestant.publiczne;

            contestant.publiczne = Convert.ToInt16(permissionsChecked);
            if (previousPermissions != Convert.ToInt16(permissionsChecked))
            {
                _operation += "\n- ustawienia prywatności";
            }
            db.SaveChanges();


            if (_operation.Length == 0)
            {
                MessageBox.Show("Nie edytowano żadnych danych", "Brak zmian");
            }
            else
            {
                MessageBox.Show("Z powodzeniem edytowano: " + _operation, "Powodzenie");
            }
            form.Close();
        }
Exemplo n.º 15
0
 private void LoginButton_Click(object sender, EventArgs e)
 {
     LoggedUserUtility.logIn(this, Login.Text, Password.Text);
 }