Added birthday support

Monotone-Parent: ad64289576535182e420c1b6705c182136a906ce
Monotone-Revision: 6bb1bd2b9a63daae8f56da56b2ba72ac8bad2d3e

Monotone-Author: ludovic@Sophos.ca
Monotone-Date: 2011-09-23T18:16:46
Monotone-Branch: ca.inverse.sogo
maint-2.0.2
Ludovic Marcotte 2011-09-23 18:16:46 +00:00
parent ac97fadd04
commit a0112fdbf8
2 changed files with 11 additions and 6 deletions

View File

@ -311,14 +311,12 @@
} }
- (void) _setupRecurrenceInCalendar: (iCalCalendar *) calendar - (void) _setupRecurrenceInCalendar: (iCalCalendar *) calendar
withEvent: (iCalEvent *) event
fromData: (NSData *) mapiRecurrenceData fromData: (NSData *) mapiRecurrenceData
{ {
struct Binary_r *blob; struct Binary_r *blob;
struct AppointmentRecurrencePattern *pattern; struct AppointmentRecurrencePattern *pattern;
NSMutableArray *otherEvents; NSMutableArray *otherEvents;
iCalEvent *event;
event = [sogoObject component: NO secure: NO];
/* cleanup */ /* cleanup */
otherEvents = [[calendar events] mutableCopy]; otherEvents = [[calendar events] mutableCopy];
@ -498,6 +496,7 @@
objectForKey: MAPIPropertyKey (PidLidAppointmentRecur)]; objectForKey: MAPIPropertyKey (PidLidAppointmentRecur)];
if (value) if (value)
[self _setupRecurrenceInCalendar: vCalendar [self _setupRecurrenceInCalendar: vCalendar
withEvent: newEvent
fromData: value]; fromData: value];
// Organizer // Organizer

View File

@ -664,8 +664,7 @@
{ {
dateValue = [NSCalendarDate dateWithString: stringValue dateValue = [NSCalendarDate dateWithString: stringValue
calendarFormat: @"%Y-%m-%d"]; calendarFormat: @"%Y-%m-%d"];
// FIXME: We add a day, otherwise Outlook 2003 will display at day earlier //dateValue = [dateValue addYear: 0 month: 0 day: 1 hour: 0 minute: 0 second: 0];
dateValue = [dateValue addYear: 0 month: 0 day: 1 hour: 0 minute: 0 second: 0];
*data = [dateValue asFileTimeInMemCtx: memCtx]; *data = [dateValue asFileTimeInMemCtx: memCtx];
} }
else else
@ -957,7 +956,7 @@
// //
// job title, nickname, company name, deparment, work url, im address/screen name // job title, nickname, company name, deparment, work url, im address/screen name and birthday
// //
value = [newProperties objectForKey: MAPIPropertyKey(PR_TITLE_UNICODE)]; value = [newProperties objectForKey: MAPIPropertyKey(PR_TITLE_UNICODE)];
if (value) if (value)
@ -992,6 +991,13 @@
to: value]; to: value];
} }
value = [newProperties objectForKey: MAPIPropertyKey(PR_BIRTHDAY)];
if (value)
{
[newCard setBday: [value descriptionWithCalendarFormat: @"%Y-%m-%d"]];
}
// //
// we save the new/modified card // we save the new/modified card
// //