public ActionResult Assignments(DisplayFilterViewModel filter, int?selectedCourse) { StudentAssignmentFilterType activeFilter = (StudentAssignmentFilterType)filter.ActiveFilter; ViewBag.Filter = _assignmentTaskAndSubmissionService.GetAssignmentDisplayFilter("Assignments", "Student", "assignments", activeFilter); ViewData["NoAssignmentDisplayLabel"] = (activeFilter == StudentAssignmentFilterType.Active) ? "active " : ((activeFilter == StudentAssignmentFilterType.Submitted) ? "submitted " : string.Empty); ViewData["StudentCourses"] = new SelectList(_courseModuleService.GetAllStudentCourses(CurrentUser.Id, false), "Id", "Title", selectedCourse.HasValue ? selectedCourse.Value.ToString() : string.Empty); List <AssignmentSubmissionViewModel> models = _assignmentTaskAndSubmissionService.GetAllStudentAssignmentSubmissions(CurrentUser.Id, activeFilter, selectedCourse.HasValue ? selectedCourse.Value : 0); return(View("AssignmentSubmissions", models)); }
/// <summary> /// Gets all assignments by student. /// </summary> /// <param name="studentId">The student id.</param> /// <param name="filter">The filter.</param> /// <param name="courseId">The course id.</param> /// <returns></returns> public List <Assignment> GetAllAssignmentsByStudentAndCourse(int studentId, StudentAssignmentFilterType filter = StudentAssignmentFilterType.Active, int courseId = 0) { List <Assignment> assignments = new List <Assignment>(); try { assignments = AssignmentRepository.FindAssignmentsByStudentAndCourse(studentId, courseId); switch (filter) { case StudentAssignmentFilterType.Active: assignments.RemoveAll(SubmittedAssignmentMatches); break; case StudentAssignmentFilterType.Submitted: assignments.RemoveAll(ActiveAssignmentMatches); break; } } catch (Exception ex) { ExceptionManager.HandleException(ex, PolicyNameType.ExceptionShielding); } return(assignments); }
/// <summary> /// Creates the assignment display filter view model. /// </summary> /// <param name="action">The action.</param> /// <param name="controller">The controller.</param> /// <param name="updateTargetId">The update target id.</param> /// <param name="activeFilter">The active filter.</param> /// <returns></returns> public static DisplayFilterViewModel CreateAssignmentDisplayFilterViewModel(string action, string controller, string updateTargetId, StudentAssignmentFilterType activeFilter = StudentAssignmentFilterType.Active) { DisplayFilterViewModel model = new DisplayFilterViewModel() { TargetActionName = action, TargetControllerName = controller, UpdateTargetId = updateTargetId, ActiveFilter = (int)activeFilter, DisplayLegend = "Show", Item1Display = EnumHelper.DiscriptionFor(StudentAssignmentFilterType.All), Item2Display = EnumHelper.DiscriptionFor(StudentAssignmentFilterType.Active), Item3Display = EnumHelper.DiscriptionFor(StudentAssignmentFilterType.Submitted), Item1Css = activeFilter == StudentAssignmentFilterType.All ? "active" : string.Empty, Item2Css = activeFilter == StudentAssignmentFilterType.Active ? "active" : string.Empty, Item3Css = activeFilter == StudentAssignmentFilterType.Submitted ? "active" : string.Empty, Item1Value = (int)StudentAssignmentFilterType.All, Item2Value = (int)StudentAssignmentFilterType.Active, Item3Value = (int)StudentAssignmentFilterType.Submitted }; return(model); }
/// <summary> /// Gets the assignment display filter. /// </summary> /// <param name="action">The action.</param> /// <param name="controller">The controller.</param> /// <param name="updateTargetId">The update target id.</param> /// <param name="displayFilter">The display filter.</param> /// <returns></returns> public DisplayFilterViewModel GetAssignmentDisplayFilter(string action, string controller, string updateTargetId, StudentAssignmentFilterType displayFilter = StudentAssignmentFilterType.Active) { DisplayFilterViewModel model = null; try { model = DisplayFilterViewModelFactory.CreateAssignmentDisplayFilterViewModel(action, controller, updateTargetId, displayFilter); } catch (Exception ex) { ExceptionManager.HandleException(ex, PolicyNameType.ExceptionReplacing); } return(model); }
/// <summary> /// Gets all student assignment submissions. /// </summary> /// <param name="studentId">The student id.</param> /// <param name="displayFilter">The display filter.</param> /// <param name="courseId">The course id.</param> /// <returns></returns> public List <AssignmentSubmissionViewModel> GetAllStudentAssignmentSubmissions(int studentId, StudentAssignmentFilterType displayFilter = StudentAssignmentFilterType.Active, int courseId = 0) { List <AssignmentSubmissionViewModel> models = new List <AssignmentSubmissionViewModel>(); try { List <Assignment> assignments = AssignmentManager.GetAllAssignmentsByStudentAndCourse(studentId, displayFilter, courseId); models = AssignmentSubmissionViewModelFactory.CreateStudentAssignmentSubmissionViewModels(assignments, studentId, ObjectMapper); } catch (Exception ex) { ExceptionManager.HandleException(ex, PolicyNameType.ExceptionReplacing); } return(models); }