Handle hostnames with upper-case letters
[webmin.git] / pap / save_dialin.cgi
1 #!/usr/local/bin/perl
2 # save_dialin.cgi
3 # Create, update or delete a caller ID number
4
5 require './pap-lib.pl';
6 $access{'dialin'} || &error($text{'dialin_ecannot'});
7 &ReadParse();
8 @dialin = &parse_dialin_config();
9 $dialin = $dialin[$in{'idx'}] if (!$in{'new'});
10
11 &lock_file($config{'dialin_config'});
12 if ($in{'delete'}) {
13         # Delete the number
14         &delete_dialin($dialin, \@dialin);
15         }
16 else {
17         # Validate inputs
18         &error_setup($text{'dialin_err'});
19         $in{'mode'} != 2 || $in{'number'} =~ /^\d+$/ ||
20                 &error($text{'dialin_enumber'});
21
22         $dialin->{'number'} = $in{'mode'} == 0 ? 'all' :
23                               $in{'mode'} == 1 ? 'none' : $in{'number'};
24         $dialin->{'not'} = !$in{'allow'};
25         if ($in{'new'}) {
26                 # Add a new number
27                 &create_dialin($dialin, \@dialin);
28                 }
29         else {
30                 # Update an existing number
31                 &modify_dialin($dialin, \@dialin);
32                 }
33         }
34 &unlock_file($config{'dialin_config'});
35 &webmin_log($in{'delete'} ? "delete" : $in{'new'} ? "create" : "modify",
36             "dialin", $dialin->{'number'}, $dialin);
37 &redirect("list_dialin.cgi");
38