Exemplo n.º 1
0
        public IActionResult Modules(int subjectId, string error)
        {
            ViewBag.Error     = error;
            ViewBag.SubjectId = subjectId;
            List <ModuleViewModel> modules = _moduleRepository.GetModulesBySubjectId(subjectId).ToList();

            return(View(modules));
        }
        public async Task <IActionResult> EditModules(int courseId)
        {
            var course    = _coursesRepository.GetById(courseId);
            var subjectId = course.SubjectId;
            var subject   = _subjectsRepository.GetById(subjectId);
            var modules   = _modulesRepository.GetModulesBySubjectId(subjectId);

            var model = new CourseEditModulesViewModel
            {
                CourseId = courseId,

                Course = new CourseViewModel
                {
                    CourseId    = courseId,
                    Description = subject.Description,
                    Start       = course.StartDate,
                    End         = course.EndDate,
                    Subject     = subject,
                    Name        = course.Name,
                    Teacher     = new UserViewModel
                    {
                        Email      = course.Teacher.Email,
                        FirstName  = course.Teacher.FirstName,
                        LastName   = course.Teacher.LastName,
                        MiddleName = course.Teacher.MiddleName,
                    },
                    TeacherId = course.TeacherId,
                    SubjectId = subjectId
                },
                SubjectId = subjectId,
            };

            var modulesInCourses = (await _coursesRepository.GetModules(model.CourseId)).Select(x => x.ModuleId).ToList();

            model.Modules = modules.Select(x => new CourseModuleEditViewModel
            {
                Id          = x.ModuleId,
                Name        = x.Name,
                Description = x.Description,
                Selected    = modulesInCourses.Count == 0 ? true : modulesInCourses.Contains(x.ModuleId)
            }).ToList();

            return(View(model));
        }