Project

General

Profile

Download (1.11 KB) Statistics
| Branch: | Revision:
1
#!/usr/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

    
(41-41/46)