| |
86 |
86 |
} elseif { [string equal $is_template "t"] } { |
| |
87 |
87 |
set delete_proc [db_map template_delete] |
| |
88 |
88 |
set delete_key "template_id" |
| |
89 |
89 |
} else { |
| |
90 |
90 |
set delete_proc [db_map item_delete] |
| |
91 |
91 |
set delete_key "item_id" |
| |
92 |
92 |
} |
| |
93 |
93 |
|
| |
94 |
94 |
# the following SQL will have this form: |
| |
95 |
95 |
# content_something.delete( |
| |
96 |
96 |
# something_id => :del_item_id |
| |
97 |
97 |
# ); |
| |
98 |
98 |
|
| |
99 |
99 |
if { [catch { db_exec_plsql delete_items " |
| |
100 |
100 |
begin |
| |
101 |
101 |
$delete_proc ( |
| |
102 |
102 |
$delete_key => :del_item_id |
| |
103 |
103 |
); |
| |
104 |
104 |
end;" } errmsg] } { |
| |
105 |
105 |
ns_log notice \ |
| |
106 |
|
"../../sitemap/delete.tcl caught error in dml: $sql - $errmsg" |
| |
|
106 |
"../../sitemap/delete.tcl caught error in dml: - $errmsg" |
| |
107 |
107 |
ns_log notice \ |
| |
108 |
108 |
"../../sitemap/delete.tcl - Item $del_item_id was not deleted" |
| |
109 |
109 |
} |
| |
110 |
110 |
|
| |
111 |
111 |
# build a list of parent items whose paginator cache needs flushing |
| |
112 |
112 |
foreach parent_id $flush_list { |
| |
113 |
113 |
# flush as few times as necessary |
| |
114 |
114 |
if { [lsearch -exact $parents $parent_id] == -1 } { |
| |
115 |
115 |
# flush cache |
| |
116 |
116 |
lappend parents $parent_id |
| |
117 |
117 |
|
| |
118 |
118 |
if { $parent_id == [cm::modules::${mount_point}::getRootFolderID] } { |
| |
119 |
119 |
set parent_id "" |
| |
120 |
120 |
} |
| |
121 |
121 |
cms_folder::flush $mount_point $parent_id |
| |
122 |
122 |
|
| |
123 |
123 |
} |
| |
124 |
124 |
} |
| |
125 |
125 |
} |
| |
126 |
126 |
} |