Handle hostnames with upper-case letters
[webmin.git] / cluster-passwd / edit_passwd.cgi
1 #!/usr/local/bin/perl
2 # edit_passwd.cgi
3
4 require './cluster-passwd-lib.pl';
5 &ReadParse();
6 &error_setup($text{'passwd_err'});
7
8 @ulist = &get_all_users();
9 ($user) = grep { $_->{'user'} eq $in{'user'} } @ulist;
10 $user || &error($text{'passwd_euser'});
11
12 &can_edit_passwd($user) || &error($passwd::text{'passwd_ecannot'});
13
14 # Show password change form
15 &ui_print_header(undef, $passwd::text{'passwd_title'}, "");
16
17 print &ui_form_start("save_passwd.cgi", "post");
18 print &ui_hidden("user", $user->{'user'});
19 print &ui_hidden("one", $in{'one'});
20 print &ui_table_start($passwd::text{'passwd_header'}, undef, 2);
21
22 $user->{'real'} =~ s/,.*$//;
23 print &ui_table_row($passwd::text{'passwd_for'},
24                     $user->{'user'}.
25                     ($user->{'real'} ? " ($user->{'real'})" : ""));
26
27 if ($access{'old'} == 1 ||
28     $access{'old'} == 2 && $user->{'user'} ne $remote_user) {
29         print &ui_table_row($passwd::text{'passwd_old'},
30                             &ui_password("old", undef, 25));
31         }
32
33 print &ui_table_row($passwd::text{'passwd_new'},
34                     &ui_password("new", undef, 25));
35
36 if ($access{'repeat'}) {
37         print &ui_table_row($passwd::text{'passwd_repeat'},
38                             &ui_password("repeat", undef, 25));
39         }
40
41 if ($access{'others'} == 2) {
42         print &ui_table_row(undef,
43             &ui_checkbox("others", 1, $passwd::text{'passwd_others'}, 1), 2);
44         }
45
46 print &ui_table_row(undef,
47                     &ui_submit($passwd::text{'passwd_change'})."\n".
48                     &ui_reset($passwd::text{'passwd_reset'}), 2);
49 print &ui_table_end();
50 print &ui_form_end();
51
52 &ui_print_footer($in{'one'} ? ( "/", $text{'index'} )
53                             : ( "", $passwd::text{'index_return'} ));
54