<?xml version="1.0" encoding="UTF-8"?> 
<?xml-stylesheet href="https://dev.horde.org/themes/horde//default/feed-rss.xsl" type="text/xsl"?> 
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> 
 <channel> 
  <title>Sunbird displays recurring events one day short</title> 
  <pubDate>Fri, 10 Apr 2026 07:03:40 +0000</pubDate> 
  <link>https://bugs.horde.org/ticket/7846</link> 
  <atom:link rel="self" type="application/rss+xml" title="Sunbird displays recurring events one day short" href="https://bugs.horde.org/ticket/7846/rss" /> 
  <description>Sunbird displays recurring events one day short</description> 
 
   
   
  <item> 
   <title>When I create an event that reoccurs every 1 week on Mo, Tu,</title> 
   <description>When I create an event that reoccurs every 1 week on Mo, Tu, We, Th, Fr till 01/30/08 from 08:00 till 19:00 the event will display one day short (till 01/29/08) in Sunbird.

If I edit the event in Subird reselect the 01/30/08 and save again the event will be displayed correctly in Sunbird and Kronolith. 

When I then open the event in Kronolith again and just hit save, the event will be displayed again one day short in Sunbird.</description> 
   <pubDate>Wed, 14 Jan 2009 14:03:00 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t51708</link> 
  </item> 
   
  <item> 
   <title>Please provide an iCalendar export of both versions of the e</title> 
   <description>Please provide an iCalendar export of both versions of the event, for comparison.</description> 
   <pubDate>Wed, 14 Jan 2009 16:03:38 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t51709</link> 
  </item> 
   
  <item> 
   <title>And please try a stable release version.</title> 
   <description>And please try a stable release version.</description> 
   <pubDate>Wed, 14 Jan 2009 16:37:59 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t51710</link> 
  </item> 
   
  <item> 
   <title>I just updated to 1.2.2 besides having many other new proble</title> 
   <description>I just updated to 1.2.2 besides having many other new problems now the here reported problem still occurs in the same way.

</description> 
   <pubDate>Wed, 04 Feb 2009 22:16:12 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t52283</link> 
  </item> 
   
  <item> 
   <title>The following event from my Horde calendar is one day short </title> 
   <description>The following event from my Horde calendar is one day short in Lightning as well as Outlook. The event starts on 14th April and is supposed to end on 17th April. In Lightning and Outlook the event ends on 16th April.



BEGIN:VEVENT

DTSTART:20090414T070000Z

DTEND:20090414T150000Z

DTSTAMP:20090330T145501Z

UID:20090330144131.43343swuo9izn6yo@www.example.com

CREATED:20090330T124131Z

LAST-MODIFIED:20090330T124430Z

SUMMARY:Foo

ORGANIZER;CN=Andreas Voegele:mailto:andreas@example.com

CATEGORIES:Bar

LOCATION:Baz

CLASS:PUBLIC

STATUS:CONFIRMED

TRANSP:OPAQUE

RRULE:FREQ=DAILY;INTERVAL=1;UNTIL=20090417

END:VEVENT



If I edit the event in Lightning I get:



BEGIN:VEVENT

DTSTART:20090414T070000Z

DTEND:20090414T150000Z

DTSTAMP:20090330T155515Z

UID:20090330144131.43343swuo9izn6yo@www.example.com

CREATED:20090330T124131Z

LAST-MODIFIED:20090330T155526Z

SUMMARY:Foo

ORGANIZER;RSVP=FALSE;CN=Andreas Voegele:mailto:andreas@example.com

CATEGORIES:Bar

LOCATION:Baz

CLASS:PUBLIC

STATUS:CONFIRMED

TRANSP:OPAQUE

RRULE:FREQ=DAILY;UNTIL=20090417T070000Z;INTERVAL=1

X-MOZ-GENERATION:1

END:VEVENT</description> 
   <pubDate>Mon, 30 Mar 2009 16:12:47 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t53375</link> 
  </item> 
   
  <item> 
   <title>Hi,



&gt; The following event from my Horde calendar is one d</title> 
   <description>Hi,



&gt; The following event from my Horde calendar is one day short in 

&gt; Lightning as well as Outlook. The event starts on 14th April and is 

&gt; supposed to end on 17th April. In Lightning and Outlook the event 

&gt; ends on 16th April.

&gt;

&gt; BEGIN:VEVENT

&gt; DTSTART:20090414T070000Z

&gt; DTEND:20090414T150000Z

