summaryrefslogtreecommitdiff
path: root/rem2ics
diff options
context:
space:
mode:
authorAnton Bobov <abobov@gmail.com>2021-04-27 19:33:10 +0500
committerAnton Bobov <abobov@gmail.com>2021-04-27 19:33:10 +0500
commit4c64d38cdb39318dfd258bde3a24d139eb398b67 (patch)
treef8c269c138007379ceafa7f373b8f7e7ac82096a /rem2ics
parent9b340bc745a39699b0ee66c2521b81d2499407ce (diff)
rem2ics: fix repeating events with time
Diffstat (limited to 'rem2ics')
-rwxr-xr-xrem2ics11
1 files 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')