/// <summary> /// Gets all the staff. /// </summary> /// <returns></returns> public List <QuizzesViewModel> GetQuizByCourse(int courseId, int studentId) { List <QuizzesViewModel> models = new List <QuizzesViewModel>(); try { //Get modules by course List <Module> module = ModuleManager.GetModulesByCourse(courseId); foreach (var item in module) { List <Quiz> quizzes = QuizManager.GetQuizzesByModule(item.Id); if (quizzes.Count != 0)//If we have quizzes for the module { foreach (var item2 in quizzes) { QuizzesViewModel viewmodel = new QuizzesViewModel(); viewmodel = ObjectMapper.Map <Model.Entities.Quiz, QuizzesViewModel>(item2); viewmodel.AttemptsSoFar = QuizEntryManager.NumAttemptsSoFar(item2.Id, studentId); //set Up module and course2. viewmodel.ModuleId = item.Id; viewmodel.ModuleTitle = item.Title; viewmodel.CourseId = item.Course_Id; models.Add(viewmodel); } } } } catch (Exception ex) { ExceptionManager.HandleException(ex, PolicyNameType.ExceptionReplacing); } return(models); }
/// <summary> /// Determines if the quiz is available to the student, depending of the number of attempts /// </summary> /// <param name="quizId"></param> /// <param name="studentId"></param> /// <returns></returns> public bool QuizAvailableToStudent(int quizId, int studentId) { QuizzesViewModel quiz = new QuizzesViewModel(); quiz = ObjectMapper.Map <Model.Entities.Quiz, QuizzesViewModel>(QuizManager.FindBy(quizId)); return(quiz.MaxAttemptsAllowed < QuizEntryManager.NumAttemptsSoFar(quizId, studentId)); }