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.1.2.2 -r1.1.2.3 --- openacs-4/packages/file-storage/www/doc/design.adp 25 Aug 2015 18:02:21 -0000 1.1.2.2 +++ openacs-4/packages/file-storage/www/doc/design.adp 9 Jun 2016 13:03:12 -0000 1.1.2.3 @@ -29,7 +29,7 @@ any risk that a cracker-uploaded file will be executed as code
  • Retrieve historical versions of a file
  • We want something that is relatively secure, and can be extended -and maintained by any ArsDigita programmer, i.e., something +and maintained by any ArsDigita programmer, i.e., something that requires only AOLserver Tcl and Oracle skills.

    In ACS 4, File Storage can be implemented on top of the Content Repository. Thus, there is no data model associated with File @@ -64,7 +64,7 @@ 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 +(e.g., explicitly granting permission to an outsider on a file in a group's private tree did not actually give that person access to the file) and was not as flexible as people desired. The ACS 4 version includes folder read, write and delete @@ -170,104 +170,104 @@

    Tcl API

    children_have_permission_p

    -children_have_permission_p [ -user_id user_id ] item_idprivilege
    +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.
    -
    Switches:
    --user_id (optional)
    -
    Parameters:
    -item_id
    privilege
    +
    Switches:
    +-user_id (optional)
    +
    Parameters:
    +item_id
    privilege

    fs_context_bar_list

    -fs_context_bar_list [ -final final ] item_id
    +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 corresponding to item_id will be used.
    -
    Switches:
    --final (optional)
    -
    Parameters:
    -item_id
    +
    Switches:
    +-final (optional)
    +
    Parameters:
    +item_id

    fs_file_downloader

    -fs_file_downloader connkey
    +fs_file_downloader connkey
     
    Sends the requested file to the user. Note that the path has the original file name, so the browser will have a sensible name if you save the file. Version downloads are supported by looking for the form variable version_id. We don't actually check that the version_id matches the path, we just serve it up.
    -
    Parameters:
    -conn
    key
    +
    Parameters:
    +conn
    key

    fs_file_p

    -fs_file_p file_id
    +fs_file_p file_id
     
    Returns 1 if the file_id corresponds to a file in the file-storage system. Returns 0 otherwise.
    -
    Parameters:
    -file_id
    +
    Parameters:
    +file_id

    fs_folder_p

    -fs_folder_p folder_id
    +fs_folder_p folder_id
     
    Returns 1 if the folder_id corresponds to a folder in the file-storage system. Returns 0 otherwise.
    -
    Parameters:
    -folder_id
    +
    Parameters:
    +folder_id

    fs_get_folder_name

    -fs_get_folder_name folder_id
    +fs_get_folder_name folder_id
     
    Returns the name of a folder.
    -
    Parameters:
    -folder_id
    +
    Parameters:
    +folder_id

    fs_root_folder

    -fs_root_folder [ -package_id package_id ]
    +fs_root_folder [ -package_id package_id ]
     
    Returns the root folder for the file storage system.
    -
    Switches:
    --package_id (optional)
    +
    Switches:
    +-package_id (optional)

    fs_version_p

    -fs_version_p version_id
    +fs_version_p version_id
     
    Returns 1 if the version_id corresponds to a version in the file-storage system. Returns 0 otherwise.
    -
    Parameters:
    -version_id
    +
    Parameters:
    +version_id