[x] Each calendar should be published to a private url based file, so can easily be consumed by ICAL-capable applications/services (IIRC this branch already does it)
[x] ICAL file should be updated upon saving any change to a calendar (IIRC this branch already does it)
[x] Normal, non-repeating tasks should export basic fields: Date, time when starts (00:00 if all day), time when ends (for now, either one hour later than it started or 23:59 if all day), title as summary, details as description
[ ] Repeating tasks support. Probably create Up to N months ahead of tasks (maybe configurable via settings? with a default of lets say 6 months). A task can repeat weekly per week day, monthly per month day or monthly on the first week day specified (e.g. "first monday of the month").
Double reason: On one side, I wanted to learn about the icalendar format, so (second reason) I didn't even searched if there were existing libraries. Now that I peeked a bit about the format I wouldn't mind adding an existing library like the one you mentioned :)
Ok, I'll try to detail it a bit more, although I dropped my initial idea of using it so I'm not totally sure about functionalities it should have. Open to suggestions :)
WIP at branch https://github.com/Kartones/flask-calendar/tree/icalendar-exporter
Support exporting events into
ICAL
format.Rough TODOs:
00:00
if all day), time when ends (for now, either one hour later than it started or23:59
if all day), title as summary, details as description