public static void SyncEvents(Event pattern, IEnumerable<Event> events, EventList list, EventListManager manager) { Message message = Message.Parse(pattern, "event:sync"); var deleteContext = new SyncEventContext(pattern, events, list, manager); Dispatcher.Dispatch(message, deleteContext); }
protected virtual void Execute(SyncEventContext context) { foreach (Event ev in context.Events) { ev.Attributes = context.Pattern.Attributes; ev.Description = context.Pattern.Description; ev.EndTime = context.Pattern.EndTime; ev.Location = context.Pattern.Location; ev.Name = context.Pattern.Name; ev.ScheduleID = context.Pattern.ScheduleID; ev.StartTime = context.Pattern.StartTime; ev.Title = context.Pattern.Title; ev.Save(); if (context.EventList.ID != context.EventListManager.GetCalendar(ev).ID) { context.EventList.MoveEvent(ev); } PublishUtil.Publishing(ev.GetTargetItem(), true, false); } }