public void DelSubjects(int w, int d)
        {
            ScheduleContext sc  = new ScheduleContext();
            ScheduleView    scv = sc.GetSchedule(User.Identity.Name);

            scv.Weeks[w].Days[d].Subjects.Clear();
            sc.AddSubject(scv, User.Identity.Name);
        }
 public ActionResult ChanSubject(Subject sub, int d, int w, int s)
 {
     if (ModelState.IsValid)
     {
         ScheduleContext sc  = new ScheduleContext();
         ScheduleView    scv = sc.GetSchedule(User.Identity.Name);
         sub.TimeStart = sub.TimeStart.ToUniversalTime();
         sub.TimeEnd   = sub.TimeEnd.ToUniversalTime();
         scv.Weeks[w].Days[d].Subjects[s] = sub;
         sc.AddSubject(scv, User.Identity.Name);
         return(RedirectToAction("Index", "Home"));
     }
     ModelState.AddModelError("", "Что-то пошло не так");
     return(RedirectToAction("Index", "Home"));
 }
 public ActionResult AddSubject(Day model, string[] check, string[] dayweek)
 {
     if (ModelState.IsValid)
     {
         Subject         sub = model.Subjects[0];
         ScheduleContext sc  = new ScheduleContext();
         ScheduleView    scv = sc.GetSchedule(User.Identity.Name);
         for (int i = 0, j = 0; i < scv.Weeks.Count; i++)
         {
             if ((j < check.Length) && (scv.Weeks[i].WeekNum.Equals(check[j])))
             {
                 for (int k = 0; k < dayweek.Length; k++)
                 {
                     var n = Convert.ToInt32(dayweek[k]);
                     if (scv.Weeks[i].Days[n].Subjects == null)
                     {
                         scv.Weeks[i].Days[n].Subjects = new List <Subject>();
                     }
                     DateTime ts = new DateTime(scv.Weeks[i].Days[n].Date.Year, scv.Weeks[i].Days[n].Date.Month, scv.Weeks[i].Days[n].Date.Day, sub.TimeStart.Hour, sub.TimeStart.Minute, sub.TimeStart.Second);
                     sub.TimeStart = ts;
                     DateTime te = new DateTime(scv.Weeks[i].Days[n].Date.Year, scv.Weeks[i].Days[n].Date.Month, scv.Weeks[i].Days[n].Date.Day, sub.TimeEnd.Hour, sub.TimeEnd.Minute, sub.TimeEnd.Second);
                     sub.TimeEnd = te;
                     if (scv.Weeks[i].Days[n].Celebr)
                     {
                         sub.Cancel = true;
                     }
                     else
                     {
                         sub.Cancel = false;
                     }
                     scv.Weeks[i].Days[n].Subjects.Add(sub);
                     j++;
                 }
                 ;
             }
             ;
         }
         ;
         sc.AddSubject(scv, User.Identity.Name);
         return(RedirectToAction("Index", "Home"));
     }
     ModelState.AddModelError("", "Что-то пошло не так");
     return(RedirectToAction("Index", "Home"));
 }