[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-pim
Subject: Re: [Kde-pim] Non-Gregorian Calendar Systems in KOrganizer
From: David Jarvie <djarvie () kde ! org>
Date: 2009-12-15 0:49:13
Message-ID: 200912150049.13540.djarvie () kde ! org
[Download RAW message or body]
On Monday 14 Dec 2009 18:14:15 John Layt wrote:
> Hi,
>
> I'm sure you are aware of the issues with non-Gregorian Calendar Systems and
> recurring events in KOrganizer. As I hear KOrganizer is undergoing a re-write
> for Akonadi, and I've had people asking me about the issues, I thought I'd
> ask what the future plans for this were, and share my ramblings about it.
>
> A user who has their desktop set to an alternative Calendar System when they
> run KOrganizer will see a gui using their Calendar System. This works fine
> for single occurrence events, the problem comes when creating a new or editing
> an existing recurring event. The user will use a gui in their Calendar System
> and assume the recurrence is calculated in that Calendar System, but the event
> will recur using Gregorian calendar rules instead.
This is something which KAlarm would also want to implement. I've been aware of this \
issue for some time, but for reasons of the iCalendar format limitations which you \
mention, it seemed a big job to tackle.
> Medium term, A quick read of the standard suggests a possible way to support
> recurring components in alternative Calendar Systems without changing the
> standard or compromising interoperability.
>
> 1) Define new extension properties X-KDE-RRULE and X-KDE-RRULE-CALSCALE (or
> agree an FDO namespace)
> 2) In the recurrence gui add a combo to choose Calendar System
> 3) If the user selects Gregorian then everything continues as normal.
> 4) If the user selects an alternative, then:
> * require the entry of an end date or condition
> * save the RRULE property as X-KDE-RRULE instead
> * save the Calendar System as X-KDE-RRULE-CALSCALE
> * calculate all the recurrence dates in the chosen Calendar System
> * convert all the recurrence dates into Gregorian
> * save all the Gregorian recurrence dates using RDATE
> * all dates saved in the file remain in Gregorian as normal
> 5) Internally always use X-KDE-RRULE if present and not RDATE
Although this would often work, it would fail or become impractical in two cases:
- a recurrence without an end date (as you recognise).
- a relatively frequent recurrence with an end date a long time from now, i.e. one \
with a very large number of occurrences. This could make for a very large calendar \
entry.
I suspect that recurrence rules with large numbers of occurrences might become quite \
inefficient to process in applications, although of course KDE applications which are \
able to make use of the X-KDE-RRULE entries wouldn't suffer from this problem any \
more than currently. Already, some recurrence calculations can take quite some time \
to process, and if they consisted of a long list of individual date/time values, they \
might become even more time consuming.
So I think that we'd need to impose arbitrary limits both on end date, and on how \
many RDATE instances would be stored.
Apart from these reservations, your proposals seem a reasonable approach for tackling \
this issue, providing people can spend the necessary time to implement them.
--
David Jarvie.
KDE developer.
KAlarm author -- http://www.astrojar.org.uk/kalarm
_______________________________________________
KDE PIM mailing list kde-pim@kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic