mirror of
https://github.com/webmin/webmin.git
synced 2025-07-23 00:30:33 +00:00
74 lines
2.1 KiB
Perl
Executable File
74 lines
2.1 KiB
Perl
Executable File
#!/usr/local/bin/perl
|
|
# Show the details of one schedule
|
|
|
|
require './bacula-backup-lib.pl';
|
|
&ReadParse();
|
|
$conf = &get_director_config();
|
|
@schedules = &find("Schedule", $conf);
|
|
if ($in{'new'}) {
|
|
&ui_print_header(undef, $text{'schedule_title1'}, "");
|
|
$mems = [ ];
|
|
$schedule = { };
|
|
}
|
|
else {
|
|
&ui_print_header(undef, $text{'schedule_title2'}, "");
|
|
$schedule = &find_by("Name", $in{'name'}, \@schedules);
|
|
$schedule || &error($text{'schedule_egone'});
|
|
$mems = $schedule->{'members'};
|
|
}
|
|
|
|
# Show details
|
|
print &ui_form_start("save_schedule.cgi", "post");
|
|
print &ui_hidden("new", $in{'new'}),"\n";
|
|
print &ui_hidden("old", $in{'name'}),"\n";
|
|
print &ui_table_start($text{'schedule_header'}, "width=100%", 4);
|
|
|
|
# Schedule
|
|
print &ui_table_row($text{'schedule_name'},
|
|
&ui_textbox("name", $name=&find_value("Name", $mems), 40), 3);
|
|
|
|
# Run files
|
|
@runs = &find_value("Run", $schedule->{'members'});
|
|
@pools = &find("Pool", $conf);
|
|
&sort_by_name(\@pools);
|
|
$rtable = &ui_columns_start([ $text{'schedule_level'},
|
|
$text{'schedule_pool'},
|
|
$text{'schedule_times'} ], "width=100%");
|
|
$i = 0;
|
|
foreach $r (@runs, undef, undef, undef) {
|
|
# Parse out the level and pool
|
|
$tags = { };
|
|
if ($r) {
|
|
($tags, $r) = &extract_schedule($r);
|
|
}
|
|
$sched = &parse_schedule($r);
|
|
$rtable .= &ui_columns_row([
|
|
&ui_select("level_$i", $tags->{'Level'},
|
|
[ [ "", " " ], [ "Full" ],
|
|
[ "Incremental" ], [ "Differential" ] ],
|
|
1, 0, 1),
|
|
&ui_select("pool_$i", $tags->{'Pool'},
|
|
[ [ "", "<$text{'default'}>" ],
|
|
map { my $pn = &find_value("Name",
|
|
$_->{'members'}); [ $pn ] } @pools ],
|
|
1, 0, 1),
|
|
&ui_textbox("times_$i", $r, 50, 0, undef,
|
|
$sched || !$r ? "readonly" : "")." ".
|
|
&schedule_chooser_button("times_$i") ]);
|
|
$i++;
|
|
}
|
|
$rtable .= &ui_columns_end();
|
|
print &ui_table_row($text{'schedule_runs'}, $rtable);
|
|
|
|
# All done
|
|
print &ui_table_end();
|
|
if ($in{'new'}) {
|
|
print &ui_form_end([ [ "create", $text{'create'} ] ]);
|
|
}
|
|
else {
|
|
print &ui_form_end([ [ "save", $text{'save'} ],
|
|
[ "delete", $text{'delete'} ] ]);
|
|
}
|
|
&ui_print_footer("list_schedules.cgi", $text{'schedules_return'});
|
|
|