allow webcal:// scheme to be used in configuration
1 file changed, 5 insertions(+), 1 deletion(-)
changed files
M mycal.py → mycal.py
@@ -1,6 +1,7 @@ from icalendar.cal import Calendar, FreeBusy import icalendar +import urllib.parse import requests from flask import Flask from datetime import date, datetime, timedelta, time, timezone@@ -41,7 +42,10 @@ if calendar_config.file != "": return read_calendar_file(calendar_config.file) else: if calendar_config.url != "": - return fetch_calendar(calendar_config.url) + u = urllib.parse.urlsplit(calendar_config.url) + if u.scheme == "webcal": + u = u._replace(scheme="https") + return fetch_calendar(urllib.parse.urlunsplit(u)) raise ValueError("Calendar URL not configured.") def fixup_date(dt):