Example #1
0
 public EPEntry(EPUser user, EPCalendar calendar, int priority)
 {
     User = user;
     Calendar = calendar;
     EntryKey = Guid.NewGuid().ToString();
     Priority = priority;
 }
 public void CreateUser(string username)
 {
     using (var db = new EPContext()) {
         var newUser = new EPUser();
         newUser.Username = username;
         db.Users.Add(newUser);
         var newCalendar = new EPCalendar();
         newCalendar.Name = "Main$" + username + Guid.NewGuid().ToString();
         var newEntry = new EPEntry(newUser, newCalendar, 0);
         newUser.Calendars.Add(newEntry);
         newCalendar.Entryes.Add(newEntry);
         db.SaveChanges();
     }
 }
 public EPCalendar FreeTimeCalendar(List<EPEntry> calendars, EPUser user, int groupIndex)
 {
     calendars.Sort((p, r) => p.Priority - r.Priority);
     EPCalendar tempCal = new EPCalendar();
     tempCal.Entryes.Add(new EPEntry(user,tempCal,0));
     using (var db = new EPContext()) {
         for(int i = 0; i<groupIndex; i++)
         {
             var cal = calendars[i];
             db.Entryes.Attach(cal);
             db.Entry(cal).Reference(p => p.Calendar).Load();
             db.Entry(cal.Calendar).Collection(p => p.Events).Load();
             tempCal.Events.AddRange(cal.Calendar.Events);
         }
     }
     tempCal.Events.ForEach(p => p.Summary = "Bussy");
     return tempCal;
 }