public static List <CalendarEvent> MapCoursesToEvents(IEnumerable <CourseParticipant> courseParticipants) { var returnVar = new List <CalendarEvent>(); foreach (var cp in courseParticipants) { var course = cp.Course; CalendarEvent courseEvt = new CalendarEvent { Class = "PUBLIC", Created = new CalDateTime(course.CreatedUtc), LastModified = new CalDateTime(course.CourseDatesLastModified), Sequence = course.Version, //pending fix Transparency = TransparencyType.Opaque, Status = course.Cancelled ? EventStatus.Cancelled : EventStatus.Confirmed, Uid = "course" + course.Id.ToString(), Priority = 5, Location = course.Room.ShortDescription, Summary = course.Department.Abbreviation + " " + course.CourseFormat.CourseType.Abbreviation, IsAllDay = false, Description = course.Department.Name + " " + course.CourseFormat.CourseType.Description + (cp.IsFaculty?" [Faculty]":" [Participant]"), GeographicLocation = GetGeoLocation(course) //DtStamp = - this is being inserted }; //now add aditional days foreach (var cd in course.AllDays().Take(course.CourseFormat.DaysDuration)) { var dayEvt = cd.Day < course.CourseFormat.DaysDuration ? courseEvt.Copy <CalendarEvent>() : courseEvt; dayEvt.Start = new CalDateTime(cp.IsFaculty?cd.StartFacultyUtc:cd.StartParticipantUtc()); dayEvt.Duration = TimeSpan.FromMinutes(cp.IsFaculty ? cd.DurationFacultyMins: cd.DurationParticipantMins); if (course.CourseFormat.DaysDuration > 1) { string dayNo = $" (day {cd.Day})"; dayEvt.Summary += dayNo; dayEvt.Description += dayNo; } if (cd.Day == 1) { dayEvt.Alarms.Add(new Alarm { Action = AlarmAction.Display, Summary = course.Department.Abbreviation + ' ' + course.CourseFormat.CourseType.Abbreviation, Trigger = new Trigger(TimeSpan.FromHours(-24)) }); } returnVar.Add(dayEvt); } } return(returnVar); }
public CalendarEventForm(CalendarEvent ce, Calendar calendar) { this.InitializeComponent(); this.fEvent = ce.Copy(); this.fCalendar = calendar; foreach (MonthInfo month in this.fCalendar.Months) { this.MonthBox.Items.Add(month); } this.NameBox.Text = this.fEvent.Name; this.DayBox.Value = this.fEvent.DayIndex + 1; MonthInfo monthInfo = this.fCalendar.FindMonth(this.fEvent.MonthID); this.MonthBox.SelectedItem = monthInfo; }
public CalendarEventForm(CalendarEvent ce, Calendar calendar) { InitializeComponent(); fEvent = ce.Copy(); fCalendar = calendar; foreach (MonthInfo mi in fCalendar.Months) { MonthBox.Items.Add(mi); } NameBox.Text = fEvent.Name; DayBox.Value = fEvent.DayIndex + 1; MonthInfo month = fCalendar.FindMonth(fEvent.MonthID); MonthBox.SelectedItem = month; }