Exemple #1
0
        //---fill list lecturers
        public void fillLecturers_list(ListBox lb_nameLecturers, string nameCourse, int day, int hour, CoursesDB coursedb)
        {
            //---input to list all lecturers of this course
            List <string> IDlecturersList = new List <string>();
            char          semester;

            try
            {
                con.OpenCon();
                com = new SqlCommand("SELECT * FROM LecturerToCourses WHERE NameCourse = '" + nameCourse + "'", con.GetCon());
                SqlDataReader rdr = com.ExecuteReader();
                while (rdr.Read())
                {
                    IDlecturersList.Add(rdr[1].ToString());
                }
                con.CloseCon();
                //     lb_nameLecturers.DataSource = IDlecturers;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

            semester = coursedb.GetSemeterByCourse(nameCourse);
            int numh = coursedb.getNumHour(lb_nameLecturers.Text, 1);

            //---check if each lecturer can learning in this time
            checkPreferencesLecturers(lb_nameLecturers, IDlecturersList, day, hour, semester, numh);
        }
        public void fillfreeclasses_list(ListBox lb_freeclasses, ComboBox day, ComboBox hour, ListBox lb_nameCourse, int LecOrTut, CoursesDB coursedb)       //1 lec 2 tut
        {
            int    lenClasses = 0, numh;
            string numecourse;
            int    Day  = day.SelectedIndex + 1;
            int    Hour = hour.SelectedIndex + 8;

            try
            {
                con.OpenCon();
                com = new SqlCommand("SELECT * FROM ListOfClasses", con.GetCon());
                SqlDataReader rdr   = com.ExecuteReader();
                string        nameC = "";
                while (rdr.Read())
                {
                    nameC = rdr.GetString(0);
                    lb_freeclasses.Items.Add(nameC);
                    lenClasses++;
                }
                con.CloseCon();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

            numecourse = lb_nameCourse.SelectedValue.ToString();
            numh       = coursedb.getNumHour(numecourse, LecOrTut);

            List <string> list = new List <string>();

            list = isHeldclass(lb_freeclasses, Day, Hour, numh);
            int n = 0;

            foreach (string item in list)
            {
                lb_freeclasses.Items.Remove(list[n]);
                n++;
            }
        }
        // Add Lecture - Confirmation Button
        private void button4_Click(object sender, EventArgs e)
        {
            CoursesDB       courses_db         = new CoursesDB();
            ActiveCoursesDB actCourseDB        = new ActiveCoursesDB();
            int             day                = cbo_Day.SelectedIndex + 1;
            int             hour               = cbo_Hour.SelectedIndex + 8;
            int             numOfhoursOnCourse = courses_db.getNumHour(cbo_Courses.Text, 1); // 1 for lecturer

            if (((day == 6) && (hour + numOfhoursOnCourse > 13)) || ((day != 6) && (hour + numOfhoursOnCourse > 21)))
            {
                MessageBox.Show("Illegal hours");
            }
            else
            {
                //--fill free class list
                List <string> free_classes = new List <string>();
                actCourseDB.Fill_Free_Classes_List(free_classes, cbo_Day.SelectedIndex + 1, Convert.ToInt32(cbo_Hour.Text), cbo_Courses.Text, 1, courses_db, "Lecture");
                Requests_LecturersDB reqLec = new Requests_LecturersDB();

                reqLec.Check_Classes(free_classes);
                try {
                    if (free_classes.Count == 0)
                    {
                        throw new NullReferenceException("There are no available classrooms.");
                    }

                    string LeteralDay = cbo_Day.Text;
                    if (LeteralDay == "'א")
                    {
                        LeteralDay = "A";
                    }
                    else if (LeteralDay == "'ב")
                    {
                        LeteralDay = "B";
                    }
                    else if (LeteralDay == "'ג")
                    {
                        LeteralDay = "C";
                    }
                    else if (LeteralDay == "'ד")
                    {
                        LeteralDay = "D";
                    }
                    else if (LeteralDay == "'ה")
                    {
                        LeteralDay = "E";
                    }
                    else if (LeteralDay == "'ו")
                    {
                        LeteralDay = "F";
                    }

                    reqLec.Add_Request(user.Get_ID(), user.Get_First_Name(), user.Get_Last_Name(), ADD_LEC, cbo_Courses.Text, LeteralDay, Convert.ToInt32(cbo_Hour.Text), free_classes[0]);
                }
                catch (NullReferenceException ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }


            cbo_Day.ResetText();
            cbo_Hour.ResetText();
            cbo_Courses.ResetText();

            Panel_Cancell_Lec.Visible            = true;
            Panel_Lecturer_Requests_Main.Visible = true;
        }
        private void button2_Click(object sender, EventArgs e)
        {
            string select_class = "", select_lec = "";
            int    select_hour = 8, numberHoursCourse;
            char   select_day    = 'A';
            int    index         = lb_activeCourse.Text.IndexOf("-");
            string fixnumecourse = lb_activeCourse.Text.Substring(0, index);

            while (true)
            {
                //--------Name course check
                if ((lb_activeCourse.Text == ""))
                {
                    MessageBox.Show("You need choose course");      //empty textBox or not integer
                    break;
                }
                if (typeCourse_select.Contains("Lecture"))
                {
                    numberHoursCourse = courses_db.getNumHour(fixnumecourse, 1);
                    //-------day check

                    switch (cb_day.SelectedIndex + 1)
                    {
                    case 1:
                        select_day = 'A';
                        break;

                    case 2:
                        select_day = 'B';
                        break;

                    case 3:
                        select_day = 'C';
                        break;

                    case 4:
                        select_day = 'D';
                        break;

                    case 5:
                        select_day = 'D';
                        break;

                    case 6:
                        select_day = 'E';
                        break;

                    default:
                        MessageBox.Show("You need to choose day");
                        select_day = ' ';
                        break;
                    }
                    if (select_day == ' ')
                    {
                        break;
                    }

                    //-------check hour
                    if (cb_hour.SelectedIndex == -1)
                    {
                        MessageBox.Show("You need to choose hour");
                        select_hour = 0;
                        break;
                    }
                    select_hour = cb_hour.SelectedIndex + 8;


                    if ((lb_class.Text == ""))
                    {
                        MessageBox.Show("You need choose class");      //No choose in ListBox
                        break;
                    }
                    select_class = lb_class.Text;

                    //----check lecturer
                    if ((lb_name_lecOrtut.Text == ""))
                    {
                        MessageBox.Show("You need choose lecturer");      //No choose in ListBox
                        break;
                    }
                    select_lec = lb_name_lecOrtut.Text;

                    //-------All detailse fine------
                    activecourse_db.Update_ActiveCourse(id_active_course, select_hour, select_day, select_class, select_lec);
                    this.Hide();
                    break;
                }
                else
                {
                    break;
                }
            }
        }