Exemplo n.º 1
0
        public ActionResult CreateWeekClasses(WeekGymClass weekGymClasses)
        {
            List <GymClass> newClasses = new List <GymClass>(0);

            foreach (var cl in weekGymClasses.WeekClasses)
            {
                if (cl.IsEditable)
                {
                    newClasses.Add(cl.ToModel());
                }
            }
            db.GymClass.AddRange(newClasses);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemplo n.º 2
0
        public ActionResult CreateWeekClasses(int nWeek = 0)
        {
            WeekGymClass wgc = new WeekGymClass();

            wgc.SelectedWeek = nWeek;
            wgc.FutureWeeks  = new List <SelectListItem>(4);
            DateTime now             = DateTime.Now.Date;
            int      daysUntilMonday = ((int)DayOfWeek.Monday - (int)now.DayOfWeek + 7) % 7;

            for (int i = 0; i < 4; i++)
            {
                SelectListItem weekItem = new SelectListItem();
                weekItem.Value    = i.ToString();
                weekItem.Text     = now.AddDays(daysUntilMonday + i * 7).ToShortDateString();
                weekItem.Selected = (nWeek == i);
                wgc.FutureWeeks.Add(weekItem);
            }
            wgc.WeekClasses = new List <ClassDetail>();
            foreach (var clt in db.GymClassTypes.OrderBy(ct => ct.ClassTime).OrderBy(ct => ct.DayOfTheWeek).ToList())
            {
                ClassDetail cl = new ClassDetail();
                cl.Description      = clt.Description;
                cl.GymClassTypeId   = clt.GymClassTypeId;
                cl.GymClassTypeName = clt.Name;
                cl.MaxCapacity      = clt.MaxCapacity;
                cl.MaxWaitList      = clt.MaxWaitList;
                int      daysUntilClassDay = ((int)clt.DayOfTheWeek - (int)now.DayOfWeek + 7) % 7;
                string[] hms = clt.ClassTime.Split(':');
                cl.ClassDateTime = now.AddDays(daysUntilClassDay + 7 * nWeek).AddHours(int.Parse(hms[0])).AddMinutes(int.Parse(hms[1]));

                cl.ClassTime  = clt.ClassTime;
                cl.ClassDate  = cl.ClassDateTime.ToString("dddd dd MMM");
                cl.IsEditable = true;
                wgc.WeekClasses.Add(cl);
            }
            return(View(wgc));
        }