Index: openacs-4/packages/file-storage/www/doc/design.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/file-storage/www/doc/design.adp,v diff -u -r1.4 -r1.5 --- openacs-4/packages/file-storage/www/doc/design.adp 30 Apr 2018 07:57:15 -0000 1.4 +++ openacs-4/packages/file-storage/www/doc/design.adp 3 Sep 2024 15:37:38 -0000 1.5 @@ -1,7 +1,11 @@ -{/doc/file-storage {File Storage}} {File Storage Design Document} +{/doc/file-storage/ {File Storage}} {File Storage Design Document} File Storage Design Document +

File Storage Design Document

by Kevin Scaldeferri @@ -61,7 +65,7 @@

V. Design Tradeoffs

Folder Permissions

Previous versions of File Storage have not included folder -permissions. (However they did have a concept of private group +permissions. (However, they did have a concept of private group trees.) The reasons for this were to simplify the code and the user experience. However, this system actually caused some confusion (e.g., explicitly granting permission to an outsider on a @@ -138,7 +142,7 @@

The main objects of File Storage are "folders" and "files". A "folder" is analogous to a subdirectory in the Unix/Windows-world filesystem. Folder objects -are stored as Content Repostory folders, thus folders are stored +are stored as Content Repository folders, thus folders are stored "as is" in the Content Repository.

"Files", however, can cause some confusion when stored in the Content Repository. A "file" in File Storage @@ -159,7 +163,7 @@ cr_revisions. Note that "title" is also used as the (unique within a folder) identifier of the file stored in cr_items. Thus, wrappers to the Content Repository API makes sure that the -naming convention is corect: cr_items.name attribute stores the +naming convention is correct: cr_items.name attribute stores the title of a file and all its versions, while the cr_revisions.title attribute stores the filename of the version uploaded into the Content Repository.

@@ -173,8 +177,7 @@

Tcl API

-

children_have_permission_p

-children_have_permission_p [ -user_id user_id ] item_idprivilege
+

children_have_permission_p

children_have_permission_p [ -user_id user_id ] item_idprivilege
 
This procedure, given a content item and a privilege, checks to see if there are any children of the item on which the user does not have that privilege. @@ -188,8 +191,7 @@
-

fs_context_bar_list

-fs_context_bar_list [ -final final ] item_id
+

fs_context_bar_list

fs_context_bar_list [ -final final ] item_id
 
Constructs the list to be fed to ad_context_bar appropriate for item_id. If -final is specified, that string will be the last item in the context bar. Otherwise, the name @@ -316,7 +318,7 @@ of File Storage, and starts deleting from the "leaves" or end nodes of the file tree up to the root folder. Later improvements in Content Repository will allow archiving of the -contents instaed of actually deleting them from the database.

+contents instead of actually deleting them from the database.

VIII. User Interface

The user interface attempts to replicate the file system metaphors familiar to most computer users, with folders containing