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: