k06a / ABCalendarPicker

Fully configurable iOS calendar UI component with multiple layouts and smooth animations.
MIT License
710 stars 119 forks source link

Cannot add events to the datasource #15

Closed metinsay closed 11 years ago

metinsay commented 11 years ago

I am trying to add events to the datasources and remove the events that are coming from the calender app; but it's just not happening

k06a commented 11 years ago

Are you trying to modify Demo app? How are you trying to add? Show me some modified code...

metinsay commented 11 years ago
- (EKEventStore *)store
{
    _store = nil;
    if (_store == nil)
    {
        _store = [[EKEventStore alloc] init];
        /*if ([EKEventStore authorizationStatusForEntityType:(EKEntityTypeEvent)] != EKAuthorizationStatusAuthorized)
            [_store requestAccessToEntityType:(EKEntityTypeEvent) completion:^(BOOL granted, NSError *error) {
                ;
            }];*/

         _store = [[EKEventStore alloc] init];

        PFQuery *query = [PFQuery queryWithClassName:@"Events"];

        [query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error){
            for (PFObject *eachObject in objects) {

                    NSLog(@"%@",[eachObject objectForKey:@"Date"]);
                    EKEvent *myEvent  = [EKEvent eventWithEventStore:_store];
                    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
                    dateFormatter = [[NSDateFormatter alloc] init];
                    [dateFormatter setDateFormat:@"yyyy-MM-dd hh:mma"];
                    [dateFormatter setTimeZone:[NSTimeZone localTimeZone]];
                    NSString *date = [dateFormatter stringFromDate:[eachObject objectForKey:@"Date"]];

                    myEvent.title     = [eachObject objectForKey:@"events"];
                    myEvent.startDate = [dateFormatter dateFromString:date];
                    myEvent.endDate  = [[NSDate alloc] initWithTimeInterval:0 sinceDate:myEvent.startDate];
                    myEvent.allDay = YES;

                    [myEvent setCalendar:[_store defaultCalendarForNewEvents]];
                    NSError *err;
                    [_store saveEvent:myEvent span:EKSpanThisEvent error:&err];

            }

        }];

    }
    return _store;
}
k06a commented 11 years ago

After saving event:

NSError *err;
[_store saveEvent:myEvent span:EKSpanThisEvent error:&err];

You should check err:

if (err)
    NSLog(@"err = %@", err);

What are you trying to do?