Example #1
0
        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            try
            {
                if (String.IsNullOrWhiteSpace(tbName.Text))
                {
                    lblError.Text = "Название команды не введено";
                    return;
                }
                if (cbGroupToSet.SelectedIndex < 0 || cbGroupToSet.SelectedItem == null)
                {
                    lblError.Text = "Группа команд не выбрана";
                    return;
                }
                int?grIdToSet;
                if (cbGroupToSet.SelectedIndex == 0)
                {
                    grIdToSet = null;
                }
                else
                {
                    grIdToSet = new int?(int.Parse(cbGroupToSet.SelectedItem.Value));
                }
                ONLteam tNew;
                if (String.IsNullOrEmpty(lblIid.Text))
                {
                    tNew = ONLteam.CreateONLteam((int)SortingClass.GetNextIID("ONLTeams", "iid", cn, null));
                }
                else
                {
                    tNew = GetTeamByIid(int.Parse(lblIid.Text));
                }
                tNew.name = tbName.Text;

                if (String.IsNullOrEmpty(lblIid.Text))
                {
                    dc.ONLteams.AddObject(tNew);
                }
                tNew.group_id = grIdToSet;
                dc.SaveChanges();
                if (cbUsedNow.Visible)
                {
                    if (cbUsedNow.Checked)
                    {
                        int rankingPos;
                        if (!int.TryParse(tbRanking.Text, out rankingPos))
                        {
                            rankingPos = int.MaxValue;
                        }
                        tNew.AddTeamToCompetition(compID, new int?(rankingPos));
                        try
                        {
                            var uList = tNew.ONLusers.ToArray();
                            for (int i = 0; i < uList.Length; i++)
                            {
                                uList[i].AddUserToCompetition(compID);
                            }
                        }
                        catch { }
                    }
                    else
                    {
                        tNew.RemoveTeamFromCompetition(compID);
                    }
                }

                panelEdit.Visible       = false;
                panelSelect.Enabled     = true;
                panelTeamGroups.Visible = true;
                LoadTeams();
                lblError.Text = "Команда создана/обновлена";
            }
            catch (Exception ex)
            {
                lblError.Text = "Ошибка добавления/обновления команды:\r\n" +
                                ex.Message;
            }
        }