diff --git a/ChangeLog b/ChangeLog index afebfbd98..4f687a21c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2006-10-16 Wolfgang Sourdeau + * SoObjects/Appointments/SOGoAppointmentFolder.m + ([SOGoAppointmentFolder -deleteEntriesWithIds:ids]): don't delete + entries if their owner is not the current user. + * UI/Scheduler/UIxCalInlineAptView.m ([UIxCalInlineAptView -displayClasses]): return the correct class for the current event representation depending on its owner. diff --git a/SoObjects/Appointments/SOGoAppointmentFolder.m b/SoObjects/Appointments/SOGoAppointmentFolder.m index dd3129b09..ef867055b 100644 --- a/SoObjects/Appointments/SOGoAppointmentFolder.m +++ b/SoObjects/Appointments/SOGoAppointmentFolder.m @@ -730,9 +730,13 @@ static NSNumber *sharedYes = nil; { Class objectClass; unsigned int count, max; - NSString *currentId; + NSString *currentId, *currentUser; + WOContext *context; id deleteObject; + context = [[WOApplication application] context]; + currentUser = [[context activeUser] login]; + max = [ids count]; for (count = 0; count < max; count++) { @@ -741,8 +745,11 @@ static NSNumber *sharedYes = nil; = [self objectClassForResourceNamed: currentId]; deleteObject = [objectClass objectWithName: currentId inContainer: self]; - [deleteObject delete]; - [deleteObject primaryDelete]; + if ([currentUser isEqualToString: [deleteObject ownerInContext: nil]]) + { + [deleteObject delete]; + [deleteObject primaryDelete]; + } } }