Monotone-Parent: 631f35f9ebd51caae6ce04bced46edb24fd7eaaf

Monotone-Revision: 64430bce96a9562bf8914d9e581ba26e9cbf2a9a

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2008-03-10T04:48:28
Monotone-Branch: ca.inverse.sogo
maint-2.0.2
Wolfgang Sourdeau 2008-03-10 04:48:28 +00:00
parent 23b7cf0d3e
commit 7ed2beb6d3
4 changed files with 26 additions and 17 deletions

View File

@ -1,3 +1,14 @@
2008-03-10 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* iCalTimeZonePeriod.m ([iCalTimeZonePeriod
-dayOfWeekFromRruleDay:day]): the algorithm would never work if
the day was monday. After it was changed for sunday (see below),
it would return 1 instead of 0.
* iCalRecurrenceRule.m ([iCalRecurrenceRule -setByDayMask:_mask]):
the first day of the week is always sunday, following Apple's
documentation.
2008-03-03 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* NGVCardReference.[hm]: new class module that implements the base

View File

@ -46,13 +46,13 @@ typedef enum {
} iCalRecurrenceFrequency;
typedef enum {
iCalWeekDayMonday = 1,
iCalWeekDayTuesday = 2,
iCalWeekDayWednesday = 4,
iCalWeekDayThursday = 8,
iCalWeekDayFriday = 16,
iCalWeekDaySaturday = 32,
iCalWeekDaySunday = 64,
iCalWeekDaySunday = 1,
iCalWeekDayMonday = 2,
iCalWeekDayTuesday = 4,
iCalWeekDayWednesday = 8,
iCalWeekDayThursday = 16,
iCalWeekDayFriday = 32,
iCalWeekDaySaturday = 64,
} iCalWeekDay;
@class NSString, NSCalendarDate, NGCalendarDateRange, NSArray;

View File

@ -277,10 +277,10 @@
{
NSMutableArray *days;
unsigned int count;
unsigned char maskDays[] = { iCalWeekDayMonday, iCalWeekDayTuesday,
iCalWeekDayWednesday, iCalWeekDayThursday,
iCalWeekDayFriday, iCalWeekDaySaturday,
iCalWeekDaySunday };
unsigned char maskDays[] = { iCalWeekDaySunday, iCalWeekDayMonday,
iCalWeekDayTuesday, iCalWeekDayWednesday,
iCalWeekDayThursday, iCalWeekDayFriday,
iCalWeekDaySaturday };
days = [NSMutableArray arrayWithCapacity: 7];
if (_mask)
{

View File

@ -92,8 +92,8 @@
{
unsigned int dayOfWeek;
dayOfWeek = 1;
while (day >> dayOfWeek)
dayOfWeek = 0;
while (day >> (dayOfWeek + 1))
dayOfWeek++;
return dayOfWeek;
@ -120,10 +120,8 @@
day: 0 hour: 0 minute: 0
second: -[self _secondsOfOffset: @"tzoffsetfrom"]];
dateDayOfWeek = [tmpDate dayOfWeek];
offset = (dayOfWeek - dateDayOfWeek);
if (pos > 0 && offset < 0)
offset += 7;
offset += (pos * 7);
// #warning FIXME
offset = (dayOfWeek - dateDayOfWeek) + ((pos -1 ) * 7);
tmpDate = [tmpDate addYear: 0 month: 0 day: offset
hour: 0 minute: 0 second: 0];