]> git.rmz.io Git - dotfiles.git/blobdiff - mutt/ical2txt
lazyvim: absorb snacks notifier
[dotfiles.git] / mutt / ical2txt
index f5d2a9e4a57b5e990b5f7ada9ed69b52319b0db0..c0c9310532160c1a25cf25543105cd32db8155dc 100755 (executable)
@@ -1,15 +1,24 @@
 #!/usr/bin/env python3
 
 from icalendar import Calendar
+import datetime
 
 def format_cal(event):
     start = event.get('dtstart').dt
     end   = event.get('dtend').dt
-    str  = "Start: {:%Y-%m-%d %H:%M}\n".format(start.astimezone())
-    str += "End:   {:%Y-%m-%d %H:%M}\n".format(end.astimezone())
+    str = ""
+    if isinstance(start, datetime.datetime):
+        str += "Start: {:%Y-%m-%d %H:%M}\n".format(start.astimezone())
+        str += "End:   {:%Y-%m-%d %H:%M}\n".format(end.astimezone())
+    elif isinstance(start, datetime.date):
+        str += "Start: {:%Y-%m-%d}\n".format(start)
+        str += "End:   {:%Y-%m-%d}\n".format(end)
 
     if event.get('attendee') is not None:
-        attendees = [ a.params['cn'] for a in event.get('attendee') ]
+        att = event.get('attendee')
+        if not isinstance(att, list):
+            att = [att]
+        attendees = [ a.params['cn'] for a in att]
         str += "Attendees:\n"
         for a in attendees:
             str += "\t{}\n".format(a)