fix color support

5f2245c35f introduced an additional alias for the
http://apple.com/ns/ical namespace. this can cause problems.
This commit is contained in:
Felix Lange 2014-11-11 21:26:29 +01:00
parent 063f7de7a2
commit 20b1a29149
2 changed files with 5 additions and 6 deletions

View File

@ -455,9 +455,9 @@ class Collection(object):
def color(self):
"""Collection color."""
with self.props as props:
if "A:calendar-color" not in props:
props["A:calendar-color"] = "#%x" % randint(0, 255 ** 3 - 1)
return props["A:calendar-color"]
if "ICAL:calendar-color" not in props:
props["ICAL:calendar-color"] = "#%x" % randint(0, 255 ** 3 - 1)
return props["ICAL:calendar-color"]
@property
def headers(self):

View File

@ -49,7 +49,6 @@ from . import client, config, ical
NAMESPACES = {
"A": "http://apple.com/ns/ical/",
"C": "urn:ietf:params:xml:ns:caldav",
"CR": "urn:ietf:params:xml:ns:carddav",
"D": "DAV:",
@ -228,7 +227,7 @@ def propfind(path, xml_request, collections, user=None):
_tag("D", "displayname"),
_tag("D", "owner"),
_tag("D", "getetag"),
_tag("A", "calendar-color"),
_tag("ICAL", "calendar-color"),
_tag("CS", "getctag")]
# Writing answer
@ -343,7 +342,7 @@ def _propfind_response(path, item, props, user):
item.tag, item.headers, item.timezones)
elif tag == _tag("D", "displayname"):
element.text = item.name
elif tag == _tag("A", "calendar-color"):
elif tag == _tag("ICAL", "calendar-color"):
element.text = item.color
else:
human_tag = _tag_from_clark(tag)