Skip to content

Commit 90da11b

Browse files
committed
fix ical dates
1 parent 142c6fa commit 90da11b

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

errands/lib/data.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -142,13 +142,15 @@ def to_ical(self, as_calendar: bool = False) -> str:
142142
ical += f"STATUS:{'COMPLETED' if self.completed else 'NEEDS-ACTION'}\n"
143143
ical += f"LAST-MODIFIED:{self.changed_at}\n"
144144
ical += f"DTSTAMP:{self.created_at}\n"
145-
ical += f"DUE:{self.due_date}\n"
145+
if self.due_date:
146+
ical += f"DUE{';VALUE=DATE' if 'T' not in self.due_date else ''}:{self.due_date}\n"
146147
ical += f"X-ERRANDS-EXPANDED:{int(self.expanded)}\n"
147148
ical += f"DESCRIPTION:{self.notes}\n"
148149
ical += f"RELATED-TO:{self.parent}\n"
149150
ical += f"PERCENT-COMPLETE:{self.percent_complete}\n"
150151
ical += f"PRIORITY:{self.priority}\n"
151-
ical += f"DTSTART:{self.start_date}\n"
152+
if self.start_date:
153+
ical += f"DTSTART{';VALUE=DATE' if 'T' not in self.due_date else ''}:{self.start_date}\n"
152154
ical += f"CATEGORIES:{','.join(self.tags)}\n"
153155
ical += f"SUMMARY:{self.text}\n"
154156
ical += f"X-ERRANDS-TOOLBAR-SHOWN:{int(self.toolbar_shown)}\n"

errands/lib/sync/providers/caldav.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -398,8 +398,12 @@ def __update_remote_task(self, calendar: Calendar, task: TaskData) -> None:
398398
todo: Todo = calendar.todo_by_uid(task.uid)
399399
if task.due_date:
400400
todo.icalendar_component["due"] = task.due_date
401+
else:
402+
del todo.icalendar_component["due"]
401403
if task.start_date:
402404
todo.icalendar_component["dtstart"] = task.start_date
405+
else:
406+
del todo.icalendar_component["dtstart"]
403407
if task.created_at:
404408
todo.icalendar_component["dtstamp"] = task.created_at
405409
if task.changed_at:

0 commit comments

Comments
 (0)