Handle hostnames with upper-case letters
[webmin.git] / htpasswd-file / edit.cgi
1 #!/usr/local/bin/perl
2 # edit.cgi
3 # Display a form for editing or creating a htpasswd user
4
5 require './htpasswd-file-lib.pl';
6 &ReadParse();
7 if ($in{'new'}) {
8         &ui_print_header(undef, $text{'edit_title1'}, "");
9         $user = { 'enabled' => 1 };
10         }
11 else {
12         &ui_print_header(undef, $text{'edit_title2'}, "");
13         if (!$access{'single'}) {
14                 $users = &list_users();
15                 $user = $users->[$in{'idx'}];
16                 }
17         }
18
19 print "<form action=save.cgi method=post>\n";
20 print "<input type=hidden name=idx value='$in{'idx'}'>\n";
21 print "<input type=hidden name=new value='$in{'new'}'>\n";
22 print "<table border>\n";
23 print "<tr $tb> <td><b>$text{'edit_header'}</b></td> </tr>\n";
24 print "<tr $cb> <td><table cellpadding=3>\n";
25
26 if ($access{'single'}) {
27         print "<tr> <td><b>$text{'edit_single'}</b></td>\n";
28         print "<td><input name=user size=20></td> </tr>\n";
29         }
30 else {
31         print "<tr> <td><b>$text{'edit_user'}</b></td>\n";
32         if ($access{'rename'} || $in{'new'}) {
33                 printf "<td><input name=user size=20 value='%s'></td> </tr>\n",
34                         &html_escape($user->{'user'});
35                 }
36         }
37
38 if ($access{'enable'}) {
39         print "<tr> <td><b>$text{'edit_enabled'}</b></td>\n";
40         printf "<td><input type=radio name=enabled value=1 %s> %s\n",
41                 $user->{'enabled'} ? "checked" : "", $text{'yes'};
42         printf "<input type=radio name=enabled value=0 %s> %s</td> </tr>\n",
43                 $user->{'enabled'} ? "" : "checked", $text{'no'};
44         }
45
46 print "<tr> <td valign=top><b>$text{'edit_pass'}</b></td> <td>\n";
47 if (!$in{'new'}) {
48         if (!$access{'single'}) {
49                 print "<input type=radio name=pass_def value=1 checked> ",
50                       "$text{'edit_pass1'}<br>\n";
51                 print "<input type=radio name=pass_def value=0>\n";
52                 }
53         if ($access{'repeat'}) {
54                 print "$text{'edit_passfrom'}\n";
55                 print "<input type=password name=oldpass size=20>\n";
56                 print "$text{'edit_passto'}\n";
57                 }
58         else {
59                 print "$text{'edit_pass0'}\n";
60                 }
61         }
62 print "<input type=password name=pass size=20></td> </tr>\n";
63
64 print "</table></td></tr></table>\n";
65 if ($in{'new'}) {
66         print "<input type=submit value='$text{'create'}'>\n";
67         }
68 else {
69         print "<input type=submit value='$text{'save'}'>\n";
70         print "<input type=submit name=delete value='$text{'delete'}'>\n"
71                 if ($access{'delete'} && !$access{'single'});
72         }
73 print "</form>\n";
74
75 if ($access{'single'}) {
76         &ui_print_footer("/", $text{'index'});
77         }
78 else {
79         &ui_print_footer("", $text{'index_return'});
80         }
81
82