|
26 | 26 | }
|
27 | 27 |
|
28 | 28 |
|
29 |
| -def datetime2utc(date): |
| 29 | +def datetime_to_str(date): |
30 | 30 | if isinstance(date, datetime.datetime):
|
31 |
| - return datetime.datetime.strftime(date, "%Y%m%dT%H%M%S") |
| 31 | + return datetime.datetime.strftime(date, "%Y%m%dT%H%M%S%z") |
32 | 32 | elif isinstance(date, datetime.date):
|
33 |
| - return datetime.datetime.strftime(date, "%Y%m%d") |
| 33 | + return datetime.datetime.strftime(date, "%Y%m%d%z") |
34 | 34 |
|
35 | 35 |
|
36 | 36 | def utcnow():
|
@@ -122,12 +122,12 @@ def event_from_yaml(event_yaml: dict, tz: datetime.tzinfo = None) -> ics.Event:
|
122 | 122 | )
|
123 | 123 |
|
124 | 124 | if "except_on" in repeat:
|
125 |
| - exdates = [datetime2utc(rdate) for rdate in repeat["except_on"]] |
126 |
| - add_recurrence_property(event, "EXDATE", exdates) |
| 125 | + exdates = [datetime_to_str(rdate) for rdate in repeat["except_on"]] |
| 126 | + add_recurrence_property(event, "EXDATE", exdates, tz) |
127 | 127 |
|
128 | 128 | if "also_on" in repeat:
|
129 |
| - rdates = [datetime2utc(rdate) for rdate in repeat["also_on"]] |
130 |
| - add_recurrence_property(event, "RDATE", rdates) |
| 129 | + rdates = [datetime_to_str(rdate) for rdate in repeat["also_on"]] |
| 130 | + add_recurrence_property(event, "RDATE", rdates, tz) |
131 | 131 |
|
132 | 132 | event.dtstamp = utcnow()
|
133 | 133 | if tz and event.floating and not event.all_day:
|
|
0 commit comments