&gt; [...]

&gt; RRULE:FREQ=DAILY;INTERVAL=1;UNTIL=20090417

&gt; END:VEVENT

&gt;

&gt; If I edit the event in Lightning I get:

&gt;

&gt; BEGIN:VEVENT

&gt; DTSTART:20090414T070000Z

&gt; DTEND:20090414T150000Z

&gt; [...]

&gt; RRULE:FREQ=DAILY;UNTIL=20090417T070000Z;INTERVAL=1

&gt; X-MOZ-GENERATION:1

&gt; END:VEVENT



I use the following workaround for the time being:



--- Recurrence.php.orig 2008-09-05 19:13:08.000000000 +0200

+++ Recurrence.php      2009-03-30 18:42:00.000000000 +0200

@@ -1127,7 +1127,11 @@

         }



         if ($this-&gt;hasRecurEnd()) {

-            $rrule .= &#039;;UNTIL=&#039; . $calendar-&gt;_exportDate($this-&gt;recurEnd);

+            $until = new Horde_Date($this-&gt;recurEnd);

+            $until-&gt;hour = $this-&gt;start-&gt;hour;

+            $until-&gt;min = $this-&gt;start-&gt;min;

+            $until-&gt;sec = $this-&gt;start-&gt;sec;

+            $rrule .= &#039;;UNTIL=&#039; . $calendar-&gt;_exportDateTime($until);

         }

         if ($count = $this-&gt;getRecurCount()) {

             $rrule .= &#039;;COUNT=&#039; . $count;



BTW, the Spam protection is not usable in Firefox. The ASCII art letters aren&#039;t shown properly.</description> 
   <pubDate>Mon, 30 Mar 2009 17:00:05 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t53378</link> 
  </item> 
   
  <item> 
   <title>Can you try version 2.3.1?</title> 
   <description>Can you try version 2.3.1?</description> 
   <pubDate>Mon, 30 Mar 2009 17:53:41 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t53383</link> 
  </item> 
   
  <item> 
   <title>&gt; Can you try version 2.3.1?



I tried version 2.3.1 but th</title> 
   <description>&gt; Can you try version 2.3.1?



I tried version 2.3.1 but the value of UNTIL is still output without the time. For example, Horde exports



DTSTART:20090414T070000Z

RRULE:FREQ=DAILY;INTERVAL=1;UNTIL=20090417



instead of



DTSTART:20090414T070000Z

RRULE:FREQ=DAILY;INTERVAL=1;UNTIL=20090417T070000Z



This is the code from toRRule20() in Recurrence.php that outputs the date:



        if ($this-&gt;hasRecurEnd()) {

              $rrule .= &#039;;UNTIL=&#039; . $calendar-&gt;_exportDate($this-&gt;recurEnd);

          }



As far as I can see the time in the final date should match the time from the event&#039;s start date.</description> 
   <pubDate>Mon, 30 Mar 2009 19:08:50 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t53384</link> 
  </item> 
   
  <item> 
   <title>I think Sunbird and Outlook are wrong, because section 4.3.1</title> 
   <description>I think Sunbird and Outlook are wrong, because section 4.3.1 of RFC 2445 says:



   The UNTIL rule part defines a date-time value which bounds the

   recurrence rule in an inclusive manner. If the value specified by

   UNTIL is synchronized with the specified recurrence, this date or

   date-time becomes the last instance of the recurrence. If specified

   as a date-time value, then it MUST be specified in an UTC time

   format. If not present, and the COUNT rule part is also not present,

   the RRULE is considered to repeat forever.



I interpret this as a date specified in the UNTIL part is inclusive.



But since date-time values are allowed to and seem to work fine with both clients, I&#039;m gonna use those.</description> 
   <pubDate>Tue, 31 Mar 2009 09:55:41 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t53409</link> 
  </item> 
   
  <item> 
   <title>Changes have been made in CVS for this ticket:

http://cvs.h</title> 
   <description>Changes have been made in CVS for this ticket:

http://cvs.horde.org/diff.php/framework/Date/Date/Recurrence.php?rt=horde&amp;r1=1.28&amp;r2=1.29&amp;ty=u
http://cvs.horde.org/diff.php/framework/Date/tests/recurrence.phpt?rt=horde&amp;r1=1.10&amp;r2=1.11&amp;ty=u
http://cvs.horde.org/diff.php/horde/docs/CHANGES?rt=horde&amp;r1=1.1217&amp;r2=1.1218&amp;ty=u</description> 
   <pubDate>Tue, 31 Mar 2009 10:41:30 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t53410</link> 
  </item> 
   
  <item> 
   <title>Changes have been made in CVS for this ticket:

http://cvs.h</title> 
   <description>Changes have been made in CVS for this ticket:

http://cvs.horde.org/diff.php/framework/Date/Date/Recurrence.php?rt=horde&amp;r1=1.7.2.10&amp;r2=1.7.2.11&amp;ty=u
http://cvs.horde.org/diff.php/framework/Date/tests/recurrence.phpt?rt=horde&amp;r1=1.5.2.3&amp;r2=1.5.2.4&amp;ty=u
http://cvs.horde.org/diff.php/horde/docs/CHANGES?rt=horde&amp;r1=1.515.2.517&amp;r2=1.515.2.518&amp;ty=u</description> 
   <pubDate>Tue, 31 Mar 2009 11:06:29 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t53411</link> 
  </item> 
   
  <item> 
   <title>Should be fixed now.</title> 
   <description>Should be fixed now.</description> 
   <pubDate>Tue, 31 Mar 2009 11:08:18 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t53412</link> 
  </item> 
   
  <item> 
   <title>Isn&#039;t it great when fixes are tested? No one noticed that th</title> 
   <description>Isn&#039;t it great when fixes are tested? No one noticed that this was only fixed in Horde_Date_Recurrence, but not in Kronolith_Recurrence.</description> 
   <pubDate>Wed, 17 Jun 2009 20:20:38 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t54630</link> 
  </item> 
   
  <item> 
   <title>Changes have been made in CVS for this ticket:

http://cvs.h</title> 
   <description>Changes have been made in CVS for this ticket:

http://cvs.horde.org/diff.php/kronolith/docs/CHANGES?rt=horde&amp;r1=1.165.2.265&amp;r2=1.165.2.266&amp;ty=u
http://cvs.horde.org/diff.php/kronolith/lib/Attic/Recurrence.php?rt=horde&amp;r1=1.16.2.8&amp;r2=1.16.2.9&amp;ty=u
http://cvs.horde.org/diff.php/kronolith/lib/tests/Attic/recurrence.phpt?rt=horde&amp;r1=1.12.2.2&amp;r2=1.12.2.3&amp;ty=u</description> 
   <pubDate>Tue, 18 Aug 2009 11:56:07 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t55346</link> 
  </item> 
   
  <item> 
   <title>Sync doesn&#039;t work again. After upgrading to your current sou</title> 
   <description>Sync doesn&#039;t work again. After upgrading to your current sourcecode, the Recurring Event is displayed one day too often, as before. But this time, you manually add one day to &quot;UNTIL&quot;.
When I comment out that line, everything works fine with lightning.

So changing kronoliths&#039; recurrence.php in line 1168ff to:
        if ($this-&gt;hasRecurEnd()) {
#            $recurEnd = new Horde_Date($this-&gt;recurEnd);
#            $recurEnd-&gt;mday++;
            $rrule .= &#039;;UNTIL=&#039; . $calendar-&gt;_exportDateTime($this-&gt;recurEnd);
        }

Works as expected again, leading me to the question, why you&#039;re adding an extra day to until.</description> 
   <pubDate>Fri, 11 Jun 2010 07:38:15 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t59097</link> 
  </item> 
   
  <item> 
   <title>If you think the current behavior isn&#039;t correct, please prov</title> 
   <description>If you think the current behavior isn&#039;t correct, please provide a patch for a new unit test that demonstrates this.</description> 
   <pubDate>Tue, 15 Jun 2010 11:39:24 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t59125</link> 
  </item> 
   
  <item> 
   <title>&gt; If you think the current behavior isn&#039;t correct, please pr</title> 
   <description>&gt; If you think the current behavior isn&#039;t correct, please provide a 
&gt; patch for a new unit test that demonstrates this.

My patch would look like this, to make it sync correctly with Lightning</description> 
   <pubDate>Tue, 15 Jun 2010 12:47:49 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t59133</link> 
  </item> 
   
  <item> 
   <title>Not a patch for the code, a patch for the unit test, i.e. Re</title> 
   <description>Not a patch for the code, a patch for the unit test, i.e. RecurrenceTest.php.</description> 
   <pubDate>Tue, 15 Jun 2010 14:23:35 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/7846#t59135</link> 
  </item> 
   
   
 
 </channel> 
</rss> 
