3 # Edit access control options
5 require './majordomo-lib.pl';
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 $conf = &get_list_config($list->{'config'});
11 $desc = &text('edit_for', "<tt>".&html_escape($in{'name'})."</tt>");
12 &ui_print_header($desc, $text{'access_title'}, "");
14 print "<form action=save_access.cgi>\n";
15 print "<input type=hidden name=name value='$in{'name'}'>\n";
16 print "<table border width=100%>\n";
17 print "<tr $tb> <td><b>$text{'access_header'}</b></td> </tr>\n";
18 print "<tr $cb> <td><table>\n";
21 print &choice_input("get_access", $text{'access_get'}, $conf,
22 "open",$text{'access_open'}, "list",$text{'access_list'},
23 "closed",$text{'access_closed'});
24 print &choice_input("index_access", $text{'access_index'}, $conf,
25 "open",$text{'access_open'}, "list",$text{'access_list'},
26 "closed",$text{'access_closed'});
30 print &choice_input("info_access", $text{'access_info'}, $conf,
31 "open",$text{'access_open'}, "list",$text{'access_list'},
32 "closed",$text{'access_closed'});
33 print &choice_input("intro_access", $text{'access_intro'}, $conf,
34 "open",$text{'access_open'}, "list",$text{'access_list'},
35 "closed",$text{'access_closed'});
39 print &choice_input("which_access", $text{'access_which'}, $conf,
40 "open",$text{'access_open'}, "list",$text{'access_list'},
41 "closed",$text{'access_closed'});
42 print &choice_input("who_access", $text{'access_who'}, $conf,
43 "open",$text{'access_open'}, "list",$text{'access_list'},
44 "closed",$text{'access_closed'});
47 $adv = &find_value("advertise", $conf);
48 $noadv = &find_value("noadvertise", $conf);
50 print "<td valign=top><b>$text{'access_adv'}</b></td> <td valign=top>\n";
51 printf "<input type=radio name=adv_mode value=0 %s> $text{'access_adv0'}<br>\n",
52 $adv !~ /\S/ && $noadv !~ /\S/ ? "checked" : "";
53 printf "<input type=radio name=adv_mode value=1 %s> $text{'access_adv1'}<br>\n",
54 $adv =~ /\S/ ? "checked" : "";
55 printf "<input type=radio name=adv_mode value=2 %s> $text{'access_adv2'}<br>\n",
56 $noadv =~ /\S/ ? "checked" : "";
57 print "</td> <td valign=top colspan=2>\n";
58 printf "<textarea rows=4 cols=40 name=adv>%s</textarea></td> </tr>\n",
59 $adv =~ /\S/ ? $adv : $noadv =~ /\S/ ? $noadv : "";
61 $res = &find_value("restrict_post", $conf);
62 $ldir = &perl_var_replace(&find_value("listdir", &get_config()),
64 $reslist = $res eq $in{'name'} || $res eq "$ldir/$in{'name'}";
65 print "<tr> <td><b>$text{'access_res'}</b></td> <td colspan=3>\n";
66 printf "<input type=radio name=res_mode value=0 %s> $text{'access_res0'}\n",
67 $res ? "" : "checked";
68 printf "<input type=radio name=res_mode value=1 %s> $text{'access_res1'}\n",
69 $reslist ? "checked" : "";
70 printf "<input type=radio name=res_mode value=2 %s> $text{'access_res2'}\n",
71 $res && !$reslist ? "checked" : "";
72 printf "<input name=res size=35 value=\"%s\">%s</td> </tr>\n",
73 $res && !$reslist ? $res : "", &file_chooser_button("res", 0);
76 print &multi_input("taboo_body", $text{'access_tbody'}, $conf);
80 print &multi_input("taboo_headers", $text{'access_theader'}, $conf);
83 print "<tr> <td colspan=4>$text{'access_taboo'}</td> </tr>\n";
85 print "</table></td></tr></table>\n";
86 print "<input type=submit value=\"$text{'save'}\"></form>\n";
88 &ui_print_footer("edit_list.cgi?name=$in{'name'}", $text{'edit_return'});