diff --git a/ChangeLog b/ChangeLog index 66a69843a..92d9ee779 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2011-07-20 Wolfgang Sourdeau + * OpenChange/MAPIStoreMailMessage.m (-subject): new overridable + accessor common to certain properties. + * OpenChange/MAPIStoreObject.m: moved "-getEmptyString:inMemCtx:", "-getLongZero:inMemCtx:", "-getYes:inMemCtx:", "-getNo:inMemCtx:" into NSObject+MAPIStore.m diff --git a/OpenChange/MAPIStoreDraftsMessage.m b/OpenChange/MAPIStoreDraftsMessage.m index 18cfcfffc..854c137ad 100644 --- a/OpenChange/MAPIStoreDraftsMessage.m +++ b/OpenChange/MAPIStoreDraftsMessage.m @@ -214,6 +214,11 @@ e) [self logWithFormat: @"ignored scheduling message"]; } +- (NSString *) subject +{ + return [[sogoObject headers] objectForKey: @"subject"]; +} + - (NSCalendarDate *) creationTime { return [newProperties objectForKey: MAPIPropertyKey (PR_CREATION_TIME)]; diff --git a/OpenChange/MAPIStoreMailMessage.h b/OpenChange/MAPIStoreMailMessage.h index 476c213b9..2d0e92fdc 100644 --- a/OpenChange/MAPIStoreMailMessage.h +++ b/OpenChange/MAPIStoreMailMessage.h @@ -37,6 +37,8 @@ NSString *bodyCharset; } +- (NSString *) subject; + @end #endif /* MAPISTOREMAILMESSAGE_H */ diff --git a/OpenChange/MAPIStoreMailMessage.m b/OpenChange/MAPIStoreMailMessage.m index 01e968e01..f5a3193fc 100644 --- a/OpenChange/MAPIStoreMailMessage.m +++ b/OpenChange/MAPIStoreMailMessage.m @@ -144,12 +144,17 @@ static Class NSExceptionK, MAPIStoreSentItemsFolderK, MAPIStoreDraftsFolderK; return MAPISTORE_SUCCESS; } +- (NSString *) subject +{ + return [sogoObject decodedSubject]; +} + - (int) getPrSubject: (void **) data inMemCtx: (TALLOC_CTX *) memCtx { NSString *stringValue; - stringValue = [sogoObject decodedSubject]; + stringValue = [self subject]; if (!stringValue) stringValue = @""; *data = [stringValue asUnicodeInMemCtx: memCtx]; @@ -164,7 +169,7 @@ static Class NSExceptionK, MAPIStoreSentItemsFolderK, MAPIStoreDraftsFolderK; NSUInteger colIdx; NSString *stringValue; - subject = [sogoObject decodedSubject]; + subject = [self subject]; colIdx = [subject rangeOfString: @":"].location; if (colIdx != NSNotFound && colIdx < 4) stringValue = [NSString stringWithFormat: @"%@: ", @@ -183,7 +188,7 @@ static Class NSExceptionK, MAPIStoreSentItemsFolderK, MAPIStoreDraftsFolderK; NSUInteger colIdx; NSString *stringValue; - subject = [sogoObject decodedSubject]; + subject = [self subject]; colIdx = [subject rangeOfString: @":"].location; if (colIdx != NSNotFound && colIdx < 4) stringValue = [[subject substringFromIndex: colIdx + 1]