forked from hummypkg/webif
62 lines
1.1 KiB
Plaintext
Executable File
62 lines
1.1 KiB
Plaintext
Executable File
#!/mod/bin/jimsh
|
|
|
|
package require cgi
|
|
source /mod/webif/lib/setup
|
|
|
|
require rsv.class findhsvc
|
|
|
|
set dir /mod/var/backup
|
|
|
|
httpheader
|
|
|
|
set file [file tail [cgi_get restore_file]]
|
|
if {$file == 0} {
|
|
puts "No filename supplied."
|
|
exit
|
|
}
|
|
|
|
set ffile "/$dir/$file.rbk"
|
|
|
|
if {![file exists $ffile]} {
|
|
puts "Backup file <i>$file</i> does not exist."
|
|
exit
|
|
}
|
|
|
|
if {[catch { set fd [open $ffile r] } msg]} {
|
|
puts "Error opening <i>$file</i> - $msg"
|
|
exit
|
|
}
|
|
|
|
puts "Listing scheduled events from <i>$file</i>..."
|
|
|
|
set fields [lsort [[rsv] vars]]
|
|
|
|
set data [split [read $fd] "\n"]
|
|
|
|
set ver 1
|
|
|
|
foreach line $data {
|
|
if {[string match "# version *" $line]} {
|
|
set ver [lindex [split $line " "] 2]
|
|
puts "Backup version $ver"
|
|
}
|
|
set vals [split $line "\t"]
|
|
if {[lindex $vals 0] ne "event"} { continue }
|
|
set vars {}
|
|
set i 0
|
|
foreach f $fields {
|
|
if {$ver < 2 && $f eq "aulEventToRecordInfo"} continue
|
|
incr i
|
|
lappend vars $f [lindex $vals $i]
|
|
}
|
|
|
|
set rsv [rsv new $vars]
|
|
|
|
puts " [$rsv name] ([$rsv channel_name] [\
|
|
clock format [$rsv start]] - [clock format [$rsv end]])"
|
|
}
|
|
|
|
close $fd
|
|
rsv cleanup
|
|
|