oacs-dav-procs.tcl

Support for tDAV Tcl webDAV implementation

Location:
packages/oacs-dav/tcl/oacs-dav-procs.tcl
Created:
2003-09-11
Author:
Dave Bauer <dave@thedesignexperience.org>
CVS Identification:
$Id: oacs-dav-procs.tcl,v 1.24.2.10 2023/07/10 09:41:44 gustafn Exp $

Procedures in this file

Detailed information

oacs_dav::authorize (public)

 oacs_dav::authorize [ args... ]

check is user_id has permission to perform the WebDAV method on the URI

Testcases:
No testcase defined.

oacs_dav::children_have_permission_p (public)

 oacs_dav::children_have_permission_p [ -user_id user_id ] \
    [ -item_id item_id ] [ -privilege privilege ]

Check permission on child items of item_id for user_id with privilege

Switches:
-user_id (optional)
-item_id (optional)
-privilege (optional)
Returns:
returns 0 if user does not have privilege over all children otherwise return 1

Testcases:
oacs_dav_children_have_permission_p

oacs_dav::conn (public)

 oacs_dav::conn [ args... ]

shared data for WebDAV requests

Testcases:
oacs_dav_put, oacs_dav_mkcol

oacs_dav::conn_setup (public)

 oacs_dav::conn_setup

Setup oacs_dav::conn, authenticate user

Testcases:
No testcase defined.

oacs_dav::folder_enabled (public)

 oacs_dav::folder_enabled [ -folder_id folder_id ]
Switches:
-folder_id (optional)
Returns:
t if folder is webdav enabled, f if not

Testcases:
No testcase defined.

oacs_dav::handle_request (public)

 oacs_dav::handle_request [ args... ]

dispatch request to the proper service contract implementation

Testcases:
No testcase defined.

oacs_dav::impl::content_folder::copy (private)

 oacs_dav::impl::content_folder::copy

COPY DAV method for generic content folder

Testcases:
No testcase defined.

oacs_dav::impl::content_folder::delete (private)

 oacs_dav::impl::content_folder::delete

DELETE DAV method for generic content folder

Testcases:
No testcase defined.

oacs_dav::impl::content_folder::get (private)

 oacs_dav::impl::content_folder::get

GET DAV method for content folders can't get a folder

Testcases:
No testcase defined.

oacs_dav::impl::content_folder::head (public)

 oacs_dav::impl::content_folder::head

HEAD DAV method for content folders can't get a folder

Testcases:
No testcase defined.

oacs_dav::impl::content_folder::lock (private)

 oacs_dav::impl::content_folder::lock

LOCK DAV method for generic content folder

Testcases:
No testcase defined.

oacs_dav::impl::content_folder::mkcol (private)

 oacs_dav::impl::content_folder::mkcol

MKCOL DAV method for generic content folder

Author:
Dave Bauer

Testcases:
oacs_dav_mkcol

oacs_dav::impl::content_folder::move (private)

 oacs_dav::impl::content_folder::move

MOVE DAV method for generic content folder

Testcases:
No testcase defined.

oacs_dav::impl::content_folder::propfind (private)

 oacs_dav::impl::content_folder::propfind

PROPFIND DAV method for generic content folder

Testcases:
No testcase defined.

oacs_dav::impl::content_folder::proppatch (private)

 oacs_dav::impl::content_folder::proppatch

PROPPATCH DAV method for generic content folder user-properties are stored in the filesystem by tDAV this doesn't do anything until tDAV allows storage of user properties in the database

Testcases:
No testcase defined.

oacs_dav::impl::content_folder::put (private)

 oacs_dav::impl::content_folder::put

Testcases:
No testcase defined.

oacs_dav::impl::content_folder::unlock (private)

 oacs_dav::impl::content_folder::unlock

UNLOCK DAV method for generic content folder

Testcases:
No testcase defined.

oacs_dav::impl::content_revision::copy (private)

 oacs_dav::impl::content_revision::copy

COPY DAV method for generic content revision

