ReturnHeaders
set package_id 990
proc get_val {dir parameter} {
set fh [open "$dir/$parameter"]
gets $fh $parameter
close $fh
return [set $parameter]
}
proc map {object_id_old} {
set result ""
if {$object_id_old ne ""} {
set result [db_string get_new {
select
m.object_id_new
from
old_new_map m
where
object_id_old = :object_id_old
}]
}
return $result
}
set all_items_dir "/acshome/nsadmin/filestorage-dump/cr-items"
set item_dir_list [glob "$all_items_dir/*"]
foreach item_dir $item_dir_list {
set item_id [file tail $item_dir]
set v_item_id [map $item_id]
set revision_dir_list [lsort -integer [glob "$item_dir/revisions/*"]]
foreach revision_dir $revision_dir_list {
set v_revision_id \
[content::revision::new \
-item_id $v_item_id \
-title [get_val $revision_dir title] \
-description [get_val $revision_dir description] \
-mime_type [get_val $revision_dir mime_type] \
-creation_user [map [get_val $revision_dir creation_user]] \
-creation_date [get_val $revision_dir creation_date] \
-creation_ip [get_val $revision_dir creation_ip] \
-nls_language [get_val $revision_dir nls_language] \
-storage_type lob \
-tmp_filename "$revision_dir/content" \
-package_id $package_id
]
db_dml add_mapping {
insert into old_new_map
(object_id_old, object_id_new)
values
(:revision_id, :v_revision_id)
}
set security_inherit_p [get_val $revision_dir security_inherit_p]
set last_modified [get_val $revision_dir last_modified]
set modifying_ip [get_val $revision_dir modifying_ip]
set modifying_user [map [get_val $revision_dir modifying_user]]
db_dml update_object {
update
acs_objects
set
security_inherit_p = :security_inherit_p,
last_modified = :last_modified,
modifying_ip = :modifying_ip,
modifying_user = :modifying_user
where
object_id = :v_revision_id
}
ns_write "=== wrote empty revision $revision_id / $v_revision_id
"
}
content::item::set_live_revision \
-revision_id [get_val $item_dir live_revision]
ns_write "added empty revisions to item $item_id / $v_item_id
"
}