Monotone-Parent: dd068d80fdd161e81a76e72cc840d7727c8b8f90

Monotone-Revision: f1785f649f5c8ff93247eff842a747a810f90e1c

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2011-07-08T17:23:48
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Wolfgang Sourdeau
2011-07-08 17:23:48 +00:00
parent d9c54acd17
commit 179774e177
3 changed files with 37 additions and 7 deletions
+9
View File
@@ -1,3 +1,12 @@
2011-07-08 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* SoObjects/Mailer/SOGoMailFolder.m
(_fetchMessageProperties:matchingQualifier:andSortOrderings::):
properly implement this method, as properties should be an array
instead of a dictionary.
(-mostRecentMessageDate): new method that returns the date of the
last available message.
2011-07-07 Francis Lachapelle <flachapelle@inverse.ca>
* UI/WebServerResources/UIxListEditor.js (endEditable): when a
+2
View File
@@ -80,6 +80,8 @@
- (NSException *) expunge;
- (NSCalendarDate *) mostRecentMessageDate;
/* flags */
- (NSException *) addFlagsToAllMessages: (id) _f;
+26 -7
View File
@@ -1330,13 +1330,13 @@ static NSString *defaultUserID = @"anyone";
return sortOrderings;
}
- (NSArray *) _fetchMessageProperties: (NSDictionary *) properties
- (NSArray *) _fetchMessageProperties: (NSArray *) properties
matchingQualifier: (EOQualifier *) searchQualifier
andSortOrderings: (NSArray *) sortOrderings
{
NGImap4Client *client;
NSDictionary *response;
NSArray *messages;
NSArray *messages, *values = nil;
NSString *resultKey;
client = [[self imap4Connection] client];
@@ -1355,11 +1355,16 @@ static NSString *defaultUserID = @"anyone";
}
if ([[response objectForKey: @"result"] boolValue])
messages = [response objectForKey: resultKey];
else
messages = nil;
{
messages = [response objectForKey: resultKey];
if ([messages count] > 0)
{
response = [client fetchUids: messages parts: properties];
values = [response objectForKey: @"fetch"];
}
}
return messages;
return values;
}
- (NSArray *) _davPropstatsWithProperties: (NSArray *) davProperties
@@ -1524,7 +1529,7 @@ static NSString *defaultUserID = @"anyone";
inNamespace: XMLNS_INVERSEDAV];
sortOrderings = [self _sortOrderingsFromSortElement: sortElement];
messages = [self _fetchMessageProperties: properties
messages = [self _fetchMessageProperties: [properties allKeys]
matchingQualifier: searchQualifier
andSortOrderings: sortOrderings];
[self _appendProperties: [properties allKeys]
@@ -1603,6 +1608,20 @@ static NSString *defaultUserID = @"anyone";
return response;
}
- (NSCalendarDate *) mostRecentMessageDate
{
NSArray *values;
NSCalendarDate *date = nil;
values = [self _fetchMessageProperties: [NSArray arrayWithObject: @"ENVELOPE"]
matchingQualifier: nil
andSortOrderings: [NSArray arrayWithObject: @"REVERSE DATE"]];
if ([values count] > 0)
date = [[[values objectAtIndex: 0] objectForKey: @"envelope"] date];
return date;
}
@end /* SOGoMailFolder */
@implementation SOGoSpecialMailFolder