mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-07-07 01:15:09 +00:00
See ChangeLog
Monotone-Parent: 1fc6240dbb88ca9e470be6d2679ee8e3e10e4f4f Monotone-Revision: b9443420fc607bc2c0d8c6a5cff48fda3c68f7e6 Monotone-Author: ludovic@Sophos.ca Monotone-Date: 2008-11-26T16:26:32 Monotone-Branch: ca.inverse.sogo
This commit is contained in:
@@ -292,16 +292,41 @@
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// This method needs to carefully handle the following cases :
|
||||
//
|
||||
// A- Alice creates an event in her calendar
|
||||
// B- Alice creates an event in Bob's calendar (and invites herself or not)
|
||||
// C- Alice moves an event to an other calendar
|
||||
//
|
||||
- (id <WOActionResults>) saveAction
|
||||
{
|
||||
SOGoAppointmentFolder *thisFolder;
|
||||
SOGoAppointmentObject *co;
|
||||
SoSecurityManager *sm;
|
||||
NSException *ex;
|
||||
NSString *aOwner;
|
||||
|
||||
// See A.
|
||||
co = [self clientObject];
|
||||
|
||||
if (componentCalendar)
|
||||
{
|
||||
aOwner = [componentCalendar ownerInContext: context];
|
||||
|
||||
// See B.
|
||||
if (![aOwner isEqualToString: [[context activeUser] login]])
|
||||
{
|
||||
co = [componentCalendar lookupName: [co nameInContainer]
|
||||
inContext: context
|
||||
acquire: NO];
|
||||
}
|
||||
}
|
||||
|
||||
// We save the component
|
||||
[co saveComponent: event];
|
||||
|
||||
// See C.
|
||||
if (componentCalendar)
|
||||
{
|
||||
sm = [SoSecurityManager sharedSecurityManager];
|
||||
|
||||
Reference in New Issue
Block a user