Gallery2:Modules:webdav:devel - Gallery Codex
Personal tools


From Gallery Codex



  • Support saving files in Windows:
  • Does our WebDAV module or the WebDAV client need to support the 100 Continue status? Trouble is when you upload a big file, you're not prompted for username and password until after the file is transfered.
  • Mac OS X mime-type issue:
  • Address Windows login issue with bare w/. Bug #1694541
  • Possibly add active username to WebDAV URLs, for OS X?
  • Support disabling or at least testing if mod_dav is active? bug #1736862
  • Show a warning the Mount with WebDAV block if WebDAV checks fail, at least to the admin user.
  • ItemEditWebDav doesn't set right response status on error.
    • We could just drop using the put_response_helper, but it supports ranges which is kinda nice. Alternatively we could force set 500 Internal Server Error on errors in, as long as we don't set specialized response codes in
  • Support RFC 4331 if the quota module is installed.
    • Mac OS X client is requesting these properties. Should be easy to implement using GalleryQuotasHelper::getUserDiskQuota and GalleryQuotasHelper::getUserDiskUsage, however they would eventually need their own API, like RewriteApi or HttpAuthInterface. Gallery is currently preferring QuotaInterface_1_0. Or should it be GalleryQuotaInterface_1_0? It's GallerySearchInterface_1_0. If a module uses the Gallery prefix, it's class might conflict with a class in the core module. If it doesn't use the Gallery prefix, it might conflict with a class in an embedded application.
  • This is an excellent WebDAV howto:
  • Fix permissions necessary to replace a resource. Bug #1686922
  • Support changing entities' class. Bug #1681406, review #167, review #176
  • Add config check for all WebDAV methods.
  • Test again with litmus once its move_collection bug is fixed (currently its using COPY instead of MOVE for that test)
  • Test again with litmus once we support COPY
  • Test again with litmus once the PROP tests are configurable (currently it wants to write to a namespace that we don't accept)
  • Bug: Fail if DELETE requests include a URL fragment (basic litmus test suite warning)
  • Bug: RFC 4918 6.1:
If a request causes the lock-root of any lock to become an unmapped URL, then the lock MUST also be deleted by that request.
The creator of a lock has special privileges to use the lock to modify the resource. When a locked resource is modified, a server MUST check that the authenticated principal matches the lock creator (in addition to checking for valid lock token submission).


Implementing $entity->copy shouldn't be difficult: