| |
1 |
1 |
ad_page_contract { |
| |
2 |
2 |
|
| |
3 |
3 |
Multiple move page. |
| |
4 |
4 |
Supports any file-storage supported content_item |
| |
5 |
5 |
Allows move of single or multiple items |
| |
6 |
6 |
|
| |
7 |
7 |
@author Dave Bauer dave@thedesignexperience.org |
| |
8 |
8 |
|
| |
9 |
9 |
} -query { |
| |
10 |
10 |
object_id:notnull,integer,multiple |
| |
11 |
11 |
folder_id:integer,optional |
| |
12 |
12 |
{return_url ""} |
| |
13 |
13 |
{redirect_to_folder:boolean 0} |
| |
14 |
14 |
{show_items:boolean 0} |
| |
15 |
15 |
} |
| |
16 |
16 |
|
| |
|
17 |
set objects_to_move $object_id |
| |
17 |
18 |
set user_id [ad_conn user_id] |
| |
18 |
19 |
|
| |
19 |
20 |
set allowed_count 0 |
| |
20 |
21 |
set not_allowed_count 0 |
| |
21 |
22 |
|
| |
22 |
23 |
db_multirow -extend {move_message} move_objects get_move_objects "" { |
| |
23 |
24 |
if {$move_p} { |
| |
24 |
25 |
set move_message "" |
| |
25 |
26 |
incr allowed_count |
| |
26 |
27 |
} else { |
| |
27 |
28 |
set move_message [_ file_storage.Not_Allowed] |
| |
28 |
29 |
incr not_allowed_count |
| |
29 |
30 |
} |
| |
30 |
31 |
|
| |
31 |
32 |
} |
| |
32 |
33 |
|
| |
33 |
34 |
set total_count [template::multirow size move_objects] |
| |
34 |
35 |
|
| |
35 |
36 |
if {$not_allowed_count > 0} { |
| |
36 |
37 |
set show_items 1 |
|
| |
62 |
63 |
-elements { |
| |
63 |
64 |
name {label \#file-storage.Files_to_be_moved\#} |
| |
64 |
65 |
move_message {} |
| |
65 |
66 |
} |
| |
66 |
67 |
|
| |
67 |
68 |
template::list::create \ |
| |
68 |
69 |
-name folder_tree \ |
| |
69 |
70 |
-pass_properties { item_id redirect_to_folder return_url } \ |
| |
70 |
71 |
-multirow folder_tree \ |
| |
71 |
72 |
-key folder_id \ |
| |
72 |
73 |
-no_data [_ file-storage.No_valid_destination_folders_exist] \ |
| |
73 |
74 |
-elements { |
| |
74 |
75 |
label { |
| |
75 |
76 |
label "\#file-storage.Choose_Destination_Folder\#" |
| |
76 |
77 |
link_url_col move_url |
| |
77 |
78 |
link_html {title "\#file-storage.Move_to_folder_title\#"} |
| |
78 |
79 |
display_template {<div style="text-indent: @folder_tree.level@em;">@folder_tree.label@</div>} |
| |
79 |
80 |
} |
| |
80 |
81 |
} |
| |
81 |
82 |
set root_folder_id [fs::get_root_folder] |
| |
|
83 |
set object_id $objects_to_move |
| |
82 |
84 |
db_multirow -extend {move_url} folder_tree get_folder_tree "" { |
| |
83 |
85 |
set move_url [export_vars -base "move" { object_id:multiple folder_id return_url }] |
| |
84 |
86 |
|
| |
|
87 |
|
| |
85 |
88 |
} |
| |
86 |
89 |
|
| |
87 |
90 |
} |
| |
88 |
91 |
|
| |
89 |
92 |
set context [list "\#file-storage.Move\#"] |
| |
90 |
93 |
set title "\#file-storage.Move\#" |