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.º 2
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);
            }
        }
        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.º 5
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();
         }
     }
 }