Exemple #1
0
        protected void LoadAdminPanel(WebhostEntities db, Faculty teacher, int curTerm)
        {
            PingBtn.Visible = false;
            if (teacher.Permissions.Where(p => p.Name.Contains("Admin") && p.AcademicYear == DateRange.GetCurrentAcademicYear()).Count() > 0)
            {
                PingBtn.Visible              = true;
                TeacherSelect.DataSource     = FacultyListItem.GetDataSource(db.Faculties.Where(f => f.isActive).OrderBy(f => f.LastName).ThenBy(f => f.FirstName).Select(f => f.ID).ToList());
                TeacherSelect.DataTextField  = "Text";
                TeacherSelect.DataValueField = "ID";
                TeacherSelect.DataBind();

                StudentSelect.DataSource     = StudentListItem.GetDataSource(db.Students.Where(s => s.isActive).OrderBy(f => f.LastName).ThenBy(f => f.FirstName).Select(s => s.ID).ToList());
                StudentSelect.DataTextField  = "Text";
                StudentSelect.DataValueField = "ID";
                StudentSelect.DataBind();
            }
            else if (db.Departments.Where(d => d.DeptHeadId == teacher.ID).Count() > 0)
            {
                List <int> facids = new List <int>();
                Term       term   = db.Terms.Find(curTerm);
                foreach (Department dept in teacher.Departments.ToList())
                {
                    foreach (Section section in term.Sections.Where(s => s.Course.DepartmentID == dept.id).ToList())
                    {
                        foreach (Faculty t in section.Teachers.ToList())
                        {
                            if (!facids.Contains(t.ID))
                            {
                                facids.Add(t.ID);
                            }
                        }
                    }
                }

                TeacherSelect.DataSource     = FacultyListItem.GetDataSource(facids);
                TeacherSelect.DataTextField  = "Text";
                TeacherSelect.DataValueField = "ID";
                TeacherSelect.DataBind();

                StudentSelect.DataSource     = StudentListItem.GetDataSource(teacher.Students.Where(s => s.isActive).Select(s => s.ID).ToList());
                StudentSelect.DataTextField  = "Text";
                StudentSelect.DataValueField = "ID";
                StudentSelect.DataBind();
            }
            else
            {
                TeacherSelect.DataSource = FacultyListItem.GetDataSource(new List <int>()
                {
                    user.ID
                });
                TeacherSelect.DataTextField  = "Text";
                TeacherSelect.DataValueField = "ID";
                TeacherSelect.DataBind();

                StudentSelect.DataSource     = StudentListItem.GetDataSource(teacher.Students.Where(s => s.isActive).Select(s => s.ID).ToList());
                StudentSelect.DataTextField  = "Text";
                StudentSelect.DataValueField = "ID";
                StudentSelect.DataBind();
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                int year = DateRange.GetCurrentAcademicYear();
                using (WebhostEntities db = new WebhostEntities())
                {
                    StudentSelect.DataSource     = StudentListItem.GetDataSource(db.Students.Where(s => s.isActive).OrderBy(s => s.GraduationYear).ThenBy(s => s.LastName).ThenBy(s => s.FirstName).Select(s => s.ID).ToList());
                    StudentSelect.DataTextField  = "Text";
                    StudentSelect.DataValueField = "ID";
                    StudentSelect.DataBind();

                    CreditTypeDDL.DataSource     = GradeTableEntryListItem.GetDataSource(db.GradeTables.Where(t => t.Name.Equals("Credit Types") && t.AcademicYearID == year).Single().GradeTableEntries.Select(d => d.id).ToList());
                    CreditTypeDDL.DataTextField  = "Text";
                    CreditTypeDDL.DataValueField = "ID";
                    CreditTypeDDL.DataBind();

                    CreditValueDDL.DataSource     = GradeTableEntryListItem.GetDataSource(db.GradeTables.Where(t => t.Name.Equals("Credit Values") && t.AcademicYearID == year).Single().GradeTableEntries.Select(d => d.id).ToList());
                    CreditValueDDL.DataTextField  = "Text";
                    CreditValueDDL.DataValueField = "ID";
                    CreditValueDDL.DataBind();
                }
            }
        }