#
# old_revision [a7388b1eb7856d57df84b1de0be0ed020317178c]
#
# patch "SOPE/NGCards/iCalDateTime.h"
#  from [689fc54ca10227b4bc8ffacee0d893879d6ea8e8]
#    to [69fbe2f5f2e1bca0cee5676a41dea904b4d5c7f1]
# 
# patch "SOPE/NGCards/iCalTimeZonePeriod.m"
#  from [3d5a26016cde881cc168146ef554ba0c53654e5d]
#    to [f4735ea479184015397ffbdcb12f4305ed741414]
#
============================================================
--- SOPE/NGCards/iCalDateTime.h	689fc54ca10227b4bc8ffacee0d893879d6ea8e8
+++ SOPE/NGCards/iCalDateTime.h	69fbe2f5f2e1bca0cee5676a41dea904b4d5c7f1
@@ -1,6 +1,6 @@
 /* iCalDateTime.h - this file is part of SOGo
  *
- * Copyright (C) 2006 Inverse inc.
+ * Copyright (C) 2006-2009 Inverse inc.
  *
  * Author: Wolfgang Sourdeau <wsourdeau@inverse.ca>
  *
============================================================
--- SOPE/NGCards/iCalTimeZonePeriod.m	3d5a26016cde881cc168146ef554ba0c53654e5d
+++ SOPE/NGCards/iCalTimeZonePeriod.m	f4735ea479184015397ffbdcb12f4305ed741414
@@ -110,6 +110,7 @@
   dayOfWeek = [self dayOfWeekFromRruleDay: [rrule byDayMask]];
   pos = [[byDay substringToIndex: 2] intValue];
   if (!pos)
+    /* if byday = "SU", instead of "1SU"... */
     pos = 1;
 
   tmpDate = [NSCalendarDate dateWithYear: [refDate yearOfCommonEra]
@@ -119,9 +120,17 @@
   tmpDate = [tmpDate addYear: 0 month: ((pos > 0) ? 0 : 1)
 		     day: 0 hour: 0 minute: 0
 		     second: -[self _secondsOfOffset: @"tzoffsetfrom"]];
+
   dateDayOfWeek = [tmpDate dayOfWeek];
-// #warning FIXME
-  offset = (dayOfWeek - dateDayOfWeek) + ((pos -1 ) * 7);
+
+//   if (pos < 0)
+//     pos++;
+
+  if (pos > 0)
+    offset = (dayOfWeek - dateDayOfWeek) + ((pos - 1) * 7);
+  else
+    offset = (dateDayOfWeek - dayOfWeek) + (pos * 7);
+
   tmpDate = [tmpDate addYear: 0 month: 0 day: offset
 		     hour: 0 minute: 0 second: 0];
 
