Update WORequest+SOGo.m

pull/115/head
ethoms 2015-11-05 10:22:11 +08:00
parent 440a86d3f2
commit 30488f4f6d
1 changed files with 15 additions and 21 deletions

View File

@ -172,34 +172,28 @@
// Mac OS X/10.8.1 (12B19) AddressBook/1143
// Mac OS X/10.8.2 (12C60) AddressBook/1167
//
- (BOOL) isMacOSXAddressBookApp
{
WEClientCapabilities *cc;
BOOL b;
BOOL isMacOSX_AB, hasAddressBook, hasCFNetwork, isMacOSX10_6_le, isMacOSX10_7, isMacOSX10_8_ge;
cc = [self clientCapabilities];
b = (
(
(
[[cc userAgent] rangeOfString: @"CFNetwork"].location != NSNotFound
&& [[cc userAgent] rangeOfString: @"Darwin"].location != NSNotFound
)
||
(
[[cc userAgent] rangeOfString: @"CFNetwork"].location != NSNotFound
&&
(
[[cc userAgent] rangeOfString: @"Mac OS X"].location != NSNotFound
||
[[cc userAgent] rangeOfString: @"Mac_OS_X"].location != NSNotFound
)
)
)
&& [[cc userAgent] rangeOfString: @"AddressBook"].location != NSNotFound
);
hasAddressBook = ( [[cc userAgent] rangeOfString: @"AddressBook"].location != NSNotFound \
|| [[cc userAgent] rangeOfString: @"Address%20Book"].location != NSNotFound );
hasCFNetwork = [[cc userAgent] rangeOfString: @"CFNetwork"].location != NSNotFound;
return b;
// note that 'le' signifies less than or equal, 'ge' signifies greater than or equal
// these are only assumed from the user agent strings we currently know.
isMacOSX10_6_le = ( hasAddressBook && hasCFNetwork && [[cc userAgent] rangeOfString: @"Darwin"].location != NSNotFound );
isMacOSX10_7 = ( hasAddressBook && hasCFNetwork && [[cc userAgent] rangeOfString: @"Mac_OS_X"].location != NSNotFound );
isMacOSX10_8_ge = ( hasAddressBook && [[cc userAgent] rangeOfString: @"Mac OS X"].location != NSNotFound );
isMacOSX_AB = ( isMacOSX10_6_le || isMacOSX10_7 || isMacOSX10_8_ge);
return isMacOSX_AB;
}
- (BOOL) isIPhoneAddressBookApp