diff --git a/ChangeLog b/ChangeLog index c08a92df7..20bbc5ddb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-11-19 Wolfgang Sourdeau + + * UI/MailPartViewers/UIxMailPartICalActions.m + ([UIxMailPartICalActions -deleteFromCalendarAction]): actually + delete the found object. + 2007-11-18 Ludovic Marcotte * SoObjects/Mailer/SOGoMailBodyPart.m diff --git a/UI/MailPartViewers/UIxMailPartICalActions.m b/UI/MailPartViewers/UIxMailPartICalActions.m index e51f518cf..e695de0df 100644 --- a/UI/MailPartViewers/UIxMailPartICalActions.m +++ b/UI/MailPartViewers/UIxMailPartICalActions.m @@ -67,11 +67,21 @@ { SOGoAppointmentFolder *personalFolder; SOGoAppointmentObject *eventObject; + NSString *cname; + + eventObject = nil; personalFolder = [user personalCalendarFolderInContext: context]; - eventObject = [personalFolder lookupName: uid - inContext: context acquire: NO]; - if (![eventObject isKindOfClass: [SOGoAppointmentObject class]]) + cname = [personalFolder resourceNameForEventUID: uid]; + if (cname) + { + eventObject = [personalFolder lookupName: cname + inContext: context acquire: NO]; + if (![eventObject isKindOfClass: [SOGoAppointmentObject class]]) + eventObject = nil; + } + + if (!eventObject) eventObject = [SOGoAppointmentObject objectWithName: uid inContainer: personalFolder]; @@ -96,7 +106,8 @@ chosenEvent = emailEvent; else { - calendarEvent = (iCalEvent *) [*eventObject component: NO secure: NO]; + calendarEvent = (iCalEvent *) [*eventObject component: NO + secure: NO]; if ([calendarEvent compare: emailEvent] == NSOrderedAscending) chosenEvent = emailEvent; else @@ -199,6 +210,7 @@ if (emailEvent) { eventObject = [self _eventObjectWithUID: [emailEvent uid]]; + [eventObject delete]; response = [self responseWith204]; } else diff --git a/UI/MailPartViewers/product.plist b/UI/MailPartViewers/product.plist index ddf40447a..cdf98f67b 100644 --- a/UI/MailPartViewers/product.plist +++ b/UI/MailPartViewers/product.plist @@ -37,7 +37,7 @@ }; */ deleteFromCalendar = { protectedBy = "View"; - actionClass = "UIxMailPartICalAction"; + actionClass = "UIxMailPartICalActions"; actionName = "deleteFromCalendar"; }; };