⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 save_subs.cgi

📁 Unix下基于Web的管理工具
💻 CGI
字号:
#!/usr/local/bin/perl# save_subs.cgi# Save subscription optionsrequire './majordomo-lib.pl';&ReadParse();%access = &get_module_acl();&can_edit_list(\%access, $in{'name'}) ||	&error("You are not allowed to edit this mailing list");$list = &get_list($in{'name'}, &get_config());$conf = &get_list_config($list->{'config'});&save_list_directive($conf, $list->{'config'}, "subscribe_policy",		     $in{'subscribe_policy'}.$in{'subscribe_policy_c'});&save_list_directive($conf, $list->{'config'}, "unsubscribe_policy",		     $in{'unsubscribe_policy'});&save_choice($conf, $list->{'config'}, "welcome");&save_choice($conf, $list->{'config'}, "strip");&save_choice($conf, $list->{'config'}, "announcements");&save_choice($conf, $list->{'config'}, "administrivia");&save_opt($conf, $list->{'config'}, "admin_passwd", \&check_pass);&save_choice($conf, $list->{'config'}, "moderate");&save_opt($conf, $list->{'config'}, "moderator", \&check_email);&save_opt($conf, $list->{'config'}, "approve_passwd", \&check_pass);$in{'owner'} || &error("Missing owner's email address");$in{'approval'} || &error("Missing approval email address");$aliases_files = &get_aliases_file();@aliases = &foreign_call("sendmail", "list_aliases", $aliases_files);foreach $a (@aliases) {	$listowner = $a if (lc($a->{'name'}) eq lc("$in{'name'}-owner"));	$ownerlist = $a if (lc($a->{'name'}) eq lc("owner-$in{'name'}"));	$approval = $a if (lc($a->{'name'}) eq lc("$in{'name'}-approval"));	}&foreign_call('sendmail', 'modify_alias', $listowner,	      { 'name' => "$in{'name'}-owner",		'values' => [ $in{'owner'} ],		'enabled' => 1 }) if ($listowner);&foreign_call('sendmail', 'modify_alias', $ownerlist,	      { 'name' => "owner-$in{'name'}",		'values' => [ $in{'owner'} ],		'enabled' => 1 }) if ($ownerlist);&foreign_call('sendmail', 'modify_alias', $approval,	      { 'name' => "$in{'name'}-approval",		'values' => [ $in{'approval'} ],		'enabled' => 1 }) if ($approval);&flush_file_lines();&redirect("edit_list.cgi?name=$in{'name'}", "mailing list");sub check_email{return $_[0] =~ /^\S+$/ ? undef : "Missing or invalid moderator address";}sub check_pass{return $_[0] =~ /^\S+$/ ? undef : "Missing or invalid password";}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -