Handle hostnames with upper-case letters
[webmin.git] / mon / save_periods.cgi
1 #!/usr/local/bin/perl
2 # save_periods.cgi
3 # Save all period directives
4
5 require './mon-lib.pl';
6 &ReadParse();
7 &error_setup($text{'periods_err'});
8 $conf = &get_mon_config();
9 @operiods = &find("period", $conf);
10
11 for($i=0; defined($in{"name_$i"}); $i++) {
12         next if (!$in{"name_$i"});
13         $in{"name_$i"} =~ /^\S+$/ ||
14                 &error(&text('periods_ename', $in{"name_$i"}));
15         if (defined($in{"value_$i"})) {
16                 push(@periods,
17                     { 'name' => 'period',
18                       'values' => [ $in{"name_$i"}.":", $in{"value_$i"} ] } );
19                 }
20         else {
21                 local @pv;
22                 if (!$in{"days_def_$i"}) {
23                         push(@pv, "wd {".$in{"dfrom_$i"}."-".
24                                   $in{"dto_$i"}."}");
25                         }
26                 if (!$in{"hours_def_$i"}) {
27                         $in{"hfrom_$i"} =~ /^(\d+)(am|pm|)$/ ||
28                                 &error(&text('periods_ehour', $i+1));
29                         $in{"hto_$i"} =~ /^(\d+)(am|pm|)$/ ||
30                                 &error(&text('periods_ehour', $i+1));
31                         push(@pv, "hr {".$in{"hfrom_$i"}."-".
32                                   $in{"hto_$i"}."}");
33                         }
34                 push(@periods,
35                     { 'name' => 'period',
36                       'values' => [ $in{"name_$i"}.":", @pv ] } );
37                 }
38         }
39
40 for($i=0; $i<@operiods || $i<@periods; $i++) {
41         &save_directive($conf, $operiods[$i], $periods[$i]);
42         }
43 &flush_file_lines();
44
45 &redirect("");
46