====
TODO
====

Error Handling
--------------

- write a error widget for the Forbidden exception.

- more documentation.

- I added a `propertyname' to the IDAVException interface. This seems a bit
  random now and should be taught over.

- Add support for setting the pre/post condition XML elements within a
  a error multi-status view. See section 16 in
  draft-ietf-webdav-rfc2518bis-15.txt. Still will probable result in spliting
  up the webdav exceptions. For example AlreadyLocked breaks up into two
  exceptions. One for when the the object is locked and the other for when
  the object is locked but the supplied lock request uri doesn't match the
  current lock token request uri annotation.

- Finish the support for setting the responsedescription XML element within
  the multi-status elements.

Locking
-------

- test locking default timeout - this is an application specific problem. So
  the IDAVLockmanager should be dealing with accepting or rejecting the
  requested timeout.

- lock on unmapped urls doesn't work yet. Zope3 will need to be changed
  to get this to work.

Misc
----

- Unicode handling - make sure that this works has it is supposed to.

- allow configuring certain parts of the WebDAV protocol like default timeouts
  on locks, and allowing depth = infinity on PROPFIND requests via ZCML.

- the option request handler needs to be fixed.

- propfind, proppatch - if any property update, view goes horrible wrong then
  a 500 status code needs to be updated.

Finally
=======

XXX's - all these need to be removed.
