The Recurring Events product, which comes in the p4a.ploneevent
package, adds the beginnings of repeating event support to Plone, and though it's a bit buggy and in need of user interface work at the moment (such that I wouldn't recommend it for a production site), its underpinnings are well designed. An event can repeat every so many days, weeks, months, or years, and it can stop repeating on a certain date or after some set number of occurrences. Repetition is controlled through a new Recurrence tab in the event editor:
In the above, setting Repeats every to 2 would mean "repeat every 2 weeks," with 1 meaning "repeat every week". Count means "stop repeating after this many occurrences". If you provide both a Range and a Count, the most limiting one wins. And although the present interface doesn't support more complex patterns like repeating every Tuesday and Thursday, the underlying dateutil
library does — so there's plenty of room for future improvement.