From 2037ff8a6b491a0fab2d122a9d8e1c322e3cebff Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 21 Aug 2012 20:37:50 +0000 Subject: [PATCH] Monotone-Parent: e70a6a4e35fcf0aacec5ec5ef392c0c8e6bb4e31 Monotone-Revision: 289c3552a8d15a19943bfe3a54272bf413087c4f Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2012-08-21T20:37:50 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 5 +++ OpenChange/MAPIStoreContactsMessage.m | 52 ++++++++++++++++++++++++--- 2 files changed, 53 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index fecff2fe7..6039c337c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2012-08-21 Wolfgang Sourdeau + * OpenChange/MAPIStoreContactsMessage.m + (-getPidTagAlternateRecipientAllowed:inMemCtx:) + (-getPidTagMessageFlags:inMemCtx:) + (-getPidTagDeleteAfterSubmit:inMemCtx:): new getters. + * OpenChange/MAPIStoreGCSFolder.m (-setChangeKey:forMessageWithKey:): removed useless method. (-updateVersionsForMessageWithKey:withChangeKey:): set the change diff --git a/OpenChange/MAPIStoreContactsMessage.m b/OpenChange/MAPIStoreContactsMessage.m index 3097367c0..c02eb8cbd 100644 --- a/OpenChange/MAPIStoreContactsMessage.m +++ b/OpenChange/MAPIStoreContactsMessage.m @@ -110,6 +110,28 @@ return MAPISTORE_SUCCESS; } +- (int) getPidTagAlternateRecipientAllowed: (void **) data + inMemCtx: (TALLOC_CTX *) memCtx + +{ + return [self getYes: data inMemCtx: memCtx]; +} + +- (int) getPidTagMessageFlags: (void **) data + inMemCtx: (TALLOC_CTX *) memCtx +{ + *data = MAPILongValue (memCtx, MSGFLAG_READ); + + return MAPISTORE_SUCCESS; +} + +- (int) getPidTagDeleteAfterSubmit: (void **) data + inMemCtx: (TALLOC_CTX *) memCtx + +{ + return [self getNo: data inMemCtx: memCtx]; +} + - (int) getPidTagMessageClass: (void **) data inMemCtx: (TALLOC_CTX *) memCtx { @@ -189,13 +211,34 @@ - (int) getPidLidFileUnder: (void **) data inMemCtx: (TALLOC_CTX *) memCtx { - return [self getPidTagDisplayName: data inMemCtx: memCtx]; + NSString *surName, *givenName, *middleName; + NSMutableString *fileUnder; + CardElement *n; + + n = [[sogoObject vCard] n]; + surName = [n flattenedValueAtIndex: 0 + forKey: @""]; + fileUnder = [surName mutableCopy]; + [fileUnder autorelease]; + [fileUnder appendString: @","]; + givenName = [n flattenedValueAtIndex: 1 + forKey: @""]; + if ([givenName length] > 0) + [fileUnder appendFormat: @" %@", givenName]; + middleName = [n flattenedValueAtIndex: 2 + forKey: @""]; + if ([middleName length] > 0) + [fileUnder appendFormat: @" %@", middleName]; + + *data = [fileUnder asUnicodeInMemCtx: memCtx]; + + return MAPISTORE_SUCCESS; } - (int) getPidLidFileUnderId: (void **) data inMemCtx: (TALLOC_CTX *) memCtx { - *data = MAPILongValue (memCtx, 0xffffffff); + *data = MAPILongValue (memCtx, 0x00008017); /* what ol2003 sets */ return MAPISTORE_SUCCESS; } @@ -209,7 +252,7 @@ vCard = [sogoObject vCard]; fn = [vCard fn]; email = [vCard preferredEMail]; - *data = [[NSString stringWithFormat: @"%@ <%@>", fn, email] + *data = [[NSString stringWithFormat: @"%@ (%@)", fn, email] asUnicodeInMemCtx: memCtx]; return MAPISTORE_SUCCESS; @@ -218,7 +261,8 @@ - (int) getPidLidEmail1OriginalDisplayName: (void **) data inMemCtx: (TALLOC_CTX *) memCtx { - return [self getPidLidEmail1DisplayName: data inMemCtx: memCtx]; + return [self getPidLidEmail1EmailAddress: data + inMemCtx: memCtx]; } - (int) getPidLidEmail1EmailAddress: (void **) data