Advertisement
Guest User

Untitled

a guest
Feb 27th, 2017
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.19 KB | None | 0 0
  1. class DailyPlanTest : DayPilotCalendar
  2.         {
  3.             CalendarContext dc = new CalendarContext();
  4.             private int EventsCount;
  5.             private class HeaderHelper
  6.             {
  7.                 public int ID;
  8.                 public DateTime Start;
  9.                 public DateTime End;
  10.             }
  11.  
  12.             private HeaderHelper GetHeader(int id)
  13.             {
  14.                 List<HeaderHelper> temp = GetHeaders();
  15.                 HeaderHelper header = temp.Find(x => x.ID == id);
  16.                 return header;
  17.             }
  18.  
  19.             private List<HeaderHelper> GetHeaders()
  20.             {
  21.                 List<HeaderHelper> headers = new List<HeaderHelper>();
  22.                 List<CalendarEventViewModel> temp = GetEvents();
  23.                 for(int i = 0; i < temp.Count; i++)
  24.                 {
  25.                     headers.Add(new HeaderHelper { ID = i + 1, Start = temp[i].Start, End = temp[i].End });
  26.                 }
  27.                 return headers;
  28.             }
  29.  
  30.             private List<CalendarEventViewModel> GetEvents()
  31.             {
  32.                 List<CalendarEventViewModel> temp = (from e in dc.Events
  33.                                                     where !((e.End <= VisibleStart) || (e.Start >= VisibleEnd)) && e.Aktywny == true
  34.                                                     orderby e.Start
  35.                                                     select new CalendarEventViewModel
  36.                                                     {
  37.                                                         EventID = e.EventID,
  38.                                                         Start = e.Start,
  39.                                                         End = e.End,
  40.                                                         Email = e.Email,
  41.                                                         IloscOsob = e.IloscOsob,
  42.                                                         RealIloscOsob = e.RealIloscOsob,
  43.                                                         Osoba = e.Osoba,
  44.                                                         Telefon = e.Telefon
  45.                                                     }).ToList();
  46.                 return temp;
  47.             }
  48.             protected override void OnInit(InitArgs e)
  49.             {
  50.                 EventsCount = GetEvents().Count;
  51.                 DayBeginsHour = 1;
  52.                 DayEndsHour = EventsCount;                
  53.                 Update(CallBackUpdateType.Full);
  54.             }
  55.  
  56.             protected override void OnFinish()
  57.             {
  58.                 if (UpdateType == CallBackUpdateType.None)
  59.                 {
  60.                     return;
  61.                 }
  62.  
  63.                 DataIdField = "EventID";
  64.                 DataStartField = "Start";
  65.                 DataEndField = "End";
  66.                 DataTextField = "Opis";
  67.  
  68.                 Events = GetEvents().AsEnumerable();
  69.             }
  70.  
  71.             protected override void OnCommand(CommandArgs e)
  72.             {
  73.                 switch (e.Command)
  74.                 {
  75.                     case "refresh":
  76.                         Update(CallBackUpdateType.Full);
  77.                         break;
  78.                     case "refreshSingle":
  79.                         Update(CallBackUpdateType.EventsOnly);
  80.                         break;
  81.                     case "navigate":
  82.                         StartDate = (DateTime)e.Data["day"];
  83.                         DayEndsHour = GetEvents().Count;
  84.                         Update(CallBackUpdateType.Full);
  85.                         break;
  86.                 }
  87.             }
  88.             protected override void OnBeforeTimeHeaderRender(BeforeTimeHeaderRenderArgs e)
  89.             {
  90.                 int id = e.Start.Hours;
  91.                 HeaderHelper temp = GetHeader(id);
  92.                 if (temp != null)
  93.                 {
  94.                     e.Html = String.Format("{0}<br/>{1}", DayPilot.Web.Mvc.Utils.TimeFormatter.GetHourMinutes(temp.Start, TimeFormat.Clock24Hours), DayPilot.Web.Mvc.Utils.TimeFormatter.GetHourMinutes(temp.End,TimeFormat.Clock24Hours));
  95.                 }
  96.                 else
  97.                 {
  98.                     e.Html = "Unknown Block.";
  99.                 }
  100.             }
  101.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement