Handle hostnames with upper-case letters
[webmin.git] / majordomo / edit_members.cgi
1 #!/usr/local/bin/perl
2 # edit_members.cgi
3 # Display a form for editing the members of some list
4
5 require './majordomo-lib.pl';
6 &ReadParse();
7 %access = &get_module_acl();
8 &can_edit_list(\%access, $in{'name'}) || &error($text{'edit_ecannot'});
9 $list = &get_list($in{'name'}, &get_config());
10 $desc = &text('edit_for', "<tt>".&html_escape($in{'name'})."</tt>");
11 &ui_print_header($desc, $text{'members_title'}, "");
12
13 if ($access{'edit'}) {
14         print "$text{'members_desc'}<br>\n";
15         }
16 else {
17         print "$text{'members_rodesc'}<br>\n";
18         }
19 print "<form action=save_members.cgi method=post enctype=multipart/form-data>\n";
20 print "<input type=hidden name=name value='$in{'name'}'>\n";
21 print "<textarea rows=15 cols=60 name=members>\n";
22 open(MEMS, $list->{'members'});
23 while(<MEMS>) {
24         print &html_escape($_);
25         }
26 close(MEMS);
27 print "</textarea>\n";
28 if (!$access{'edit'}) {
29         print "<p>\n";
30         }
31 else {
32         print "<br><input type=submit value=\"$text{'save'}\" name=update>\n";
33         print &ui_hr();
34
35         print "<table>\n";
36         print "<tr> <td><b>$text{'members_sub'}</b></td>\n";
37         print "<td><input name=addr_a size=40> ",
38               "<input type=submit name=add ",
39               "value=\"$text{'members_add'}\"></td> </tr>\n";
40
41         print "<tr> <td><b>$text{'members_unsub'}</b></td>\n";
42         print "<td><input name=addr_r size=40> ",
43               "<input type=submit name=remove ",
44               "value=\"$text{'members_rem'}\"></td> </tr>\n";
45         print "</table></form>\n";
46
47         print &ui_hr();
48         print "<form action=save_auto.cgi>\n";
49         print "<input type=hidden name=name value='$in{'name'}'>\n";
50         print "<table>\n";
51         $sync = $config{"sync_$in{'name'}"};
52         print "<tr> <td><b>$text{'members_sync'}</b></td> <td>\n";
53         printf "<input type=radio name=sync value=1 %s> %s\n",
54                 $sync ? "checked" : "", $text{'yes'};
55         printf "<input type=radio name=sync value=0 %s> %s</td> </tr>\n",
56                 $sync ? "" : "checked", $text{'no'};
57
58         $shost = $config{"shost_$in{'name'}"};
59         print "<tr><td><b>$text{'members_dom'}</b></td>\n";
60         print "<td><input name=shost size=40 value='$shost'>\n";
61         print "<input type=submit value=\"$text{'save'}\"></td> </tr>\n";
62
63         print "</table></form>\n";
64         }
65
66 &ui_print_footer("edit_list.cgi?name=$in{'name'}", $text{'edit_return'});
67