Index: openacs-4/packages/file-storage/www/copy.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/file-storage/www/copy.tcl,v diff -u -N -r1.5 -r1.5.2.1 --- openacs-4/packages/file-storage/www/copy.tcl 20 Mar 2005 15:44:29 -0000 1.5 +++ openacs-4/packages/file-storage/www/copy.tcl 2 Apr 2006 22:11:49 -0000 1.5.2.1 @@ -10,6 +10,7 @@ object_id:notnull,integer,multiple folder_id:integer,optional {return_url ""} + {root_folder_id ""} {redirect_to_folder:boolean 0} {show_items:boolean 0} } @@ -21,6 +22,7 @@ set peer_addr [ad_conn peeraddr] set allowed_count 0 set not_allowed_count 0 +set package_id [ad_conn package_id] db_multirow -extend {copy_message} copy_objects get_copy_objects "" { if {$copy_p} { @@ -53,7 +55,15 @@ template::multirow foreach copy_objects { db_transaction { if {![string equal $type "folder"] } { - db_exec_plsql copy_item {} + set file_rev_id [db_exec_plsql copy_item {}] + set file_id [content::revision::item_id -revision_id $file_rev_id] + set object_rev_id [content::item::get_best_revision -item_id $object_id] + + set object_path "[cr_fs_path][cr_create_content_file_path $object_id $object_rev_id]" + set file_path [cr_create_content_file_path $file_id $file_rev_id] + cr_create_content_file $file_id $file_rev_id $object_path + + callback fs::file_revision_new -package_id $package_id -file_id $file_id -parent_id $folder_id } else { db_exec_plsql copy_folder {} } @@ -87,7 +97,10 @@ display_template {