feat(eas): Allow EAS Search operation in all parts of a message
parent
b9e19c2cc4
commit
fab8061766
|
@ -3093,7 +3093,7 @@ void handle_eas_terminate(int signum)
|
|||
andElement = [(id)[theDocumentElement getElementsByTagName: @"And"] lastObject];
|
||||
if (andElement)
|
||||
{
|
||||
EOQualifier *subjectQualifier, *senderQualifier, *fetchQualifier, *notDeleted, *greaterThanQualifier, *orQualifier;
|
||||
EOQualifier *subjectQualifier, *senderQualifier, *fetchQualifier, *notDeleted, *greaterThanQualifier, *searchQualifier;
|
||||
NSString *query;
|
||||
id o;
|
||||
|
||||
|
@ -3115,12 +3115,16 @@ void handle_eas_terminate(int signum)
|
|||
}
|
||||
|
||||
notDeleted = [EOQualifier qualifierWithQualifierFormat: @"(not (flags = %@))", @"deleted"];
|
||||
subjectQualifier = [EOQualifier qualifierWithQualifierFormat: [NSString stringWithFormat: @"(%@ doesContain: '%@')", @"subject", query]];
|
||||
senderQualifier = [EOQualifier qualifierWithQualifierFormat: [NSString stringWithFormat: @"(%@ doesContain: '%@')", @"from", query]];
|
||||
|
||||
orQualifier = [[EOOrQualifier alloc] initWithQualifiers: subjectQualifier, senderQualifier, nil];
|
||||
if ([[SOGoSystemDefaults sharedSystemDefaults] easSearchInBody]) {
|
||||
searchQualifier = [EOQualifier qualifierWithQualifierFormat: [NSString stringWithFormat: @"(%@ doesContain: '%@')", @"text", query]];
|
||||
} else {
|
||||
subjectQualifier = [EOQualifier qualifierWithQualifierFormat: [NSString stringWithFormat: @"(%@ doesContain: '%@')", @"subject", query]];
|
||||
senderQualifier = [EOQualifier qualifierWithQualifierFormat: [NSString stringWithFormat: @"(%@ doesContain: '%@')", @"from", query]];
|
||||
searchQualifier = [[EOOrQualifier alloc] initWithQualifiers: subjectQualifier, senderQualifier, nil];
|
||||
}
|
||||
|
||||
fetchQualifier = [[EOAndQualifier alloc] initWithQualifiers: notDeleted, orQualifier, greaterThanQualifier, nil];
|
||||
fetchQualifier = [[EOAndQualifier alloc] initWithQualifiers: notDeleted, searchQualifier, greaterThanQualifier, nil];
|
||||
|
||||
return [fetchQualifier autorelease];
|
||||
}
|
||||
|
|
|
@ -2855,6 +2855,11 @@ Defaults to `NO`, which means no logging is performed.
|
|||
for EAS Search operations in the GAL.
|
||||
|
||||
If not set, it defaults to `102400` bytes, or 100 KB.
|
||||
|
||||
|S |SOGoEASSearchInBody
|
||||
|Parameter used to enable EAS Search operation in all parts of a message.
|
||||
|
||||
Defaults to `NO`, which means to search only in Subject- and From-header.
|
||||
|=======================================================================
|
||||
|
||||
Please be aware of the following limitations:
|
||||
|
|
|
@ -112,6 +112,7 @@
|
|||
- (int) maximumSyncWindowSize;
|
||||
- (int) maximumSyncResponseSize;
|
||||
- (int) maximumPictureSize;
|
||||
- (BOOL) easSearchInBody;
|
||||
|
||||
@end
|
||||
|
||||
|
|
|
@ -730,6 +730,11 @@ _injectConfigurationFromFile (NSMutableDictionary *defaultsDict,
|
|||
return v;
|
||||
}
|
||||
|
||||
- (BOOL) easSearchInBody
|
||||
{
|
||||
return [self boolForKey: @"SOGoEASSearchInBody"];
|
||||
}
|
||||
|
||||
//
|
||||
// See https://msdn.microsoft.com/en-us/library/gg672032(v=exchg.80).aspx
|
||||
//
|
||||
|
|
Loading…
Reference in New Issue