From 76fc4d77cff516322d5de1a483a66f9551edcd3a Mon Sep 17 00:00:00 2001 From: lars Date: Sat, 10 Oct 2009 23:22:56 +0000 Subject: [PATCH] ical aggregator: * ignore source lines starting with "#" * add alternative parser for event dates given as strings --- ical_aggregator/drupal_submit.py | 6 ++++++ ical_aggregator/ical_aggregator.py | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/ical_aggregator/drupal_submit.py b/ical_aggregator/drupal_submit.py index 6d26839..eeed57b 100755 --- a/ical_aggregator/drupal_submit.py +++ b/ical_aggregator/drupal_submit.py @@ -9,6 +9,7 @@ import random import hmac import hashlib import datetime +import dateutil.parser AUTH_FILE = "stadtgestalten_auth.conf" @@ -43,12 +44,17 @@ def send_xmlrpc_request(server, session, api_key, api_domain, method, args=[]): def generate_node(title, body, username, time_start, time_finish=None, time_duration_minutes=None): + # parse "time_start", if necessary + if isinstance(time_start, basestring): + time_start = dateutil.parser.parse(time_start) # calculate "time_finish" if it is not defined if time_finish is None: if time_duration_minutes is None: time_finish = time_start + datetime.timedelta(hours=2) else: time_finish = time_start + time_duration_minutes + elif isinstance(time_finish, basestring): + time_finish = dateutil.parser.parse(time_finish) return {'type': 'termin', 'title': title, 'body': body, diff --git a/ical_aggregator/ical_aggregator.py b/ical_aggregator/ical_aggregator.py index 0f94eae..9c625d9 100755 --- a/ical_aggregator/ical_aggregator.py +++ b/ical_aggregator/ical_aggregator.py @@ -105,7 +105,9 @@ if __name__ == "__main__": icals = [] for ical_url in ical_urls: - icals.extend(fetch_ical(ical_url)) + # ignore lines starting with "#" + if not ical_url.startswith("#"): + icals.extend(fetch_ical(ical_url)) for event in icals: if not get_unique_id(event) in finished_items: