public EventHistoryWrapper Get(EventHistory eventHistory, bool canEdit, bool canNotify, BusinessObjects.Calendar cal, bool fullHistory = true) { var eventHistoryWrapper = new EventHistoryWrapper(); eventHistoryWrapper.CalendarId = eventHistory.CalendarId; eventHistoryWrapper.EventUid = eventHistory.EventUid; eventHistoryWrapper.EventId = eventHistory.EventId; if (fullHistory) { eventHistoryWrapper.Ics = eventHistory.Ics; } else { var mergedCalendar = EventHistoryHelper.GetMerged(EventHistoryHelper.Get(eventHistory.CalendarId, eventHistory.EventId.ToString(), eventHistory.EventId, eventHistory.Ics)); eventHistoryWrapper.MergedIcs = mergedCalendar == null ? string.Empty : DDayICalParser.SerializeCalendar(mergedCalendar); } eventHistoryWrapper.CanEdit = canEdit; eventHistoryWrapper.CanNotify = canNotify; eventHistoryWrapper.CalendarName = cal.Name; eventHistoryWrapper.TimeZoneInfo = TimeZoneWrapperHelper.Get(cal.ViewSettings.Any() && cal.ViewSettings.First().TimeZone != null ? cal.ViewSettings.First().TimeZone : cal.TimeZone); return(eventHistoryWrapper); }
public EventHistoryWrapperHelper( EventHistoryHelper eventHistoryHelper, DDayICalParser dDayICalParser, TimeZoneWrapperHelper timeZoneWrapperHelper) { EventHistoryHelper = eventHistoryHelper; DDayICalParser = dDayICalParser; TimeZoneWrapperHelper = timeZoneWrapperHelper; }