Enhance collection discovering
When the request path leads to a non-existing item, try to create the Collection object according to an existing collection at request path's parent. This change means that the requests whose path leads to a collection that doesn't exist (at least MKCOL, MKCALENDAR and PUT) need to rely on the request path more than on the Collection path. It was already done for PUT, it's been fixed for MKCOL and MKCALENDAR. Fix #378.
This commit is contained in:
@@ -430,7 +430,7 @@ class Application(object):
|
||||
# TODO: use this?
|
||||
# timezone = props.get("C:calendar-timezone")
|
||||
collection = storage.Collection.create_collection(
|
||||
collection.path, tag="VCALENDAR")
|
||||
environ["PATH_INFO"], tag="VCALENDAR")
|
||||
for key, value in props.items():
|
||||
collection.set_meta(key, value)
|
||||
return client.CREATED, {}, None
|
||||
@@ -444,7 +444,7 @@ class Application(object):
|
||||
collection = write_collections[0]
|
||||
|
||||
props = xmlutils.props_from_request(content)
|
||||
collection = storage.Collection.create_collection(collection.path)
|
||||
collection = storage.Collection.create_collection(environ["PATH_INFO"])
|
||||
for key, value in props.items():
|
||||
collection.set_meta(key, value)
|
||||
return client.CREATED, {}, None
|
||||
|
Reference in New Issue
Block a user