Viewing file: clientstatus_form.cgi (2.51 KB) -rwxr-xr-x Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#!/usr/bin/perl # Show a form for displaying the status of one client
require './bacula-backup-lib.pl'; &ui_print_header(undef, $text{'clientstatus_title'}, "", "clientstatus"); &ReadParse();
# Client selector @clients = sort { lc($a->{'name'}) cmp lc($b->{'name'}) } grep { !&is_oc_object($_, 1) } &get_bacula_clients(); if (@clients == 1) { $in{'client'} ||= $clients[0]->{'name'}; } print &ui_form_start("clientstatus_form.cgi"); print "<b>$text{'clientstatus_show'}</b>\n"; print &ui_select("client", $in{'client'}, [ map { [ $_->{'name'}, &text('clientstatus_on', $_->{'name'}, $_->{'address'}) ] } @clients ]); print &ui_submit($text{'clientstatus_ok'}),"<br>\n"; print &ui_form_end();
if ($in{'client'}) { # Show this client ($msg, $ok, $run, $done) = &get_client_status($in{'client'});
if ($ok) { print &text('clientstatus_msg', $in{'client'}, $msg),"<p>\n";
# Running jobs print &ui_subheading($text{'dirstatus_run'}); if (@$run) { print &ui_form_start("cancel_jobs.cgi", "post"); print &ui_hidden("client", $in{'client'}),"\n"; @links = ( &select_all_link("d", 1), &select_invert_link("d", 1) ); print &ui_links_row(\@links); @tds = ( "width=5" ); print &ui_columns_start([ "", $text{'dirstatus_name'}, $text{'dirstatus_id'}, $text{'dirstatus_date2'} ], "100%", 0, \@tds); foreach $j (@$run) { print &ui_checked_columns_row([ &joblink($j->{'name'}), $j->{'id'}, $j->{'date'} ], \@tds, "d", $j->{'id'}); } print &ui_columns_end(); print &ui_links_row(\@links); print &ui_form_end([ [ "cancel", $text{'dirstatus_cancel'} ] ]); } else { print "<b>$text{'dirstatus_runnone'}</b><p>\n"; }
# Completed jobs print &ui_subheading($text{'dirstatus_done'}); if (@$done) { print &ui_columns_start([ $text{'dirstatus_name'}, $text{'dirstatus_id'}, $text{'dirstatus_level'}, $text{'dirstatus_date'}, $text{'dirstatus_bytes'}, $text{'dirstatus_files'}, $text{'dirstatus_status2'} ], "100%"); foreach $j (@$done) { print &ui_columns_row([ &joblink($j->{'name'}), $j->{'id'}, $j->{'level'}, $j->{'date'}, &nice_size($j->{'bytes'}), $j->{'files'}, $j->{'status'} ]); } print &ui_columns_end(); } else { print "<b>$text{'dirstatus_donenone'}</b><p>\n"; } } else { # Couldn't connect! print "<b>",&text('clientstatus_err', $in{'client'}, $msg), "</b><p>\n"; } }
&ui_print_footer("", $text{'index_return'});
|