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.25 -r1.26
--- openacs-4/packages/file-storage/www/folder-chunk.tcl 20 Apr 2004 21:13:40 -0000 1.25
+++ openacs-4/packages/file-storage/www/folder-chunk.tcl 17 May 2004 15:15:14 -0000 1.26
@@ -16,6 +16,9 @@
ad_return_complaint 1 [_ file-storage.lt_bad_folder_id_folder_]
ad_script_abort
}
+if {![exists_and_not_null allow_bulk_actions]} {
+ set allow_bulk_actions "0"
+}
set viewing_user_id [ad_conn user_id]
@@ -51,42 +54,47 @@
set root_folder_id [fs::get_root_folder]
}
-set folder_path [db_exec_plsql get_folder_path {}]
+if {![string equal $root_folder_id $folder_id]} {
+ set folder_path [db_exec_plsql get_folder_path {}]
+} else {
+ set folder_path ""
+}
set actions [list]
# 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\#"
+lappend actions "\#file-storage.Add_File\#" ${fs_url}file-add?[export_vars folder_id] "Upload a file in this folder" "\#file-storage.Create_a_URL\#" ${fs_url}simple-add?[export_vars folder_id] "Add a link to a web page" "\#file-storage.New_Folder\#" ${fs_url}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"
+ lappend actions "\#file-storage.Delete_this_folder\#" ${fs_url}folder-delete?[export_vars folder_id] "\#file-storage.Delete_this_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"
+ lappend actions "\#file-storage.Edit_Folder\#" "${fs_url}folder-edit?folder_id=$folder_id" "\#file-storage.Rename_this_folder\#"
+ lappend actions "\#file-storage.lt_Modify_permissions_on_1\#" "/permissions/one?[export_vars -override {{object_id $folder_id}} {return_url}]" "\#file-storage.lt_Modify_permissions_on_1\#"
}
#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 {
}] \
+ display_template {
}] \
name \
[list label [_ file-storage.Name] \
- link_url_col file_url \
+ display_template {@contents.name@
@contents.file_upload_name@} \
orderby_desc {fs_objects.name desc} \
orderby_asc {fs_objects.name asc}] \
content_size_pretty \
[list label [_ file-storage.Size] \
orderby_desc {content_size desc} \
orderby_asc {content_size asc}] \
type [list label [_ file-storage.Type] \
- orderby_desc {type desc} \
- orderby_asc {type asc}] \
+ display_col pretty_type \
+ orderby_desc {(sort_key = 0),pretty_type desc} \
+ orderby_asc {sort_key, pretty_type asc}] \
last_modified_pretty \
[list label [_ file-storage.Last_Modified] \
orderby_desc {last_modified_ansi desc} \
@@ -96,11 +104,18 @@
link_url_col properties_url]
]
+if {$allow_bulk_actions} {
+ set bulk_actions [list "Move" "move" "Move Checked Items to Another Folder" "Copy" "copy" "Copy Checked Items to Another Folder" "Delete" "delete" "Delete Checked Items"]
+} else {
+ set bulk_actions ""
+}
+
template::list::create \
-name contents \
-multirow contents \
-key object_id \
-actions $actions \
+ -bulk_actions $bulk_actions \
-filters {
folder_id {hide_p 1}
} \
@@ -114,13 +129,20 @@
db_multirow -extend { label icon last_modified_pretty content_size_pretty properties_link properties_url} contents select_folder_contents {} {
set last_modified_ansi [lc_time_system_to_conn $last_modified_ansi]
-
+
set last_modified_pretty [lc_time_fmt $last_modified_ansi "%x %X"]
- set content_size_pretty [lc_numeric $content_size]
if {[string equal $type "folder"]} {
+ set content_size_pretty [lc_numeric $content_size]
append content_size_pretty " [_ file-storage.items]"
+ set pretty_type "Folder"
} else {
- append content_size_pretty " [_ file-storage.bytes]"
+ set type [string trimleft [file extension $file_upload_name] . ]
+ if {$content_size < 1024} {
+ set content_size_pretty "[lc_numeric $content_size] [_ file-storage.bytes]"
+ } else {
+ set content_size_pretty "[lc_numeric [expr $content_size / 1024 ]] [_ file-storage.kb]"
+ }
+
}
set file_upload_name [fs::remove_special_file_system_characters -string $file_upload_name]
@@ -137,19 +159,19 @@
set properties_link ""
set properties_url ""
set icon "/resources/file-storage/folder.gif"
- set file_url "index?[export_vars {{folder_id $object_id}}]"
+ set file_url "${fs_url}index?[export_vars {{folder_id $object_id}}]"
}
url {
set properties_link [_ file-storage.properties]
- set properties_url "simple?[export_vars object_id]"
+ set properties_url "${fs_url}simple?[export_vars object_id]"
set icon "/resources/url-button.gif"
- set file_url ${url}
+ set file_url ${fs_url}${url}
}
default {
set properties_link [_ file-storage.properties]
- set properties_url "file?[export_vars {{file_id $object_id}}]"
+ set properties_url "${fs_url}file?[export_vars {{file_id $object_id}}]"
set icon "/resources/file-storage/file.gif"
- set file_url "view/${file_url}"
+ set file_url "${fs_url}view/${file_url}"
}
}