X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/dbcc35eb2eb9c925fbaa51fe1b7dee65f99a9359..a59aa3f7d15dae57e2d066e47af3556c46d9dac4:/mutt/ical2txt diff --git a/mutt/ical2txt b/mutt/ical2txt index 70a8be2..c0c9310 100755 --- a/mutt/ical2txt +++ b/mutt/ical2txt @@ -1,18 +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()) - - attendees = [ a.params['cn'] for a in event.get('attendee') ] - str += "Attendees:\n" - for a in attendees: - str += "\t{}\n".format(a) - str += "\n" + 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: