From 2380691c71ca9b6ee798c680b7dc3c0069da3e78 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Mon, 16 Oct 2006 22:30:47 +0000 Subject: [PATCH] Monotone-Parent: 4b3e779fea77f240e47bc50eb2b081a68379e9d7 Monotone-Revision: fa2db8adc03dd0adbd001a03cd74271b07fb41fe Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2006-10-16T22:30:47 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 4 ++++ SoObjects/Appointments/SOGoAppointmentFolder.m | 13 ++++++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) 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]; + } } }