コード例 #1
0
 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();
 }
コード例 #2
0
ファイル: LessonController.cs プロジェクト: NourheneB/fitectp
        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 }));
        }
コード例 #3
0
ファイル: LessonController.cs プロジェクト: NourheneB/fitectp
        // 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"));
            }
        }