mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-08-19 21:53:19 +00:00
Monotone-Parent: 40480465ce4ec6f36665568ed685c71f37abb04a
Monotone-Revision: 3d47f593fbb200a77cb1c9523f3d158473420274 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2012-02-14T14:58:34 Monotone-Branch: ca.inverse.sogo
This commit is contained in:
@@ -87,6 +87,12 @@ static Class SOGoMailFolderK;
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void) dealloc
|
||||
{
|
||||
[versionsMessage release];
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (void) setupVersionsMessage
|
||||
{
|
||||
ASSIGN (versionsMessage,
|
||||
@@ -94,13 +100,11 @@ static Class SOGoMailFolderK;
|
||||
inContainer: propsFolder]);
|
||||
}
|
||||
|
||||
- (void) dealloc
|
||||
- (BOOL) ensureFolderExists
|
||||
{
|
||||
[versionsMessage release];
|
||||
[super dealloc];
|
||||
return [(SOGoMailFolder *) sogoObject exists] || [sogoObject create];
|
||||
}
|
||||
|
||||
|
||||
- (void) addProperties: (NSDictionary *) newProperties
|
||||
{
|
||||
NSString *newDisplayName;
|
||||
@@ -154,7 +158,10 @@ static Class SOGoMailFolderK;
|
||||
newFolder = [SOGoMailFolderK objectWithName: nameInContainer
|
||||
inContainer: sogoObject];
|
||||
if ([newFolder create])
|
||||
*newKeyP = nameInContainer;
|
||||
{
|
||||
*newKeyP = nameInContainer;
|
||||
rc = MAPISTORE_SUCCESS;
|
||||
}
|
||||
else if ([newFolder exists])
|
||||
rc = MAPISTORE_ERR_EXIST;
|
||||
else
|
||||
@@ -248,23 +255,30 @@ static Class SOGoMailFolderK;
|
||||
NSArray *uidKeys;
|
||||
EOQualifier *fetchQualifier;
|
||||
|
||||
if (!sortOrderings)
|
||||
sortOrderings = [NSArray arrayWithObject: @"ARRIVAL"];
|
||||
|
||||
if (qualifier)
|
||||
if ([self ensureFolderExists])
|
||||
{
|
||||
fetchQualifier
|
||||
= [[EOAndQualifier alloc] initWithQualifiers:
|
||||
[self nonDeletedQualifier], qualifier,
|
||||
nil];
|
||||
[fetchQualifier autorelease];
|
||||
if (!sortOrderings)
|
||||
sortOrderings = [NSArray arrayWithObject: @"ARRIVAL"];
|
||||
|
||||
if (qualifier)
|
||||
{
|
||||
fetchQualifier
|
||||
= [[EOAndQualifier alloc] initWithQualifiers:
|
||||
[self nonDeletedQualifier], qualifier,
|
||||
nil];
|
||||
[fetchQualifier autorelease];
|
||||
}
|
||||
else
|
||||
fetchQualifier = [self nonDeletedQualifier];
|
||||
|
||||
uidKeys = [[sogoObject fetchUIDsMatchingQualifier: fetchQualifier
|
||||
sortOrdering: sortOrderings]
|
||||
stringsWithFormat: @"%@.eml"];
|
||||
}
|
||||
else
|
||||
fetchQualifier = [self nonDeletedQualifier];
|
||||
uidKeys = nil;
|
||||
|
||||
uidKeys = [sogoObject fetchUIDsMatchingQualifier: fetchQualifier
|
||||
sortOrdering: sortOrderings];
|
||||
return [uidKeys stringsWithFormat: @"%@.eml"];
|
||||
return uidKeys;
|
||||
}
|
||||
|
||||
- (NSMutableString *) _imapFolderNameRepresentation: (NSString *) subfolderName
|
||||
@@ -325,15 +339,20 @@ static Class SOGoMailFolderK;
|
||||
{
|
||||
NSMutableArray *subfolderKeys;
|
||||
|
||||
if (qualifier)
|
||||
[self errorWithFormat: @"qualifier is not used for folders"];
|
||||
if (sortOrderings)
|
||||
[self errorWithFormat: @"sort orderings are not used for folders"];
|
||||
if ([self ensureFolderExists])
|
||||
{
|
||||
if (qualifier)
|
||||
[self errorWithFormat: @"qualifier is not used for folders"];
|
||||
if (sortOrderings)
|
||||
[self errorWithFormat: @"sort orderings are not used for folders"];
|
||||
|
||||
subfolderKeys = [[sogoObject toManyRelationshipKeys] mutableCopy];
|
||||
[subfolderKeys autorelease];
|
||||
|
||||
subfolderKeys = [[sogoObject toManyRelationshipKeys] mutableCopy];
|
||||
[subfolderKeys autorelease];
|
||||
|
||||
[self _cleanupSubfolderKeys: subfolderKeys];
|
||||
[self _cleanupSubfolderKeys: subfolderKeys];
|
||||
}
|
||||
else
|
||||
subfolderKeys = nil;
|
||||
|
||||
return subfolderKeys;
|
||||
}
|
||||
@@ -366,6 +385,18 @@ static Class SOGoMailFolderK;
|
||||
return (SOGoFolder *) sogoObject;
|
||||
}
|
||||
|
||||
- (NSArray *) permissionEntries
|
||||
{
|
||||
NSArray *permissionEntries;
|
||||
|
||||
if ([self ensureFolderExists])
|
||||
permissionEntries = [super permissionEntries];
|
||||
else
|
||||
permissionEntries = nil;
|
||||
|
||||
return permissionEntries;
|
||||
}
|
||||
|
||||
/* synchronisation */
|
||||
|
||||
/* Tree:
|
||||
|
||||
Reference in New Issue
Block a user