Repository : http://git.fedorahosted.org/cgit/fedocal.git
On branch : master
commit 6b3cb5566d9a661931e22c1dbffb38610e5bcd91 Author: Pierre-Yves Chibon pingou@pingoured.fr Date: Thu Jan 17 00:53:29 2013 +0100
Add a global iCal feed providing meetings information for all calendars
fedocal/__init__.py | 16 ++++++++++++++++ 1 files changed, 16 insertions(+), 0 deletions(-)
diff --git a/fedocal/__init__.py b/fedocal/__init__.py index ce049e8..1ba4b2f 100644 --- a/fedocal/__init__.py +++ b/fedocal/__init__.py @@ -226,6 +226,22 @@ def calendar_list(calendar_name, year, month, day): admin=admin)
+@APP.route('/ical/') +def ical_all(): + """ Returns a iCal feed of all calendars from today - 1 month to + today + 6 month. + """ + startd = datetime.date.today() - datetime.timedelta(days=30) + endd = datetime.date.today() + datetime.timedelta(days=180) + ical = vobject.iCalendar() + meetings = [] + for calendar in Calendar.get_all(SESSION): + meetings.extend(fedocallib.get_meetings_by_date(SESSION, + calendar.calendar_name, startd, endd)) + fedocallib.add_meetings_to_vcal(ical, meetings) + return flask.Response(ical.serialize(), mimetype='text/calendar') + + @APP.route('/ical/<calendar_name>/') def ical_out(calendar_name): """ Returns a iCal feed of the calendar from today - 1 month to
fedocal-devel@lists.fedorahosted.org