From 4a2fd687d7c9c815419bd6d0897085d05cd50fe0 Mon Sep 17 00:00:00 2001 From: Unrud Date: Wed, 19 Jan 2022 00:59:41 +0100 Subject: Update for Radicale 3.1.1 --- radicale_infcloud/__init__.py | 52 +++++++++---------------------------------- 1 file changed, 11 insertions(+), 41 deletions(-) (limited to 'radicale_infcloud/__init__.py') diff --git a/radicale_infcloud/__init__.py b/radicale_infcloud/__init__.py index 8dc04df..409ef28 100644 --- a/radicale_infcloud/__init__.py +++ b/radicale_infcloud/__init__.py @@ -1,5 +1,5 @@ # RadicaleWeb web interface for Radicale. -# Copyright © 2017-2018, 2020 Unrud +# Copyright © 2017-2018, 2020, 2022 Unrud # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -14,14 +14,9 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -import os -import posixpath -import time from http import client -from radicale import httputils, pathutils -from radicale.log import logger +from radicale import httputils from radicale.web import internal -from radicale.web.internal import MIMETYPES, FALLBACK_MIMETYPE import pkg_resources @@ -34,42 +29,17 @@ class Web(internal.Web): self.infcloud_folder = pkg_resources.resource_filename(__name__, "web") def get(self, environ, base_prefix, path, user): - if not path.startswith("/.web/infcloud/") and path != "/.web/infcloud": - status, headers, answer = super().get(environ, base_prefix, path, - user) - if status == client.OK and path in ("/.web/", "/.web/index.html"): - answer = answer.replace(b"""\ + if path == "/.web/infcloud/" or path.startswith("/.web/infcloud"): + status, headers, answer = httputils.serve_folder( + self.infcloud_folder, base_prefix, path, "/.web/infcloud") + else: + status, headers, answer = super().get( + environ, base_prefix, path, user) + if status == client.OK and path in ("/.web/", "/.web/index.html"): + answer = answer.replace(b"""\