Ejemplo n.º 1
0
        public ScheduleInfo Schedule(DateTime date, int?userId = null)
        {
            bool newUser = RModel.IsFirstTime(userId);
            IList <TimeslotJson> timeslots = RModel.GetTimeslots(date, newUser);
            string customerMessage;

            BlockedPeriod blocked = RModel.FindBlockedPeriodByDate(date);

            if (blocked == null)
            {
                customerMessage = null;
            }
            else
            {
                customerMessage = blocked.CustomerMessage;
            }

            var data = new ScheduleInfo {
                PreviousDay     = timeManager.PreviousDay(date),
                NextDay         = timeManager.NextDay(date),
                CustomerMessage = customerMessage,
                Timeslots       = timeslots
            };

            return(data);
        }
Ejemplo n.º 2
0
        public IActionResult DeleteBlock(int id)
        {
            if (!sessMan.IsAdmin())
            {
                return(RedirectToAction("Main", "Page"));
            }
            BlockedPeriod blockedPeriod = RModel.GetBlockedPeriodById(id);

            RModel.DeleteBlockedPeriod(blockedPeriod);

            return(RedirectToAction("BlockedOverview", "Reservation"));
        }
Ejemplo n.º 3
0
        public IActionResult BlockPeriod(DateTime startDate, DateTime endDate, TimeSpan startTime, TimeSpan endTime, string description, string customerMessage)
        {
            if (!sessMan.IsAdmin())
            {
                return(RedirectToAction("Main", "Page"));
            }

            DateTime start = startDate.Date + startTime;
            DateTime end   = endDate.Date + endTime;

            BlockViewModel pageVM = new BlockViewModel {
                Pages       = PModel.GetMenu(),
                CurrentPage = new Page {
                    InternalName = "BlockPeriod",
                    DisplayName  = "Periode Blokkeren"
                },
                Dynamic = false,
                Today   = timeManager.Today().Date
            };

            if (!RModel.IsChronological(start, end))
            {
                pageVM.Error = 2;
                return(View(pageVM));
            }
            else if (RModel.DoesPeriodContainReservations(start, end))
            {
                pageVM.Error = 1;
                return(View(pageVM));
            }
            else
            {
                BlockedPeriod blockedPeriod = RModel.MakeBlockedPeriod(start, end, description, customerMessage);
                RModel.AddBlockedPeriod(blockedPeriod);
                return(RedirectToAction("BlockedOverview", "Reservation"));
            }
        }
Ejemplo n.º 4
0
 public void AddBlockedPeriod(BlockedPeriod blockedPeriod)
 {
     BlockedPeriods.Add(blockedPeriod);
     BlockedPeriods.SaveChanges();
 }
Ejemplo n.º 5
0
 public void DeleteBlockedPeriod(BlockedPeriod blockedPeriod)
 {
     BlockedPeriods.Delete(blockedPeriod);
     BlockedPeriods.SaveChanges();
 }