mirror of
https://github.com/webmin/webmin.git
synced 2025-07-23 00:30:33 +00:00
89 lines
2.6 KiB
Perl
Executable File
89 lines
2.6 KiB
Perl
Executable File
#!/usr/local/bin/perl
|
|
# Show the details of one file pool daemon
|
|
|
|
require './bacula-backup-lib.pl';
|
|
&ReadParse();
|
|
$conf = &get_director_config();
|
|
@pools = &find("Pool", $conf);
|
|
|
|
if ($in{'new'}) {
|
|
&ui_print_header(undef, $text{'pool_title1'}, "");
|
|
$mems = [ { 'name' => 'Pool Type',
|
|
'value' => 'Backup' },
|
|
{ 'name' => 'Recycle',
|
|
'value' => 'yes' },
|
|
{ 'name' => 'AutoPrune',
|
|
'value' => 'yes' },
|
|
{ 'name' => 'Volume Retention',
|
|
'value' => '365 days' },
|
|
];
|
|
if (&get_bacula_version_cached() < 2) {
|
|
push(@$mems,
|
|
{ 'name' => 'Accept Any Volume',
|
|
'value' => 'yes' });
|
|
}
|
|
$pool = { 'members' => $mems };
|
|
}
|
|
else {
|
|
&ui_print_header(undef, $text{'pool_title2'}, "");
|
|
$pool = &find_by("Name", $in{'name'}, \@pools);
|
|
$pool || &error($text{'pool_egone'});
|
|
$mems = $pool->{'members'};
|
|
}
|
|
|
|
# Show details
|
|
print &ui_form_start("save_pool.cgi", "post");
|
|
print &ui_hidden("new", $in{'new'}),"\n";
|
|
print &ui_hidden("old", $in{'name'}),"\n";
|
|
print &ui_table_start($text{'pool_header'}, "width=100%", 4);
|
|
|
|
# Pool name
|
|
print &ui_table_row($text{'pool_name'},
|
|
&ui_textbox("name", $name=&find_value("Name", $mems), 40), 3);
|
|
|
|
# Pool type
|
|
print &ui_table_row($text{'pool_type'},
|
|
&ui_select("type", $type=&find_value("Pool Type", $mems),
|
|
[ map { [ $_, $_ =~ /^\*(.*)$/ ? $1 : $_ ] }
|
|
@pool_types ], 1, 0, 1));
|
|
|
|
# Maximum Volume Jobs
|
|
$max = &find_value("Maximum Volume Jobs", $mems);
|
|
print &ui_table_row($text{'pool_max'},
|
|
&ui_radio("maxmode", $max == 0 ? 0 : 1,
|
|
[ [ 0, $text{'pool_unlimited'} ],
|
|
[ 1, &ui_textbox('max', $max == 0 ? "" : $max, 6) ] ]));
|
|
|
|
# Retention period
|
|
$reten = &find_value("Volume Retention", $mems);
|
|
print &ui_table_row($text{'pool_reten'},
|
|
&show_period_input("reten", $reten));
|
|
|
|
# Various yes/no options
|
|
print &ui_table_row($text{'pool_recycle'},
|
|
&bacula_yesno("recycle", "Recycle", $mems));
|
|
print &ui_table_row($text{'pool_auto'},
|
|
&bacula_yesno("auto", "AutoPrune", $mems));
|
|
if (&get_bacula_version_cached() < 2) {
|
|
print &ui_table_row($text{'pool_any'},
|
|
&bacula_yesno("any", "Accept Any Volume", $mems));
|
|
}
|
|
print &ui_table_row($text{'pool_autolabel'},
|
|
&ui_textbox("autolabel", $name=&find_value("LabelFormat", $mems), 20), 3);
|
|
print &ui_table_row($text{'pool_maxvolsize'},
|
|
&ui_textbox("maxvolsize", $name=&find_value("Maximum Volume Bytes", $mems), 10), 3);
|
|
|
|
|
|
# All done
|
|
print &ui_table_end();
|
|
if ($in{'new'}) {
|
|
print &ui_form_end([ [ "create", $text{'create'} ] ]);
|
|
}
|
|
else {
|
|
print &ui_form_end([ [ "save", $text{'save'} ],
|
|
[ "status", $text{'pool_status'} ],
|
|
[ "delete", $text{'delete'} ] ]);
|
|
}
|
|
&ui_print_footer("list_pools.cgi", $text{'pools_return'});
|
|
|