Handle hostnames with upper-case letters
[webmin.git] / shorewall / edit.cgi
1 #!/usr/bin/perl
2 # edit.cgi
3 # Display a form for editing or creating a table entry
4
5 require './shorewall-lib.pl';
6 &ReadParse();
7 &get_clean_table_name(\%in);
8 &can_access($in{'table'}) || &error($text{'list_ecannot'});
9 if ($in{'new'}) {
10         &ui_print_header(undef, $text{$in{'tableclean'}."_create"}, "");
11         if ($in{'before'} ne '') {
12                 $msg = &text('edit_before', $in{'before'}+1);
13                 }
14         elsif ($in{'after'} ne '') {
15                 $msg = &text('edit_after', $in{'after'}+1);
16                 }
17         print "<center><font size=+1>$msg</font></center>\n" if ($msg);
18         }
19 else {
20         &ui_print_header(undef, $text{$in{'tableclean'}."_edit"}, "");
21         $pfunc = &get_parser_func(\%in);
22         @table = &read_table_file($in{'table'}, $pfunc);
23         $row = $table[$in{'idx'}];
24         }
25
26 print "<form action=save.cgi>\n";
27 print "<input type=hidden name=table value='$in{'table'}'>\n";
28 print "<input type=hidden name=idx value='$in{'idx'}'>\n";
29 print "<input type=hidden name=new value='$in{'new'}'>\n";
30 print "<input type=hidden name=before value='$in{'before'}'>\n";
31 print "<input type=hidden name=after value='$in{'after'}'>\n";
32
33 print "<table border width=100%>\n";
34 print "<tr $tb> <td><b>",$text{$in{'tableclean'}."_header"},"</b></td> </tr>\n";
35 print "<tr $cb> <td><table width=100%>\n";
36
37 $ffunc = $in{'tableclean'}."_form";
38 &$ffunc(@$row);
39
40 print "</table></td></tr></table>\n";
41 print "<table width=100%>\n";
42 if ($in{'new'}) {
43         print "<td><input type=submit value='$text{'create'}'></td>\n";
44         }
45 else {
46         print "<td><input type=submit value='$text{'save'}'></td>\n";
47         print "<td align=right><input type=submit name=delete ",
48               "value='$text{'delete'}'></td>\n";
49         }
50 print "</table>\n";
51
52 print "</form>\n";
53
54 &ui_print_footer("list.cgi?table=$in{'table'}", $text{$in{'tableclean'}."_return"});
55