예제 #1
0
        public override IEnumerable <Item> Perform(IEnumerable <Item> items, IEnumerable <Item> modifierItems)
        {
            GCalendarItem cal       = modifierItems.First() as GCalendarItem;
            string        eventData = (items.First() as ITextItem).Text;

            yield return(GCalendarEventItem.NewEvent(cal, eventData));
        }
예제 #2
0
        public GCalendarEventItem NewEvent(GCalendarItem calendar, string data)
        {
            EventEntry         entry;
            GCalendarEventItem newEvent;
            string             url, desc, title, start;

            url = desc = title = start = "";

            entry                 = new EventEntry();
            entry.QuickAdd        = true;
            entry.Content.Content = data;

            try {
                entry = service.Insert(new Uri(calendar.Url), entry);

                title = entry.Title.Text;
                desc  = entry.Content.Content;
                url   = entry.AlternateUri.Content;

                if (entry.Times.Any())
                {
                    start = entry.Times[0].StartTime.ToShortDateString();
                    desc  = start + " - " + desc;
                }
            } catch (WebException e) {
                Log.Error(ErrorInMethod, "NewEvent", e.Message);
                Log.Debug(e.StackTrace);

                return(null);
            }

            newEvent = new GCalendarEventItem(title, url, desc);
            events [calendar].Add(newEvent);

            return(newEvent);
        }