Index: openacs-4/packages/file-storage/www/folder-chunk.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/file-storage/www/folder-chunk.tcl,v diff -u -r1.24 -r1.25 --- openacs-4/packages/file-storage/www/folder-chunk.tcl 27 Mar 2004 17:46:47 -0000 1.24 +++ openacs-4/packages/file-storage/www/folder-chunk.tcl 20 Apr 2004 21:13:40 -0000 1.25 @@ -20,8 +20,21 @@ set viewing_user_id [ad_conn user_id] permission::require_permission -party_id $viewing_user_id -object_id $folder_id -privilege "read" + set admin_p [permission::permission_p -party_id $viewing_user_id -object_id $folder_id -privilege "admin"] +set write_p $admin_p + +if {!$write_p} { + set write_p [permission::permission_p -party_id $viewing_user_id -object_id $folder_id -privilege "write"] +} + +set delete_p $admin_p + +if {!$delete_p} { + set delete_p [permission::permission_p -party_id $viewing_user_id -object_id $folder_id -privilege "delete"] +} + if {![exists_and_not_null n_past_days]} { set n_past_days 99999 } @@ -41,21 +54,27 @@ set folder_path [db_exec_plsql get_folder_path {}] set actions [list] -set actions [list "Upload File" file-add?[export_vars folder_id] "Upload a file in this folder" "Add Link" simple-add?[export_vars folder_id] "Add a link to a web page" "\#file-storage.New_Folder\#" folder-create?[export_vars {{parent_id $folder_id}}] "\#file-storage.Create_a_new_folder\#" ] -#if {$delete_p} { -# lappend actions "Delete Folder" folder-delete "Delete folder and all contents" -#} +# for now, invite users to upload, and then they will be asked to +# login if they are not. + + lappend actions "Upload File" file-add?[export_vars folder_id] "Upload a file in this folder" "Add Link" simple-add?[export_vars folder_id] "Add a link to a web page" "\#file-storage.New_Folder\#" folder-create?[export_vars {{parent_id $folder_id}}] "\#file-storage.Create_a_new_folder\#" + + +if {$delete_p} { + lappend actions "Delete Folder" folder-delete?[export_vars folder_id] "Delete folder" +} if {$admin_p} { set return_url [ad_conn url] lappend actions "Rename Folder" "folder-edit?folder_id=$folder_id" "Change the name of this folder" lappend actions "Folder Permissions" "/permissions/one?[export_vars -override {{object_id $folder_id}} {return_url}]" "Change the permissions of this folder" } #set n_past_filter_values [list [list "Yesterday" 1] [list [_ file-storage.last_week] 7] [list [_ file-storage.last_month] 30]] + set elements [list icon \ [list label "" \ - display_template {@contents.label@}] \ + display_template {#file-storage.@contents.type@#}] \ name \ [list label [_ file-storage.Name] \ link_url_col file_url \ @@ -112,24 +131,26 @@ set name [lang::util::localize $name] - if {[string equal $type url]} { - set label [_ file-storage.link] - set properties_link [_ file-storage.properties] - set properties_url "simple?[export_vars {{object_id $object_id}}]" - set icon "/resources/file-storage/link.gif" - set file_url $url - } elseif {![string equal $type folder]} { - set label [_ file-storage.file] - set properties_link [_ file-storage.properties] - set properties_url "file?[export_vars {{file_id $object_id}}]" - set icon "/resources/file-storage/file.gif" - set file_url "view/${file_url}" - } else { - set label [_ file-storage.folder] - set properties_link "" - set properties_url "" - set icon "/resources/file-storage/folder.gif" - set file_url "index?[export_vars {{folder_id $object_id}}]" + + switch -- $type { + folder { + set properties_link "" + set properties_url "" + set icon "/resources/file-storage/folder.gif" + set file_url "index?[export_vars {{folder_id $object_id}}]" + } + url { + set properties_link [_ file-storage.properties] + set properties_url "simple?[export_vars object_id]" + set icon "/resources/url-button.gif" + set file_url ${url} + } + default { + set properties_link [_ file-storage.properties] + set properties_url "file?[export_vars {{file_id $object_id}}]" + set icon "/resources/file-storage/file.gif" + set file_url "view/${file_url}" + } }