From 4c64d38cdb39318dfd258bde3a24d139eb398b67 Mon Sep 17 00:00:00 2001 From: Anton Bobov Date: Tue, 27 Apr 2021 19:33:10 +0500 Subject: rem2ics: fix repeating events with time --- rem2ics | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/rem2ics b/rem2ics index 33b4f2b..32f46b9 100755 --- a/rem2ics +++ b/rem2ics @@ -56,7 +56,7 @@ class Event: def dtend(self): e = self.event_json - if 'rep' in e and 'until' in e: + if is_multiple_days_event(e): dt = datetime.strptime(e['until'], '%Y-%m-%d') return (dt + timedelta(days=1)).strftime('%Y%m%d') elif 'eventduration' in e and 'eventstart' in e: @@ -77,13 +77,20 @@ class Event: def create_uid(event): - if 'rep' in event and 'until' in event: + if is_multiple_days_event(event): date = event['until'] else: date = event['date'] return "%s:%s:%s" % (basename(event['filename']), event['lineno'], date) +def is_multiple_days_event(event): + repeat = 'rep' in event + has_until_date = 'until' in event + has_time = 'time' in event + return repeat and has_until_date and not has_time + + def print_ics(events): print('BEGIN:VCALENDAR') print('VERSION:2.0') -- cgit v1.2.3