//
 // GET: /TimeSlot/Create
 public ActionResult Create()
 {
     var ts = new TimeSlot
                 {
                     start_time = DateTime.Now,
                     end_time = DateTime.Now
                 };
     return View("Create", ts);
 }
 public ActionResult Create(TimeSlot tsToCreate)
 {
     if (ModelState.IsValid && TimesMakeSense(tsToCreate, ModelState))
     {
         _repository.AddTimeSlot(tsToCreate);
         _repository.Save();
         return RedirectToAction("Index");
     }
     return View("Create", tsToCreate);
 }
 public void DeleteTimeSlot(TimeSlot timeslot)
 {
     _timeslots.Remove(timeslot);
 }
 public void AddTimeSlot(TimeSlot timeslot)
 {
     timeslot.id = ++_timeslotMaxId;
     _timeslots.Add(timeslot);
 }
 public void DeleteTimeSlot(TimeSlot timeslot)
 {
     _conferenceware.TimeSlots.DeleteOnSubmit(timeslot);
 }
 public void AddTimeSlot(TimeSlot timeslot)
 {
     _conferenceware.TimeSlots.InsertOnSubmit(timeslot);
 }
 /// <summary>
 /// Checks if the times for the timeslot make sense (start time before end, happens during conference)
 /// </summary>
 /// <param name="tsToCreate">The timeslot to check</param>
 /// <param name="modelState">The model state to use when reporting errors</param>
 /// <returns></returns>
 private static bool TimesMakeSense(TimeSlot tsToCreate, ModelStateDictionary modelState)
 {
     var success = true;
     if (tsToCreate.end_time <= tsToCreate.start_time)
     {
         modelState.AddModelError("start_time",
                                  ControllerStrings.
                                  	TimeSlotController_Error_StartBeforeEnd);
         success = false;
     }
     if (!SettingsData.Default.AllowTimeSlotsBeforeStart
         && tsToCreate.start_time < SettingsData.Default.StartDate)
     {
         modelState.AddModelError("start_time",
                                  ControllerStrings.
                                  	TimeSlotController_Error_StartBeforeConferenceStart);
         success = false;
     }
     if (!SettingsData.Default.AllowTimeSlotsAfterEnd
         && tsToCreate.end_time > SettingsData.Default.EndDate)
     {
         modelState.AddModelError("end_time",
                                  ControllerStrings.
                                  	TimeSlotController_Error_EndAfterConferenceEnd);
         success = false;
     }
     return success;
 }
 partial void DeleteTimeSlot(TimeSlot instance);
 partial void UpdateTimeSlot(TimeSlot instance);
 partial void InsertTimeSlot(TimeSlot instance);