public ActionResult Create()
        {
            var teacherId = GetTeacherId();
            var courses   =
                _academicCourseRepository.Filter(
                    x => x.AcademicGrade.AcademicYear.IsActive && x.Teacher != null && x.Teacher.Id == teacherId)
                .Select(x => x.Course);

            ViewBag.course = new SelectList(courses, "Id", "Name");
            ViewBag.Years  = DateTimeController.GetYears();
            ViewBag.Months = DateTimeController.GetMonths();
            ViewBag.Days   = DateTimeController.GetDaysForMonthAndYearStatic(1, DateTime.UtcNow.Year);
            var modelRegister = new HomeworkRegisterModel {
                Year = ((KeyValuePair <int, int>)((SelectList)ViewBag.Years).SelectedValue).Value
            };

            return(View(modelRegister));
        }
        public ActionResult Create(HomeworkRegisterModel registerModelHomework)
        {
            var toCreate  = Mapper.Map <Homework>(registerModelHomework);
            var teacherId = GetTeacherId();

            toCreate.AcademicCourse = _academicCourseRepository.Filter(x => x.Teacher != null && x.Teacher.User.Id == teacherId && x.Course.Id == registerModelHomework.Course).FirstOrDefault();
            _homeworkRepository.Create(toCreate);
            const string title   = "Tarea agregada";
            string       content = "La tarea " + toCreate.Title + " ha sido agregado exitosamente.";

            _viewMessageLogic.SetNewMessage(title, content, ViewMessageType.SuccessMessage);
            var studentsTutors =
                _studentRepository.Filter(
                    x => x.MyGrade != null && x.MyGrade.CoursesDetails.Any(y => y.Id == toCreate.AcademicCourse.Id))
                .ToList();

            foreach (var studentTutor in studentsTutors)
            {
                var tutorUser = studentTutor.Tutor1.User;
                MailgunEmailService.SendEmailToUser(tutorUser, MessageService.NotificarTarea(toCreate.Title));
            }
            return(RedirectToAction("Index"));
        }