
Untitled
By: a guest on
Jul 15th, 2012 | syntax:
None | size: 1.46 KB | hits: 16 | expires: Never
// Surely there has to be a way to hook into the create....({}) call ?
-(NSDictionary *)saveEvent:(id)obj
{
EKEventStore *eventStore = [[[EKEventStore alloc] init] autorelease];
EKEvent *_event = [EKEvent eventWithEventStore:eventStore];
//EKRecurrenceEnd *count = [self valueForUndefinedKey:@"recurrenceCount"];
EKRecurrenceEnd *end = [EKRecurrenceEnd recurrenceEndWithOccurrenceCount:4];
EKRecurrenceRule *rule = [[EKRecurrenceRule alloc]
initRecurrenceWithFrequency:EKRecurrenceFrequencyWeekly
interval:1
end:end];
_event.recurrenceRule = rule;
_event.title = [self valueForUndefinedKey:@"title"];
_event.startDate = [self valueForUndefinedKey:@"sdate"];
_event.location = [self valueForUndefinedKey:@"location"];
_event.endDate = [self valueForUndefinedKey:@"edate"];
if ([self valueForUndefinedKey:@"edate"] == nil) {
_event.endDate = [[[NSDate alloc] initWithTimeInterval:1200 sinceDate:_event.startDate] autorelease];
}
[_event setCalendar:[eventStore defaultCalendarForNewEvents]];
NSError *err = nil;
[eventStore saveEvent:_event span:EKSpanThisEvent error:&err];
BOOL status = (err == nil) ? TRUE : FALSE;
NSString *errStr = (err != nil) ? [err localizedDescription] : @"none";
NSDictionary *tmp = [[[NSDictionary alloc] initWithObjectsAndKeys: errStr, @"error",
NUMBOOL(status), @"status",
_event.eventIdentifier, @"eventId",
nil] autorelease];
return tmp;
}