// GET: InterviewManager public ActionResult Index() { var rep = new EWSIntegrationClient(); var model = new AppointmentManager { Events = new List<EventObject>()}; return View(model); }
private async Task<AppointmentManager> CreateModel(List<string> users, string start, string end) { var request = new AvailabilityRequest { DurationMinutes = 60, Start = DateTime.Parse(start).ToString(), End = DateTime.Parse(end).ToString(), Users = users == null ? new List<string>() : users }; var result = await _client.GetAvailability(request); var obj = result.AvailabilityResult; int i = 0; // Part of a hack. for this demo we only expect <=5 users. var colorIndex = 0; var list = new List<EventObject>(); foreach (var avai in result.AvailabilityResult) { var color = _colors[(i == _colors.Count) ? colorIndex = 0 : colorIndex++]; foreach (var block in avai.Availability) { var eventObject = new EventObject { title = "Interviewer " + i + " Status: " + block.Status, start = block.Start.ToString("o"), end = block.End.ToString("o"), allDay = false, backgroundColor = color }; list.Add(eventObject); } i++; } var model = new AppointmentManager { Events = list }; return model; }