Add support for the Caldav-Sync Android client
This commit is contained in:
parent
3356d3235f
commit
380acebd71
@ -39,11 +39,11 @@ import wsgiref.simple_server
|
||||
# pylint: disable=F0401
|
||||
try:
|
||||
from http import client, server
|
||||
from urllib.parse import unquote, urlparse
|
||||
from urllib.parse import quote, unquote, urlparse
|
||||
except ImportError:
|
||||
import httplib as client
|
||||
import BaseHTTPServer as server
|
||||
from urllib import unquote
|
||||
from urllib import quote, unquote
|
||||
from urlparse import urlparse
|
||||
# pylint: enable=F0401
|
||||
|
||||
@ -221,6 +221,14 @@ class Application(object):
|
||||
if calendars:
|
||||
status, headers, answer = function(
|
||||
environ, calendars, content, user)
|
||||
elif user and self.acl.has_right(user, user, password):
|
||||
# Check if the user/password couple matches,
|
||||
# redirect user to his principal home in this case
|
||||
location = "/%s/" % str(quote(user))
|
||||
log.LOGGER.info("redirecting to %s" % location)
|
||||
status = client.FOUND
|
||||
headers = {"Location": location}
|
||||
answer = "Redirecting to %s" % location
|
||||
else:
|
||||
status = client.UNAUTHORIZED
|
||||
headers = {
|
||||
|
@ -171,7 +171,10 @@ class Calendar(object):
|
||||
"""
|
||||
self.encoding = "utf-8"
|
||||
split_path = path.split("/")
|
||||
self.owner = split_path[0] if len(split_path) > 1 else None
|
||||
if (principal and split_path) or len(split_path) > 1:
|
||||
self.owner = split_path[0]
|
||||
else:
|
||||
self.owner = None
|
||||
self.path = os.path.join(FOLDER, path.replace("/", os.sep))
|
||||
self.local_path = path if path != '.' else ''
|
||||
self.is_principal = principal
|
||||
|
Loading…
Reference in New Issue
Block a user