Author:
Dave Bauer

Testcases:
No testcase defined.

oacs_dav::impl::content_revision::delete (private)

 oacs_dav::impl::content_revision::delete

DELETE DAV method for generic content revision

Author:
Dave Bauer

Testcases:
No testcase defined.

oacs_dav::impl::content_revision::get (private)

 oacs_dav::impl::content_revision::get

GET DAV method for generic content revision

Author:
Dave Bauer

Testcases:
No testcase defined.

oacs_dav::impl::content_revision::head (private)

 oacs_dav::impl::content_revision::head

GET DAV method for generic content revision

Author:
Dave Bauer

Testcases:
No testcase defined.

oacs_dav::impl::content_revision::lock (private)

 oacs_dav::impl::content_revision::lock

LOCK DAV method for generic content revision

Testcases:
No testcase defined.

oacs_dav::impl::content_revision::mkcol (private)

 oacs_dav::impl::content_revision::mkcol

MKCOL DAV method for generic content revision

Author:
Dave Bauer

Testcases:
No testcase defined.

oacs_dav::impl::content_revision::move (private)

 oacs_dav::impl::content_revision::move

MOVE DAV method for generic content revision

Author:
Dave Bauer

Testcases:
No testcase defined.

oacs_dav::impl::content_revision::propfind (private)

 oacs_dav::impl::content_revision::propfind

PROPFIND DAV method for generic content revision

Author:
Dave Bauer

Testcases:
No testcase defined.

oacs_dav::impl::content_revision::proppatch (private)

 oacs_dav::impl::content_revision::proppatch

PROPPATCH DAV method for generic content revision We store all user properties in the filesystem using tDAV for now So this is just a stub until we can get everything stored in the database.

Author:
Dave Bauer

Testcases:
No testcase defined.

oacs_dav::impl::content_revision::put (private)

 oacs_dav::impl::content_revision::put

PUT DAV method for generic content revision

Author:
Dave Bauer

Testcases:
oacs_dav_put

oacs_dav::impl::content_revision::unlock (private)

 oacs_dav::impl::content_revision::unlock

UNLOCK DAV method for generic content revision

Testcases:
No testcase defined.

oacs_dav::item_parent_folder_id (public)

 oacs_dav::item_parent_folder_id uri

get the folder_id of the parent of an item from the uri

Parameters:
uri (required)
Returns:
parent_folder_id or empty string if folder does not exist

Testcases:
No testcase defined.

oacs_dav::register_folder (public)

 oacs_dav::register_folder [ -enabled_p enabled_p ] folder_id node_id

add a uri to dav support

Switches:
-enabled_p (optional, defaults to "t")
Parameters:
folder_id (required)
node_id (required)
Register a root WebDAV enabled folder for a site node_id All requests that resolve to this site node id will be checked for WebDAV content using this folder as the root. Only one folder per node_id can be registered.

Testcases:
oacs_dav_put, oacs_dav_mkcol

oacs_dav::request_folder_id (public)

 oacs_dav::request_folder_id node_id

resolves a node_id to a DAV enabled folder_id

Parameters:
node_id (required)
site node_id of request
Returns:
folder_id, or empty string if no folder exists in dav_package_folder_map for this node_id

Testcases:
No testcase defined.

oacs_dav::request_site_node (public)

 oacs_dav::request_site_node uri

resolves uri to a site node_id

Parameters:
uri (required)

Testcases:
No testcase defined.

oacs_dav::set_user_id (public)

 oacs_dav::set_user_id

set user_id based on authentication header

Testcases:
No testcase defined.

oacs_dav::unregister_folder (public)

 oacs_dav::unregister_folder folder_id node_id

remove a uri from dav support

Parameters:
folder_id (required)
node_id (required)

Testcases:
No testcase defined.

oacs_dav::uri_prefix (public)

 oacs_dav::uri_prefix
Returns:
URI prefix to use for WebDAV requests

Testcases:
No testcase defined.
[ show source ]