]> git.rmz.io Git - dotfiles.git/blobdiff - mutt/ical2txt
lazyvim: absorb snacks notifier
[dotfiles.git] / mutt / ical2txt
index de9d739e889b83d8b2836de85da020ea81ee991f..c0c9310532160c1a25cf25543105cd32db8155dc 100755 (executable)
@@ -1,12 +1,28 @@
 #!/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:
+        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)
+        str += "\n"
 
     description = event.get('description')
     if description is not None: