Index: openacs-4/packages/dotlrn-fs/tcl/dotlrn-fs-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-fs/tcl/dotlrn-fs-procs.tcl,v diff -u -r1.45 -r1.46 --- openacs-4/packages/dotlrn-fs/tcl/dotlrn-fs-procs.tcl 18 Apr 2002 19:24:47 -0000 1.45 +++ openacs-4/packages/dotlrn-fs/tcl/dotlrn-fs-procs.tcl 25 Apr 2002 20:34:59 -0000 1.46 @@ -351,7 +351,11 @@ # add the portlet here if {![empty_string_p $portal_id]} { fs_portlet::add_self_to_page \ - -page_id $page_id $portal_id $package_id $user_root_folder_id + -page_id $page_id \ + $portal_id \ + $package_id \ + $user_root_folder_id \ + -extra_params {style list} } # does this user already have a shared folder? Index: openacs-4/packages/fs-portlet/sql/oracle/fs-portlet-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/fs-portlet/sql/oracle/fs-portlet-create.sql,v diff -u -r1.10 -r1.11 --- openacs-4/packages/fs-portlet/sql/oracle/fs-portlet-create.sql 29 Mar 2002 19:25:48 -0000 1.10 +++ openacs-4/packages/fs-portlet/sql/oracle/fs-portlet-create.sql 25 Apr 2002 20:34:38 -0000 1.11 @@ -77,6 +77,14 @@ value => 't' ); + portal_datasource.set_def_param( + datasource_id => ds_id, + config_required_p => 't', + configured_p => 'f', + key => 'style', + value => 'tree' + ); + -- fs-specific params portal_datasource.set_def_param( datasource_id => ds_id, Index: openacs-4/packages/fs-portlet/tcl/fs-portlet-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/fs-portlet/tcl/fs-portlet-procs.tcl,v diff -u -r1.31 -r1.32 --- openacs-4/packages/fs-portlet/tcl/fs-portlet-procs.tcl 29 Mar 2002 19:25:48 -0000 1.31 +++ openacs-4/packages/fs-portlet/tcl/fs-portlet-procs.tcl 25 Apr 2002 20:34:38 -0000 1.32 @@ -18,14 +18,14 @@ ad_library { -Procedures to support the file-storage portlet + Procedures to support the file-storage portlet -Copyright Openforce, Inc. -Licensed under GNU GPL v2 + Copyright Openforce, Inc. + Licensed under GNU GPL v2 -@creation-date September 30 2001 -@author arjun@openforce.net -@cvs-id $Id$ + @creation-date September 30 2001 + @author arjun@openforce.net + @version $Id$ } @@ -43,53 +43,61 @@ ad_proc -public get_pretty_name { } { - return [ad_parameter \ + return [ad_parameter \ -package_id [apm_package_id_from_key [my_package_key]] \ "pretty_name"] } ad_proc -public link { } { - return "file-storage" + return "file-storage" } - ad_proc -public add_self_to_page { + ad_proc -public add_self_to_page { {-page_id ""} - portal_id - instance_id - folder_id + portal_id + instance_id + folder_id + {-extra_params ""} } { - Adds a fs PE to the given page. If there's already and fs pe, + Adds a fs PE to the given page. If there's already and fs pe, it appends the values to the pe's params. - - @return element_id The new element's id - @param portal_id The page to add self to - @param folder_id The folder to show - @author arjun@openforce.net - @creation-date Sept 2001 + + @param portal_id The page to add self to + @param folder_id The folder to show + + @return element_id The new element's id + + @author arjun@openforce.net + @creation-date Sept 2001 } { - set extra_params [list "package_id" $instance_id] + if {[empty_string_p $extra_params]} { + set extra_params [list] + } + lappend extra_params [list "package_id" $instance_id] + return [portal::add_element_or_append_id \ - -portal_id $portal_id \ - -page_id $page_id \ - -pretty_name [get_pretty_name] \ - -portlet_name [my_name] \ - -value_id $folder_id \ - -key folder_id \ - -extra_params $extra_params] + -portal_id $portal_id \ + -page_id $page_id \ + -pretty_name [get_pretty_name] \ + -portlet_name [my_name] \ + -value_id $folder_id \ + -key folder_id \ + -extra_params [eval concat $extra_params] + ] } - ad_proc -public remove_self_from_page { - portal_id - instance_id + ad_proc -public remove_self_from_page { + portal_id + instance_id folder_id } { - Removes a fs PE from the given page - - @param portal_id The page to remove self from - @author arjun@openforce.net - @creation-date Sept 2001 + Removes a fs PE from the given page + + @param portal_id The page to remove self from + @author arjun@openforce.net + @creation-date Sept 2001 } { set extra_params [list "package_id" $instance_id] @@ -101,54 +109,49 @@ -extra_params $extra_params } - ad_proc -public make_self_available { - portal_id + ad_proc -public make_self_available { + portal_id } { - Wrapper for the portal:: proc - - @param portal_id - @author arjun@openforce.net - @creation-date Nov 2001 + Wrapper for the portal:: proc + + @param portal_id + @author arjun@openforce.net + @creation-date Nov 2001 } { - portal::make_datasource_available \ - $portal_id [portal::get_datasource_id [my_name]] + portal::make_datasource_available $portal_id [portal::get_datasource_id [my_name]] } - ad_proc -public make_self_unavailable { - portal_id + ad_proc -public make_self_unavailable { + portal_id } { - Wrapper for the portal:: proc - - @param portal_id - @author arjun@openforce.net - @creation-date Nov 2001 + Wrapper for the portal:: proc + + @param portal_id + @author arjun@openforce.net + @creation-date Nov 2001 } { - portal::make_datasource_unavailable \ - $portal_id [portal::get_datasource_id [my_name]] + portal::make_datasource_unavailable $portal_id [portal::get_datasource_id [my_name]] } - ad_proc -public show { - cf + ad_proc -public show { + cf } { - Display the PE - - @return HTML string - @param cf A config array as a list - @author arjun@openforce.net - @creation-date Sept 2001 + Display the PE + + @return HTML string + @param cf A config array as a list + @author arjun@openforce.net + @creation-date Sept 2001 } { # no return call required with the helper proc portal::show_proc_helper \ -package_key [my_package_key] \ -config_list $cf } - ad_proc -public edit { + ad_proc -public edit { } { - return "" + return "" } } - - - Index: openacs-4/packages/fs-portlet/www/fs-portlet-oracle.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/fs-portlet/www/fs-portlet-oracle.xql,v diff -u -r1.7 -r1.8 --- openacs-4/packages/fs-portlet/www/fs-portlet-oracle.xql 7 Apr 2002 01:13:29 -0000 1.7 +++ openacs-4/packages/fs-portlet/www/fs-portlet-oracle.xql 25 Apr 2002 20:34:38 -0000 1.8 @@ -3,12 +3,15 @@ oracle8.1.6 - + select file_storage.get_package_id(fs_objects.object_id) as package_id, - (select site_node.url(site_nodes.node_id) - from site_nodes - where site_nodes.object_id = file_storage.get_package_id(fs_objects.object_id)) as url, + decode(fs_objects.type, 'URL', (select site_node.url(site_nodes.node_id) + from site_nodes + where site_nodes.object_id = file_storage.get_package_id(fs_objects.parent_id)), + (select site_node.url(site_nodes.node_id) + from site_nodes + where site_nodes.object_id = file_storage.get_package_id(fs_objects.object_id))) as url, fs_objects.object_id, fs_objects.name, fs_objects.live_revision, @@ -22,4 +25,27 @@ + + + select file_storage.get_package_id(fs_objects.object_id) as package_id, + decode(fs_objects.type, 'URL', (select site_node.url(site_nodes.node_id) + from site_nodes + where site_nodes.object_id = file_storage.get_package_id(fs_objects.parent_id)), + (select site_node.url(site_nodes.node_id) + from site_nodes + where site_nodes.object_id = file_storage.get_package_id(fs_objects.object_id))) as url, + fs_objects.object_id, + fs_objects.name, + fs_objects.live_revision, + fs_objects.type, + fs_objects.content_size + from fs_objects + where fs_objects.parent_id in ([join $list_of_folder_ids ", "]) + and 't' = acs_permission.permission_p(fs_objects.object_id, :user_id, 'read') + order by fs_objects.parent_id, + fs_objects.sort_key, + fs_objects.name + + + Index: openacs-4/packages/fs-portlet/www/fs-portlet.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/fs-portlet/www/fs-portlet.adp,v diff -u -r1.12 -r1.13 --- openacs-4/packages/fs-portlet/www/fs-portlet.adp 24 Apr 2002 20:05:35 -0000 1.12 +++ openacs-4/packages/fs-portlet/www/fs-portlet.adp 25 Apr 2002 20:34:38 -0000 1.13 @@ -52,13 +52,17 @@ + + + -  @folders.name@ + @folders.name@ @folders.type@ 0 items +   @@ -70,21 +74,37 @@ + - -   + + + + @folders.name@ + + @folders.type@ +   +   + + + + + + + @folders.name@ - File + @folders.type@ + @folders.content_size@ bytes - - [  + [  + view details -  ] - + +  ] + Index: openacs-4/packages/fs-portlet/www/fs-portlet.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/fs-portlet/www/fs-portlet.tcl,v diff -u -r1.6 -r1.7 --- openacs-4/packages/fs-portlet/www/fs-portlet.tcl 18 Apr 2002 19:24:47 -0000 1.6 +++ openacs-4/packages/fs-portlet/www/fs-portlet.tcl 25 Apr 2002 20:34:38 -0000 1.7 @@ -37,13 +37,15 @@ array set config $cf set user_id [ad_conn user_id] set list_of_folder_ids $config(folder_id) +set style $config(style) set user_root_folder [dotlrn_fs::get_user_root_folder -user_id $user_id] set user_root_folder_present_p 0 set write_p 0 set admin_p 0 set delete_p 0 set url "" + if {![empty_string_p $user_root_folder] && [lsearch -exact $list_of_folder_ids $user_root_folder] != -1} { set user_root_folder_present_p 1 @@ -58,21 +60,11 @@ set url [portal::mapping::get_url -object_id $user_root_folder] } -form create n_past_days_form - -set options {{0 -1} {1 1} {2 2} {3 3} {7 7} {14 14} {30 30}} -element create n_past_days_form n_past_days \ - -label "" \ - -datatype text \ - -widget select \ - -options $options \ - -html {onChange document.n_past_days_form.submit()} \ - -value $n_past_days - -if {[form is_valid n_past_days_form]} { - form get_values n_past_days_form n_past_days +set query "select_folder_contents" +if {![string equal $style "tree"]} { + set query "select_folders" } -db_multirow folders select_fs_objects {} +db_multirow folders $query {} ad_return_template