public void EditLesson(Lesson lesson, LessonEditVM lessonEdited) { lesson.DateStart = lessonEdited.DateStart; lesson.Day = lessonEdited.Day; lesson.EndHour = lessonEdited.EndHour; lesson.StartHour = lessonEdited.StartHour; db.SaveChanges(); }
public ActionResult Edit(LessonEditVM lessonEdit, int courseID, int instructorID, int lessonID) { if (ModelState.IsValid) { Person user = ConnexionService.GetSession(); if (user != null && user is Instructor) { lessonEdit.StartHour = lessonBL.HarmonizeDatetime(lessonEdit.StartHour); lessonEdit.EndHour = lessonBL.HarmonizeDatetime(lessonEdit.EndHour); Lesson lesson = lessonBL.GetLesson(lessonID); lesson.StartHour = lessonEdit.StartHour; lesson.EndHour = lessonEdit.EndHour; // todo check if instructor id == lesson.instructor id // Can we refactor those tests? if (DateTime.Compare(lesson.StartHour, lesson.EndHour) > 0) { TempData["CreateError"] = LessonConstants.ERRORS_STARTHOUR_AFTER_ENDHOUR; return(RedirectToAction(nameof(LessonController.Edit), "Lesson", new { id = lessonID })); } if (lesson.StartHour.Hour < 8 || lesson.StartHour.Hour > 18) { TempData["CreateError"] = LessonConstants.ERROR_STARTHOUR; return(RedirectToAction(nameof(LessonController.Edit), "Lesson", new { id = lessonID })); } if (lesson.EndHour.Hour < 9 || lesson.EndHour.Hour > 19) { TempData["CreateError"] = LessonConstants.ERROR_ENDHOUR; return(RedirectToAction(nameof(LessonController.Edit), "Lesson", new { id = lessonID })); } if (!lessonBL.IsPlanningEditValid(lesson)) { TempData["CreateError"] = $"{LessonConstants.ERRORS_STARTHOUR_AFTER_ENDHOUR} {TimeService.GetHourFromDate(lessonEdit.StartHour)} h and {TimeService.GetHourFromDate(lessonEdit.EndHour)} h {lessonEdit.Day}"; return(RedirectToAction(nameof(LessonController.Edit), "Lesson", new { id = lessonID })); } lessonBL.EditLesson(lesson, lessonEdit); return(RedirectToAction("Index")); } else { } } return(RedirectToAction(nameof(LessonController.Edit), "Lesson", new { id = lessonID })); }
// GET: Lessons/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Lesson lesson = lessonBL.GetLesson(id); if (lesson == null) { return(HttpNotFound()); } Person user = ConnexionService.GetSession(); if (user != null && user is Instructor) { // TDO Refactoring? LessonEditVM lessonToEdit = new LessonEditVM(); lessonToEdit.LessonId = lesson.LessonID; lessonToEdit.Instructor = lesson.Instructor; lessonToEdit.Course = lesson.Course; lessonToEdit.Day = lesson.Day; lessonToEdit.StartHour = lesson.StartHour; lessonToEdit.EndHour = lesson.EndHour; lessonToEdit.DateStart = lesson.DateStart; // TODO userConnected ID ViewBag.InstructorID = user.ID; return(View(lessonToEdit)); } else { return(RedirectToAction("Index", "Home")); } }