// GET: Room public async Task <IActionResult> Index() { User currentUser = SessionVariables.GetCurrentUser(HttpContext); if (currentUser != null && currentUser.Role != null && currentUser.Role.Rooms.CanView) { List <Room> rooms = DAL.GetRooms(); List <AcademicSemester> academicSemesters = DAL.GetAcademicSemesters(); List <int> years = new List <int>(); foreach (AcademicSemester academicSemester in academicSemesters) { if (!years.Contains(academicSemester.AcademicYear)) { years.Add(academicSemester.AcademicYear); } } Dictionary <int, List <Section> > roomSections = new Dictionary <int, List <Section> >(); List <Section> sections = DAL.GetSectionsByAcademicSemesterID(SessionVariables.GetSessionAcademicSemesterID(HttpContext)); foreach (Room room in rooms) { if (!roomSections.ContainsKey(room.ID)) { roomSections.Add(room.ID, new List <Section>()); } foreach (Section sc in sections) { if (sc.RoomID == room.ID && sc.Course != null) { roomSections[room.ID].Add(sc); } } } ViewData["AcademicSemesterYear"] = SessionVariables.GetSessionAcademicSemester(HttpContext).AcademicYear; ViewData["SemesterID"] = new SelectList(DAL.GetSemesters(), "ID", "Name", SessionVariables.GetSessionAcademicSemester(HttpContext).SemesterID); ViewData["AcademicYears"] = new SelectList(years, SessionVariables.GetSessionAcademicSemester(HttpContext).AcademicYear); ViewData["AcademicSemester"] = SessionVariables.GetSessionAcademicSemester(HttpContext).Display; ViewData["RoomSections"] = roomSections; return(View(rooms)); } else { SessionVariables.SetErrorMessage("You do not have permission to view rooms"); return(RedirectToAction("Index", "Section")); } }
private void RefreshData(HttpContext httpContext) { _Sections = DAL.GetSectionsByAcademicSemesterID(SessionVariables.GetSessionAcademicSemesterID(httpContext)); }