new release 3.1.2

This commit is contained in:
lars 2006-02-15 16:37:26 +00:00
parent 2643a63bf2
commit 13ce954e48
84 changed files with 4798 additions and 0 deletions

View file

@ -0,0 +1,39 @@
<div class="title">
<h1><?cs var:html_escape(Lang.Title.ConfigAdmin) ?></h1>
</div>
<div class="introduction">
<p><?cs var:html_escape(Lang.Introduction.ConfigAdmin) ?></p>
</div>
<fieldset class="form">
<legend><?cs var:html_escape(Lang.Legend.ConfigAdmin) ?> </legend>
<form method="post" action="<?cs var:ScriptName ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="config_subset" value="admin" />
<ul>
<!-- enable remote administration -->
<li><?cs call:checkbox("r") ?>
<ul>
<!-- administrators may request subscribers list -->
<li><?cs call:checkbox("l") ?></li>
<!-- administrators may edit text files via mail -->
<li><?cs call:checkbox("n") ?></li>
<!-- custom path to administrators database -->
<li><?cs call:setting("9") ?><?cs if:(Data.List.Settings.8.state && Data.List.Settings.9.state) ?>(<?cs var:Lang.Misc.ModSubOverridesRemote ?>)<?cs /if ?></li>
</ul></li>
<li><!-- include default form values -->
<?cs include:TemplateDir + '/form_common.cs' ?>
<input type="hidden" name="action" value="config_do" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.UpdateConfiguration) ?></button></li>
</ul>
</form>
</fieldset>

View file

@ -0,0 +1,185 @@
<div class="title">
<h1><?cs var:html_escape(Lang.Title.ConfigAll) ?></h1>
</div>
<div class="introduction">
<p><?cs var:html_escape(Lang.Introduction.ConfigAll) ?></p>
</div>
<fieldset class="form">
<legend><?cs var:html_escape(Lang.Legend.ConfigAll) ?> </legend>
<form method="post" action="<?cs var:ScriptName ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="config_subset" value="all" />
<ul>
<!-- public subsccription and archive -->
<li><?cs call:checkbox("p") ?></li>
<!-- do not require confirmation for subscription -->
<li><?cs call:checkbox("h") ?></li>
<!-- do not require confirmation for unsubscribe -->
<li><?cs call:checkbox("j") ?></li>
<!-- moderate subscription -->
<li><?cs call:checkbox("s") ?></li>
<!-- use deny list -->
<li><?cs call:checkbox("k") ?></li>
<!-- only subscribers may post -->
<li><?cs call:checkbox("u") ?></li>
<!-- require confirmation from poster -->
<li><?cs call:checkbox("y") ?></li>
<!-- posted messages are moderated -->
<li><?cs call:checkbox("m") ?></li>
<!-- only moderators may post -->
<li><?cs call:checkbox("o") ?></li>
<!-- process mailman-style requests -->
<li><?cs call:checkbox("q") ?></li>
<!-- remove ezmlm-warn -->
<li><?cs call:checkbox("w") ?></li>
<!-- archive messages -->
<li><?cs call:checkbox("a") ?></li>
<!-- only moderators may access the archive -->
<li><?cs call:checkbox("b") ?></li>
<!-- block unknown users from archive -->
<li><?cs call:checkbox("g") ?></li>
<!-- remove 'no-archive' header -->
<li><?cs call:checkbox("i") ?></li>
<!-- enable remote administration -->
<li><?cs call:checkbox("r") ?></li>
<!-- administrators may request subscribers list -->
<li><?cs call:checkbox("l") ?></li>
<!-- administrators may edit text files via mail -->
<li><?cs call:checkbox("n") ?></li>
<!-- from address -->
<li><?cs call:setting("3") ?></li>
<!-- list owner address -->
<li><?cs call:setting("5") ?></li>
<!-- mysql database -->
<?cs if:Data.Modules.mySQL ?>
<li><?cs call:setting("6") ?></li><?cs /if ?>
<!-- set main list name -->
<li><?cs call:setting("0") ?></li>
<!-- messsage moderator -->
<li><?cs call:setting("7") ?></li>
<!-- custom path to subscription moderators -->
<li><?cs call:setting("8") ?></li>
<!-- custom path to remote administrators -->
<li><?cs call:setting("9") ?>(<?cs var:Lang.Misc.ModSubOverridesRemote ?>)</li>
<!-- subject prefix -->
<li><?cs call:checkbox("f") ?>
<ul><li><input type="text" name="prefix" value="<?cs
var:html_escape(Data.List.Prefix) ?>" size="70" />
</li></ul></li>
<!-- trailing text -->
<li><?cs call:checkbox("t") ?>
<?cs if:(Data.List.Options.t == 1) ?>
<!-- turn off trailaer, if "-t" is not activated, as it will be
removed during the next config_update -->
<ul><li><textarea name="trailing_text" rows="3" cols="72"><?cs
var:html_escape(Data.List.TrailingText) ?></textarea></li>
</ul></li><?cs /if ?>
<!-- message size limit -->
<li><input type="checkbox" name="msgsize_max_state"
value="selected" id="msgsize_max_state" <?cs
if:Data.List.MsgSize.Max>0 ?>checked="checked"<?cs /if ?> />
<label for="msgsize_max_state"><?cs var:html_escape(Lang.Misc.MessageSize.Max) ?></label>
<ul><li><input type="text" name="msgsize_max_value" size="10"
style="text-align:right" value="<?cs
alt:Data.List.MsgSize.Max ?>30000<?cs /alt ?>" /> <?cs
var:html_escape(Lang.Misc.MessageSize.Unit) ?></li></ul></li>
<li><input type="checkbox" name="msgsize_min_state"
value="selected" id="msgsize_min_state" <?cs
if:Data.List.MsgSize.Min>0 ?>checked="checked"<?cs /if ?> />
<label for="msgsize_min_state"><?cs var:html_escape(Lang.Misc.MessageSize.Min) ?></label>
<ul><li><input type="text" name="msgsize_min_value" size="10"
style="text-align:right" value="<?cs
alt:Data.List.MsgSize.Min ?>2<?cs /alt ?>" /> <?cs
var:html_escape(Lang.Misc.MessageSize.Unit) ?></li></ul></li>
<!-- mimeremove and mimereject -->
<li><?cs call:checkbox("x") ?>
<?cs if:(Data.List.Options.x == 1) ?><ul>
<!-- turn off mimermove, if "-x" is not activated, as it will be
removed during the next config_update -->
<li><?cs var:html_escape(Lang.Misc.MimeReject) ?>:<br/>
<textarea name="mimereject" rows="4" cols="70"><?cs
var:html_escape(Data.List.MimeReject) ?></textarea></li>
<li><?cs var:html_escape(Lang.Misc.MimeRemove) ?>:<br/>
<textarea name="mimeremove" rows="4" cols="70"><?cs
var:html_escape(Data.List.MimeRemove) ?></textarea></li>
</ul><?cs /if ?></li>
<!-- headerremove -->
<li><?cs var:html_escape(Lang.Misc.HeaderRemove) ?>:<br/>
<ul><li><textarea name="headerremove" rows="5" cols="70"><?cs
var:html_escape(Data.List.HeaderRemove) ?></textarea></li></ul></li>
<!-- headeradd -->
<li><?cs var:html_escape(Lang.Misc.HeaderAdd) ?>:<br/>
<ul><li><textarea name="headeradd" rows="5" cols="70"><?cs
var:html_escape(Data.List.HeaderAdd) ?></textarea></li></ul></li>
<!-- language -->
<?cs if:subcount(Data.List.AvailableLanguages) > 0 ?>
<li><label for="list_language"><?cs var:html_escape(Lang.Misc.ListLanguage)
?>:</label>
<select name="list_language" id="list_language">
<?cs each:item = Data.List.AvailableLanguages ?>
<option <?cs if:(item == Data.List.Language)
?>selected="selected"<?cs /if ?>><?cs var:item ?></option>
<?cs /each ?>
</select></li><?cs /if ?>
<!-- charset -->
<?cs if:Data.List.CharSet ?>
<li><label for="list_charset"><?cs var:html_escape(Lang.Misc.ListCharset)
?>:</label>
<input type="text" name="list_charset" id="list_charset" size="30"
value="<?cs var:Data.List.CharSet ?>" />
</li><?cs /if ?>
<!-- ezmlm-web administators -->
<?cs if:Data.WebUser.show && Data.List.WebUsers ?>
<li><?cs var:html_escape(Lang.Misc.AllowedToEdit) ?>
<ul><li><input type="text"
name="webusers" value="<?cs var:html_escape(Data.List.WebUsers)
?>" size="40" /><br/>
</li></ul></li><?cs /if ?>
<li><!-- include default form values -->
<?cs include:TemplateDir + '/form_common.cs' ?>
<input type="hidden" name="action" value="config_do" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.UpdateConfiguration) ?></button></li>
</ul>
</form>
</fieldset>

View file

@ -0,0 +1,42 @@
<div class="title">
<h1><?cs var:html_escape(Lang.Title.ConfigArchive) ?></h1>
</div>
<div class="introduction">
<p><?cs var:html_escape(Lang.Introduction.ConfigArchive) ?></p>
</div>
<fieldset class="form">
<legend><?cs var:html_escape(Lang.Legend.ConfigArchive) ?> </legend>
<form method="post" action="<?cs var:ScriptName ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="config_subset" value="archive" />
<ul>
<!-- archive messages -->
<li><?cs call:checkbox("a") ?>
<ul>
<!-- subscripiton and archive are public -->
<li><?cs call:checkbox("p") ?></li>
<!-- only moderators may access the archive -->
<li><?cs call:checkbox("b") ?></li>
<!-- block unknown users from archive -->
<li><?cs call:checkbox("g") ?></li>
</ul></li>
<!-- remove 'no-archive' header -->
<li><?cs call:checkbox("i") ?></li>
<li><!-- include default form values -->
<?cs include:TemplateDir + '/form_common.cs' ?>
<input type="hidden" name="action" value="config_do" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.UpdateConfiguration) ?></button></li>
</ul>
</form>
</fieldset>

View file

@ -0,0 +1,69 @@
<div class="title">
<h1><?cs var:html_escape(Lang.Title.ConfigMain) ?></h1>
</div>
<div class="introduction">
<p><?cs var:html_escape(Lang.Introduction.ConfigMain) ?></p>
</div>
<fieldset class="form">
<legend><?cs var:html_escape(Lang.Legend.ConfigMain) ?> </legend>
<form method="post" action="<?cs var:ScriptName ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="config_subset" value="main" />
<ul>
<!-- list language -->
<?cs if:subcount(Data.List.AvailableLanguages) > 0 ?>
<li><label for="list_language"><?cs var:html_escape(Lang.Misc.ListLanguage)
?>:</label>
<select name="list_language" id="list_language">
<?cs each:item = Data.List.AvailableLanguages ?>
<option <?cs if:(item == Data.List.Language)
?>selected="selected"<?cs /if ?>><?cs var:item ?></option>
<?cs /each ?>
</select></li><?cs /if ?>
<!-- charset -->
<?cs if:Data.List.CharSet ?>
<li><label for="list_charset"><?cs var:html_escape(Lang.Misc.ListCharset)
?>:</label>
<input type="text" name="list_charset" id="list_charset" size="30"
value="<?cs var:Data.List.CharSet ?>" />
</li><?cs /if ?>
<!-- list owner address -->
<li><?cs call:setting("5") ?></li>
<!-- set main list name -->
<li><?cs call:setting("0") ?></li>
<!-- process mailman-style requests -->
<li><?cs call:checkbox("q") ?></li>
<!-- remove ezmlm-warn -->
<li><?cs call:checkbox("w") ?></li>
<!-- mysql database -->
<?cs if:Data.Modules.mySQL ?>
<li><?cs call:setting("6") ?></li><?cs /if ?>
<!-- ezmlm-web administators -->
<?cs if:Data.WebUser.show && Data.List.WebUsers ?>
<li><?cs var:html_escape(Lang.Misc.AllowedToEdit) ?>
<ul><li><input type="text"
name="webusers" value="<?cs var:html_escape(Data.List.WebUsers)
?>" size="40" /><br/>
</li></ul></li><?cs /if ?>
<li><!-- include default form values -->
<?cs include:TemplateDir + '/form_common.cs' ?>
<input type="hidden" name="action" value="config_do" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.UpdateConfiguration) ?></button></li>
</ul>
</form>
</fieldset>

View file

@ -0,0 +1,3 @@
<!-- enable remote administration -->
<?cs call:checkbox("r") ?>

View file

@ -0,0 +1,2 @@
<!-- administrators may edit text files via mail -->
<?cs call:checkbox("n") ?>

View file

@ -0,0 +1,2 @@
<!-- administrators may request subscribers list -->
<?cs call:checkbox("l") ?>

View file

@ -0,0 +1,2 @@
<!-- remove 'no-archive' header -->
<?cs call:checkbox("i") ?>

View file

@ -0,0 +1,2 @@
<!-- use deny list -->
<?cs call:checkbox("k") ?>

View file

@ -0,0 +1,2 @@
<!-- only moderators may post -->
<?cs call:checkbox("o") ?>

View file

@ -0,0 +1,2 @@
<!-- block unknown users from archive -->
<?cs call:checkbox("g") ?>

View file

@ -0,0 +1,2 @@
<!-- only subscribers may post -->
<?cs call:checkbox("u") ?>

View file

@ -0,0 +1,2 @@
<!-- require confirmation from poster -->
<?cs call:checkbox("y") ?>

View file

@ -0,0 +1,2 @@
<!-- do not require confirmation for subscription -->
<?cs call:checkbox("h") ?>

View file

@ -0,0 +1,2 @@
<!-- do not require confirmation for unsubscribe -->
<?cs call:checkbox("j") ?>

View file

@ -0,0 +1,2 @@
<!-- from address -->
<?cs call:setting("3") ?>

View file

@ -0,0 +1,4 @@
<!-- headeradd -->
<?cs var:html_escape(Lang.Misc.HeaderAdd) ?>:<br/>
<ul><li><textarea name="headeradd" rows="5" cols="70"><?cs
var:html_escape(Data.List.HeaderAdd) ?></textarea></li></ul>

View file

@ -0,0 +1,4 @@
<!-- headerremove -->
<?cs var:html_escape(Lang.Misc.HeaderRemove) ?>:<br/>
<ul><li><textarea name="headerremove" rows="5" cols="70"><?cs
var:html_escape(Data.List.HeaderRemove) ?></textarea></li></ul>

View file

@ -0,0 +1,2 @@
<!-- set main list name -->
<?cs call:setting("0") ?>

View file

@ -0,0 +1,9 @@
<!-- mimeremove and mimereject -->
<?cs call:checkbox("x") ?>
<?cs if:(Data.List.Options.x == 1) ?><ul>
<!-- turn off mimermove, if "-x" is not activated, as it will be
removed during the next config_update -->
<?cs call:display_option('mimereject') ?>
<?cs call:display_option('mimeremove') ?>
</ul><?cs /if ?>

View file

@ -0,0 +1,5 @@
<!-- turn off mimermove, if "-x" is not activated, as it will be
removed during the next config_update -->
<?cs var:html_escape(Lang.Misc.MimeReject) ?>:<br/>
<textarea name="mimereject" rows="4" cols="70"><?cs
var:html_escape(Data.List.MimeReject) ?></textarea>

View file

@ -0,0 +1,5 @@
<!-- turn off mimermove, if "-x" is not activated, as it will be
removed during the next config_update -->
<?cs var:html_escape(Lang.Misc.MimeRemove) ?>:<br/>
<textarea name="mimeremove" rows="4" cols="70"><?cs
var:html_escape(Data.List.MimeRemove) ?></textarea>

View file

@ -0,0 +1,2 @@
<!-- posted messages are moderated -->
<?cs call:checkbox("m") ?>

View file

@ -0,0 +1,2 @@
<!-- messsage moderator path -->
<?cs call:setting("7") ?>

View file

@ -0,0 +1,2 @@
<!-- moderate subscription -->
<?cs call:checkbox("s") ?>

View file

@ -0,0 +1,2 @@
<!-- custom path to subscription moderators -->
<?cs call:setting("8") ?>

View file

@ -0,0 +1,9 @@
<!-- message size limit -->
<input type="checkbox" name="msgsize_max_state"
value="selected" id="msgsize_max_state" <?cs
if:Data.List.MsgSize.Max>0 ?>checked="checked"<?cs /if ?> />
<label for="msgsize_max_state"><?cs var:html_escape(Lang.Misc.MessageSize.Max) ?></label>
<ul><li><input type="text" name="msgsize_max_value" size="10"
style="text-align:right" value="<?cs
alt:Data.List.MsgSize.Max ?>30000<?cs /alt ?>" /> <?cs
var:html_escape(Lang.Misc.MessageSize.Unit) ?></li></ul>

View file

@ -0,0 +1,9 @@
<!-- message size limit -->
<input type="checkbox" name="msgsize_min_state"
value="selected" id="msgsize_min_state" <?cs
if:Data.List.MsgSize.Min>0 ?>checked="checked"<?cs /if ?> />
<label for="msgsize_min_state"><?cs var:html_escape(Lang.Misc.MessageSize.Min) ?></label>
<ul><li><input type="text" name="msgsize_min_value" size="10"
style="text-align:right" value="<?cs
alt:Data.List.MsgSize.Min ?>2<?cs /alt ?>" /> <?cs
var:html_escape(Lang.Misc.MessageSize.Unit) ?></li></ul>

View file

@ -0,0 +1,2 @@
<!-- mysql database -->
<?cs call:setting("6") ?>

View file

@ -0,0 +1,2 @@
<!-- list owner address -->
<?cs call:setting("5") ?>

View file

@ -0,0 +1,5 @@
<!-- subject prefix -->
<?cs call:checkbox("f") ?>
<ul><li><input type="text" name="prefix" value="<?cs
var:html_escape(Data.List.Prefix) ?>" size="70" />
</li></ul>

View file

@ -0,0 +1,2 @@
<!-- public subsccription and archive -->
<?cs call:checkbox("p") ?>

View file

@ -0,0 +1,8 @@
<!-- trailing text -->
<?cs call:checkbox("t") ?>
<?cs if:(Data.List.Options.t == 1) ?>
<!-- turn off trailaer, if "-t" is not activated, as it will be
removed during the next config_update -->
<ul><li><textarea name="trailing_text" rows="3" cols="72"><?cs
var:html_escape(Data.List.TrailingText) ?></textarea></li>
</ul><?cs /if ?>

View file

@ -0,0 +1,7 @@
<!-- ezmlm-web administators -->
<?cs var:html_escape(Lang.Misc.AllowedToEdit) ?>
<ul><li><input type="text"
name="webusers" value="<?cs var:html_escape(Data.List.WebUsers)
?>" size="40" /><br/>
</li></ul>

View file

@ -0,0 +1,73 @@
<div class="title">
<h1><?cs var:html_escape(Lang.Title.ConfigPosting) ?></h1>
</div>
<div class="introduction">
<p><?cs var:html_escape(Lang.Introduction.ConfigPosting) ?></p>
</div>
<fieldset class="form">
<legend><?cs var:html_escape(Lang.Legend.ConfigPosting) ?> </legend>
<form method="post" action="<?cs var:ScriptName ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="config_subset" value="posting" />
<ul>
<!-- use deny list -->
<li><?cs call:checkbox("k") ?></li>
<!-- only subscribers may post -->
<li><?cs call:checkbox("u") ?></li>
<!-- require confirmation from poster -->
<li><?cs call:checkbox("y") ?></li>
<!-- posted messages are moderated -->
<li><?cs call:checkbox("m") ?>
<ul>
<!-- only moderators may post -->
<li><?cs call:checkbox("o") ?></li>
<!-- nesage moderator -->
<li><?cs call:setting("7") ?></li>
</ul></li>
<!-- message size limit -->
<li><input type="checkbox" name="msgsize_max_state"
value="selected" id="msgsize_max_state" <?cs
if:Data.List.MsgSize.Max>0 ?>checked="checked"<?cs /if ?> />
<label for="msgsize_max_state"><?cs var:html_escape(Lang.Misc.MessageSize.Max) ?></label>
<ul><li><input type="text" name="msgsize_max_value" size="10"
style="text-align:right" value="<?cs
alt:Data.List.MsgSize.Max ?>30000<?cs /alt ?>" /> <?cs
var:html_escape(Lang.Misc.MessageSize.Unit) ?></li></ul></li>
<li><input type="checkbox" name="msgsize_min_state"
value="selected" id="msgsize_min_state" <?cs
if:Data.List.MsgSize.Min>0 ?>checked="checked"<?cs /if ?> />
<label for="msgsize_min_state"><?cs var:html_escape(Lang.Misc.MessageSize.Min) ?></label>
<ul><li><input type="text" name="msgsize_min_value" size="10"
style="text-align:right" value="<?cs
alt:Data.List.MsgSize.Min ?>2<?cs /alt ?>" /> <?cs
var:html_escape(Lang.Misc.MessageSize.Unit) ?></li></ul></li>
<!-- mimeremove and mimereject -->
<li><?cs call:checkbox("x") ?>
<?cs if:(Data.List.Options.x == 1) ?><ul>
<!-- turn off mimermove, if "-x" is not activated, as it will be
removed during the next config_update -->
<li><?cs var:html_escape(Lang.Misc.MimeReject) ?>:<br/>
<textarea name="mimereject" rows="4" cols="70"><?cs
var:html_escape(Data.List.MimeReject) ?></textarea></li>
</ul></li><?cs /if ?>
<li><!-- include default form values -->
<?cs include:TemplateDir + '/form_common.cs' ?>
<input type="hidden" name="action" value="config_do" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.UpdateConfiguration) ?></button></li>
</ul>
</form>
</fieldset>

View file

@ -0,0 +1,65 @@
<div class="title">
<h1><?cs var:html_escape(Lang.Title.ConfigProcess) ?></h1>
</div>
<div class="introduction">
<p><?cs var:html_escape(Lang.Introduction.ConfigProcess) ?></p>
</div>
<fieldset class="form">
<legend><?cs var:html_escape(Lang.Legend.ConfigProcess) ?> </legend>
<form method="post" action="<?cs var:ScriptName ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="config_subset" value="processing" />
<ul>
<!-- subject prefix -->
<li><?cs call:checkbox("f") ?>
<ul><li><input type="text" name="prefix" value="<?cs
var:html_escape(Data.List.Prefix) ?>" size="70" />
</li></ul></li>
<!-- trailing text -->
<li><?cs call:checkbox("t") ?>
<?cs if:(Data.List.Options.t == 1) ?>
<!-- turn off mimermove, if "-x" is not activated, as it will be
removed during the next config_update -->
<ul><li><textarea name="trailing_text" rows="3" cols="72"><?cs
var:html_escape(Data.List.TrailingText) ?></textarea></li>
</ul></li><?cs /if ?>
<!-- from address -->
<li><?cs call:setting("3") ?></li>
<!-- mimeremove and mimereject -->
<li><?cs call:checkbox("x") ?>
<?cs if:(Data.List.Options.x == 1) ?><ul>
<!-- turn off mimermove, if "-x" is not activated, as it will be
removed during the next config_update -->
<li><?cs var:html_escape(Lang.Misc.MimeRemove) ?>:<br/>
<textarea name="mimeremove" rows="4" cols="70"><?cs
var:html_escape(Data.List.MimeRemove) ?></textarea></li>
</ul></li><?cs /if ?>
<!-- headerremove -->
<li><?cs var:html_escape(Lang.Misc.HeaderRemove) ?>:<br/>
<ul><li><textarea name="headerremove" rows="5" cols="70"><?cs
var:html_escape(Data.List.HeaderRemove) ?></textarea></li></ul></li>
<!-- headeradd -->
<li><?cs var:html_escape(Lang.Misc.HeaderAdd) ?>:<br/>
<ul><li><textarea name="headeradd" rows="5" cols="70"><?cs
var:html_escape(Data.List.HeaderAdd) ?></textarea></li></ul></li>
<li><!-- include default form values -->
<?cs include:TemplateDir + '/form_common.cs' ?>
<input type="hidden" name="action" value="config_do" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.UpdateConfiguration) ?></button></li>
</ul>
</form>
</fieldset>
<?cs include:TemplateDir + '/help_tag_susbtitution.cs' ?>

View file

@ -0,0 +1,42 @@
<div class="title">
<h1><?cs var:html_escape(Lang.Title.ConfigSub) ?></h1>
</div>
<div class="introduction">
<p><?cs var:html_escape(Lang.Introduction.ConfigSub) ?></p>
</div>
<fieldset class="form">
<legend><?cs var:html_escape(Lang.Legend.ConfigSub) ?> </legend>
<form method="post" action="<?cs var:ScriptName ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="config_subset" value="subscription" />
<ul>
<!-- public subsccription and archive -->
<li><?cs call:checkbox("p") ?></li>
<!-- do not require confirmation for subscription -->
<li><?cs call:checkbox("h") ?></li>
<!-- do not require confirmation for unsubscribe -->
<li><?cs call:checkbox("j") ?></li>
<!-- moderate subscription -->
<li><?cs call:checkbox("s") ?>
<ul>
<!-- custom path to subscription moderators -->
<li><?cs call:setting("8") ?><?cs if:(Data.List.Settings.8.state && Data.List.Settings.9.state) ?>(<?cs var:Lang.Misc.ModSubOverridesRemote ?>)<?cs /if ?></li>
</ul></li>
<li><!-- include default form values -->
<?cs include:TemplateDir + '/form_common.cs' ?>
<input type="hidden" name="action" value="config_do" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.UpdateConfiguration) ?></button></li>
</ul>
</form>
</fieldset>

View file

@ -0,0 +1,8 @@
<div id="footer">
<a href="https://systemausfall.org/toolforge/ezmlm-web">ezmlm-web</a> (v3.1.2) - <?cs var:html_escape(Lang.Misc.FooterText) ?> <a href="http://www.ezmlm.org/" target="_blank">ezmlm</a>
<br />
</div>
</body>
</html>

View file

@ -0,0 +1,9 @@
<!-- this file should be included in every form with checkboxes and settings -->
<input type="hidden" name="list" value="<?cs var:Data.List.Name ?>" />
<!-- "available_options" is filled by the checkbox macro -->
<input type="hidden" name="options_available" value="<?cs var:available_options ?>" />
<!-- "available_settings" is filled by the setting macro -->
<input type="hidden" name="settings_available" value="<?cs var:available_settings ?>" />

View file

@ -0,0 +1,25 @@
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title><?cs var:Config.PageTitle ?></title>
<meta http-equiv="pragma" content="no-cache" /> <!-- for browsers -->
<meta http-equiv="cache-control" content="no-cache" /> <!-- for proxys -->
<meta http-equiv="content-language" content="<?cs var:html_escape(Language) ?>" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Author" content="devel[at]sumpfralle.de" />
<meta http-equiv="expire" content="-1d" />
<link rel="stylesheet" type="text/css" href="<?cs var:Stylesheet ?>" />
</head>
<body>
<div id="oben">
<div id="perm_nav">
<?cs var:Config.PageTitle ?>
</div>
<h1 class="oben">ezmlm-web</h1>
</div>

View file

@ -0,0 +1,21 @@
<fieldset class="info">
<legend><?cs var:html_escape(Lang.Legend.TextFileInfo) ?> </legend>
<ul>
<li><?cs var:html_escape(Lang.Misc.EditFileInfo.CommonTags) ?><ul>
<li><tt>&lt;#l#&gt;</tt> <?cs var:html_escape(Lang.Misc.EditFileInfo.ListNameLocal) ?></li>
<li><tt>&lt;#h#&gt;</tt> <?cs var:html_escape(Lang.Misc.EditFileInfo.ListNameHost) ?></li>
<li><tt>&lt;#n#&gt;</tt> <?cs var:html_escape(Lang.Misc.EditFileInfo.ListNameHost) ?></li>
</ul></li>
<li>ezmlm-manage<ul>
<li><tt>&lt;#A#&gt;</tt> <?cs var:html_escape(Lang.Misc.EditFileInfo.SubAddress) ?></li>
<li><tt>&lt;#R#&gt;</tt> <?cs var:html_escape(Lang.Misc.EditFileInfo.SubReplyAddress) ?></li>
</ul></li>
<li>ezmlm-store<ul>
<li><tt>&lt;#A#&gt;</tt> <?cs var:html_escape(Lang.Misc.EditFileInfo.AcceptanceAddress) ?></li>
<li><tt>&lt;#R#&gt;</tt> <?cs var:html_escape(Lang.Misc.EditFileInfo.RejectionAddress) ?></li>
</ul></li>
</ul>
</fieldset>

View file

@ -0,0 +1,50 @@
<div class="title">
<h1><?cs var:html_escape(Lang.Title.ListCreate) ?></h1>
</div>
<fieldset class="form">
<legend><?cs var:html_escape(Lang.Legend.ListCreate) ?> </legend>
<form method="post" action="<?cs var:ScriptName ?>" enctype="application/x-www-form-urlencoded">
<ul>
<li><label for="listname"><?cs var:html_escape(Lang.Misc.ListName) ?>:</label>
<input type="text" name="list" id="listname" size="25"></li>
<li><label for="listaddress"><?cs var:html_escape(Lang.Misc.ListAddress) ?>:</label>
<input type="text" id="listaddress" name="inlocal" size="20"
value="<?cs var:html_escape(Data.UserName)
?>"> @ <input type="text" name="inhost" size="30" value="<?cs
var:html_escape(Data.HostName) ?>"></li>
<?cs if:subcount(Data.AvailableLanguages) > 0 ?>
<li><label for="list_language"><?cs var:html_escape(Lang.Misc.ListLanguage)
?>:</label>
<select name="list_language" id="list_language">
<?cs each:item = Data.AvailableLanguages ?>
<option <?cs if:(item == 'default')
?>selected="selected"<?cs /if ?>><?cs var:item ?></option>
<?cs /each ?>
</select></li><?cs /if ?>
<?cs if:Data.Modules.MySQL ?>
<!-- Allow creation of mysql table if the module allows it -->
<li><?cs call:setting("6") ?></li><?cs /if ?>
<?cs if:Data.WebUser.show ?>
<li><label for="webusers"><?cs var:html_escape(Lang.Misc.AllowedToEdit) ?></label>
<ul><li><input type="text" id="webusers"
name="webusers" size="30" value="<?cs
var:html_escape(Data.WebUser.UserName) ?>"></li></ul></li>
<?cs /if ?>
</ul>
<!-- include default form values -->
<?cs include:TemplateDir + '/form_common.cs' ?>
<input type="hidden" name="action" value="list_create_do" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.Create) ?></button>
</form>
</fieldset>

View file

@ -0,0 +1,20 @@
<div class="title">
<h1><?cs var:html_escape(Lang.Title.ListDelete) ?> &quot;<?cs var:html_escape(Data.List.Name) ?>&quot;</h1>
</div>
<div class="introduction">
<p><?cs var:html_escape(Lang.Introduction.ListDelete) ?></p>
</div>
<fieldset class="form">
<legend><?cs var:html_escape(Lang.Legend.ListDelete) ?> </legend>
<p><?cs var:Lang.Misc.ConfirmDelete ?></p>
<form method="post" action="<?cs var:ScriptName ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="list" value="<?cs var:Data.List.Name ?>" />
<input type="hidden" name="action" value="list_delete_do" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.ConfirmDeletion) ?></button>
</form>
</fieldset>

View file

@ -0,0 +1,39 @@
<div class="title">
<h1><?cs var:html_escape(Lang.Title.ListSelect) ?></h1>
</div>
<fieldset>
<legend>
<?cs var:html_escape(Lang.Legend.AvailableLists) ?>
</legend>
<!-- to get a multiple-columns-design, we do strange things ... -->
<?cs set:listnum=subcount(Data.Lists) ?>
<?cs if:listnum > 0 ?>
<?cs if:listnum < 15 ?><?cs set:columns=1 ?><?cs
elif:listnum < 30 ?><?cs set:columns=2 ?><?cs
else ?><?cs set:columns=3 ?><?cs /if ?>
<?cs set:col_len=listnum / columns ?>
<?cs if:listnum % columns > 0 ?><?cs set:col_len = col_len + #1 ?><?cs /if ?>
<table class="list_select">
<?cs loop: x = #0, col_len-1, #1 ?>
<tr>
<?cs loop: y = #0, columns-1, #1 ?>
<td>
<?cs set:listname = Data.Lists[y * col_len + x] ?><?cs
if:listname ?><a href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(listname) ?>&amp;action=subscribers" title="<?cs var:html_escape(listname) ?>"><?cs call:limit_string_len(html_escape(listname),18) ?></a>
<?cs /if ?>
</td>
<?cs /loop ?>
</tr>
<?cs /loop ?>
</table>
<?cs else ?>
<p><?cs var:html_escape(Lang.Misc.NoListsAvailable) ?></p>
<?cs /if ?>
</fieldset>

View file

@ -0,0 +1,57 @@
<?cs def:checkbox(option)
?><?cs if:Lang.Options[option]
?><input type="checkbox" name="option_<?cs var:option ?>"
id="option_<?cs var:option ?>" value="selected" <?cs
if:(Data.List.Options[option] == 1) ?>checked="checked"<?cs /if ?> />
<label for="option_<?cs var:option ?>"><?cs var:html_escape(Lang.Options[option])
?></label><?cs
set:available_options = available_options + option ?><?cs
else ?>unknown option (<?cs var:option ?>)<?cs /if ?><?cs
/def ?>
<?cs def:setting(setting)
?><?cs if:Lang.Settings[setting]
?><input type="checkbox" name="setting_state_<?cs var:setting
?>" id="setting_state_<?cs var:setting ?>" value="selected" <?cs
if:(Data.List.Settings[setting].state == 1) ?>checked="checked"<?cs /if ?> />
<label for="setting_state_<?cs var:setting ?>"><?cs
var:html_escape(Lang.Settings[setting]) ?></label>
<ul><li><input type="text" name="setting_value_<?cs var:setting
?>" id="setting_value_<?cs var:setting ?>" value="<?cs
var:html_escape(Data.List.Settings[setting].value) ?>" size="30" /></li></ul><?cs
set:available_settings = available_settings + setting ?><?cs
else ?>unknown setting (<?cs var:setting ?>)<?cs /if ?><?cs
/def ?>
<?cs def:warning(warntext)
?><div class="warning">
<?cs alt:warntext ?>unknown warning message (<?cs
var:Data.Warning ?>)<?cs /alt ?>
</div><?cs
/def ?>
<?cs def:error(errtext)
?><div class="error">
<?cs alt:errtext ?>unknown error message (<?cs
var:Data.Error ?>)<?cs /alt ?>
</div><?cs
/def ?>
<?cs def:success(succtext)
?><div class="success">
<?cs alt:succtext ?>unknown success message (<?cs
var:Data.Success ?>)<?cs /alt ?>
</div><?cs
/def ?>
<?cs def:limit_string_len(text,limit)
?><?cs set:text2 = text ?><?cs set:len = string.length(text2) ?><?cs
if:len > limit ?><?cs
var:string.slice(text,0,limit / #2 + limit % #2 - 1) ?>...<?cs
var:string.slice(text,len - limit / #2 + #3 - #1, len) ?><?cs
else ?><?cs var:text ?><?cs /if ?><?cs
/def ?>
<?cs def:display_option(optname)
?><?cs linclude:TemplateDir + "/config_options/" + optname + ".cs" ?><?cs
/def ?>

View file

@ -0,0 +1,21 @@
<!-- $Id$ -->
<?cs include:TemplateDir + '/macros.cs' ?>
<?cs include:TemplateDir + '/header.cs' ?>
<!-- this ezmlm-web template follows: <?cs var:Data.Action ?> -->
<?cs include:TemplateDir + '/nav.cs' ?>
<div id="main_content">
<?cs if:Data.List.Name ?><div id="info_title"><?cs var:Data.List.Name ?> - <?cs
var:Data.List.Address ?></div><?cs /if ?>
<?cs if:Data.Error ?><?cs call:error(Lang.ErrorMessage[Data.Error]) ?><?cs /if ?>
<?cs if:Data.customError ?><?cs call:error(Data.customError) ?><?cs /if ?>
<?cs if:Data.Warning ?><?cs call:warning(Lang.WarningMessage[Data.Warning]) ?><?cs /if ?>
<?cs if:Data.customWarning ?><?cs call:warning(Data.customWarning) ?><?cs /if ?>
<?cs if:Data.Success ?><?cs call:success(Lang.SuccessMessage[Data.Success]) ?><?cs /if ?>
<?cs include:TemplateDir + '/' + Data.Action + '.cs' ?>
</div> <!-- end of main_content -->
<?cs include:TemplateDir + '/footer.cs' ?>

View file

@ -0,0 +1,20 @@
<!-- posting moderation -->
<?cs if:Data.List.hasCustomizedPostModPath ?>
<div class="warning">
<?cs var:html_escape(Lang.Misc.PostModPathWarn) ?> (<?cs var:Data.List.Settings.7.value ?>).<br/><?cs var:html_escape(Lang.Misc.SuggestDefaultPath) ?>
</div>
<?cs /if ?>
<!-- subscription moderation -->
<?cs if:Data.List.hasCustomizedSubModPath ?>
<div class="warning">
<?cs var:html_escape(Lang.Misc.SubModPathWarn) ?> (<?cs var:Data.List.Settings.8.value ?>).<br/><?cs var:html_escape(Lang.Misc.SuggestDefaultPath) ?>
</div>
<?cs /if ?>
<!-- remote administration -->
<?cs if:Data.List.hasCustomizedAdminPath ?>
<div class="warning">
<?cs var:html_escape(Lang.Misc.RemoteAdminPathWarn) ?> (<?cs var:Data.List.Settings.9.value ?>).<br/><?cs var:html_escape(Lang.Misc.SuggestDefaultPath) ?>
</div>
<?cs /if ?>

View file

@ -0,0 +1,73 @@
<!-- $Id$ -->
<div id="nav_bar">
<ul>
<?cs if:(subcount(Data.Lists) > 0) ?>
<li><a <?cs if:(Data.Action == "list_select") ?> class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?action=list_select"
title="<?cs var:html_escape(Lang.Menue.ListSelect) ?>"><?cs var:html_escape(Lang.Menue.ListSelect) ?></a>
</li>
<?cs /if ?>
<?cs if:Data.Permissions.Create ?>
<li><a <?cs if:(Data.Action == "list_create") ?> class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?action=list_create_ask"
title="<?cs var:html_escape(Lang.Menue.ListCreate) ?>"><?cs var:html_escape(Lang.Menue.ListCreate) ?></a>
</li>
<?cs /if ?>
<?cs if:Data.List.Name ?>
<li><font class="no_link"><?cs var:html_escape(Lang.Menue.Properties) ?> <?cs call:limit_string_len(html_escape(Data.List.Name),25) ?></font><ul>
<li><a <?cs if:((Data.Action == "subscribers") && ((Data.List.PartType == "") || !Data.List.PartType)) ?>class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(Data.List.Name) ?>&amp;action=subscribers" title="<?cs var:html_escape(Lang.Menue.Subscribers) ?>"><?cs var:html_escape(Lang.Menue.Subscribers) ?></a>
<ul>
<li><a <?cs if:((Data.Action == "subscribers") &&
(Data.List.PartType == "allow")) ?>class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(Data.List.Name) ?>&amp;action=subscribers&amp;part=allow"><?cs var:html_escape(Lang.Menue.AllowList) ?></a></li>
<li><a <?cs if:((Data.Action == "subscribers") &&
(Data.List.PartType == "deny")) ?> class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(Data.List.Name) ?>&amp;action=subscribers&amp;part=deny"><?cs var:html_escape(Lang.Menue.DenyList) ?></a></li>
<li><a <?cs if:((Data.Action == "subscribers") &&
(Data.List.PartType == "digest")) ?> class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(Data.List.Name) ?>&amp;action=subscribers&amp;part=digest"><?cs var:html_escape(Lang.Menue.DigestList) ?></a></li>
<li><a <?cs if:((Data.Action == "subscribers") &&
(Data.List.PartType == "mod")) ?> class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(Data.List.Name) ?>&amp;action=subscribers&amp;part=mod"><?cs var:html_escape(Lang.Menue.ModList) ?></a></li>
</ul>
</li>
<li><a <?cs if:(Data.Action == "config_main") ?> class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(Data.List.Name) ?>&amp;action=config_ask&amp;config_subset=main" title="<?cs var:html_escape(Lang.Menue.ConfigMain) ?>"><?cs var:html_escape(Lang.Menue.ConfigMain) ?></a>
<ul>
<li><a <?cs if:(Data.Action == "config_subscription") ?> class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(Data.List.Name) ?>&amp;action=config_ask&amp;config_subset=subscription" title="<?cs var:html_escape(Lang.Menue.ConfigSub) ?>"><?cs var:html_escape(Lang.Menue.ConfigSub) ?></a></li>
<li><a <?cs if:(Data.Action == "config_posting") ?> class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(Data.List.Name) ?>&amp;action=config_ask&amp;config_subset=posting" title="<?cs var:html_escape(Lang.Menue.ConfigPost) ?>"><?cs var:html_escape(Lang.Menue.ConfigPost) ?></a></li>
<li><a <?cs if:(Data.Action == "config_processing") ?> class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(Data.List.Name) ?>&amp;action=config_ask&amp;config_subset=processing" title="<?cs var:html_escape(Lang.Menue.ConfigProcess) ?>"><?cs var:html_escape(Lang.Menue.ConfigProcess) ?></a></li>
<li><a <?cs if:(Data.Action == "config_archive") ?> class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(Data.List.Name) ?>&amp;action=config_ask&amp;config_subset=archive" title="<?cs var:html_escape(Lang.Menue.ConfigArchive) ?>"><?cs var:html_escape(Lang.Menue.ConfigArchive) ?></a></li>
<li><a <?cs if:(Data.Action == "config_admin") ?> class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(Data.List.Name) ?>&amp;action=config_ask&amp;config_subset=admin" title="<?cs var:html_escape(Lang.Menue.ConfigAdmin) ?>"><?cs var:html_escape(Lang.Menue.ConfigAdmin) ?></a></li>
<li><a <?cs if:(Data.Action == "config_all") ?> class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(Data.List.Name) ?>&amp;action=config_ask&amp;config_subset=all" title="<?cs var:html_escape(Lang.Menue.ConfigAll) ?>"><?cs var:html_escape(Lang.Menue.ConfigAll) ?></a></li>
</ul></li>
<li><a <?cs if:((Data.Action == "textfiles") || (Data.Action == "textfile_edit")) ?> class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(Data.List.Name) ?>&amp;action=textfiles" title="<?cs var:html_escape(Lang.Menue.TextFiles) ?>"><?cs var:html_escape(Lang.Menue.TextFiles) ?></a></li>
<li><a <?cs if:(Data.Action == "list_delete") ?> class="nav_active"<?cs /if ?>
href="<?cs var:ScriptName ?>?list=<?cs var:url_escape(Data.List.Name) ?>&amp;action=list_delete_ask" title="<?cs var:html_escape(Lang.Menue.ListDelete) ?>"><?cs var:html_escape(Lang.Menue.ListDelete) ?></a></li>
</ul></li>
<?cs /if ?>
<li><a href="http://www.ezmlm.org/ezman/index.html#toc1" target="_blank" title="<?cs var:html_escape(Lang.Misc.HelpLink) ?>"><?cs var:html_escape(Lang.Menue.Help) ?></a></li>
</ul>
<!-- end of navbar div -->
</div>

View file

@ -0,0 +1,147 @@
<div class="title">
<h1>
<?cs if:(Data.List.PartType == "allow") ?> <?cs var:html_escape(Lang.Title.AllowList) ?>
<?cs elif:(Data.List.PartType == "deny") ?> <?cs var:html_escape(Lang.Title.DenyList) ?>
<?cs elif:(Data.List.PartType == "digest") ?><?cs var:html_escape(Lang.Title.DigestList) ?>
<?cs elif:(Data.List.PartType == "mod") ?> <?cs var:html_escape(Lang.Title.ModList) ?>
<?cs else ?> <?cs var:html_escape(Lang.Title.SubscriberList) ?>
<?cs /if ?>
</h1>
</div>
<div class="introduction">
<p>
<?cs if:(Data.List.PartType == "allow") ?> <?cs var:html_escape(Lang.Introduction.AllowList) ?>
<?cs elif:(Data.List.PartType == "deny") ?> <?cs var:html_escape(Lang.Introduction.DenyList) ?>
<?cs elif:(Data.List.PartType == "digest") ?><?cs var:html_escape(Lang.Introduction.DigestList) ?>
<?cs elif:(Data.List.PartType == "mod") ?> <?cs var:html_escape(Lang.Introduction.ModList) ?>
<?cs else ?> <?cs var:html_escape(Lang.Introduction.SubscriberList) ?>
<?cs /if ?>
</p>
</div>
<?cs if:Data.List.PartType == 'mod' ?>
<!-- show warnings for wrong moderation paths -->
<?cs include:TemplateDir + "modpath_info.cs" ?>
<?cs /if ?>
<?cs if:((Data.List.PartType == "digest") || (Data.List.PartType == "deny") || (Data.List.PartType == 'mod')) ?>
<fieldset class="form">
<legend><?cs var:html_escape(Lang.Legend.RelevantOptions) ?> </legend>
<form method="post" action="<?cs var:ScriptName ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="part" value="<?cs var:Data.List.PartType ?>" />
<ul>
<?cs if:(Data.List.PartType == "digest") ?>
<li><?cs call:checkbox("d") ?></li>
<li><?cs call:setting("4") ?></li>
<?cs elif:(Data.List.PartType == "deny") ?>
<li><?cs call:checkbox("k") ?></li>
<?cs elif:(Data.List.PartType == "mod") ?>
<li><?cs call:checkbox("m") ?>
<?cs if:Data.List.Options.m ?>
<ul><li><?cs call:setting("7") ?></li></ul><?cs /if ?>
</li>
<li><?cs call:checkbox("s") ?>
<?cs if:Data.List.Options.s ?>
<ul><li><?cs call:setting("8") ?></li></ul><?cs /if ?>
</li>
<li><?cs call:checkbox("r") ?>
<?cs if:Data.List.Options.r ?>
<ul><li><?cs call:setting("9") ?>
<?cs var:Lang.Misc.ModSubOverridesRemote ?></li></ul><?cs /if ?>
</li>
<?cs /if ?>
<li><!-- include default form values -->
<?cs include:TemplateDir + '/form_common.cs' ?>
<input type="hidden" name="config_subset" value="RESERVED-subscribers" />
<input type="hidden" name="list" value="<?cs var:Data.List.Name ?>" />
<input type="hidden" name="action" value="config_do" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.UpdateConfiguration) ?></button></li>
</ul>
</form>
</fieldset>
<?cs /if ?>
<!-- check, if we should display a subscribers list -->
<?cs if:!Data.List.PartType || (Data.List.PartType == '') ||
(Data.List.PartType == 'allow') ||
(Data.List.PartType == 'mod') ||
((Data.List.PartType == 'deny') && (Data.List.Options.k == 1)) ||
((Data.List.PartType == 'digest') && (Data.List.Options.d == 1)) ?>
<fieldset class="form">
<legend>
<?cs if:(Data.List.PartType == "allow") ?> <?cs var:html_escape(Lang.Legend.MembersAllow) ?>
<?cs elif:(Data.List.PartType == "deny") ?> <?cs var:html_escape(Lang.Legend.MembersDeny) ?>
<?cs elif:(Data.List.PartType == "digest") ?><?cs var:html_escape(Lang.Legend.MembersDigest) ?>
<?cs elif:(Data.List.PartType == "mod") ?> <?cs var:html_escape(Lang.Legend.MembersMod) ?>
<?cs else ?> <?cs var:html_escape(Lang.Legend.MembersList) ?>
<?cs /if ?>
</legend>
<table class="subscribers"><tr>
<?cs if:subcount(Data.List.Subscribers) > 0 ?>
<td><form method="post" action="<?cs var:ScriptName ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="list" value="<?cs var:Data.List.Name ?>" />
<?cs if:Data.List.PartType ?>
<input type="hidden" name="part" value="<?cs var:Data.List.PartType ?>" />
<?cs /if ?>
<ul>
<!-- scrollbox for list's subscribers -->
<!-- Keep selection box a reasonable size - suggested by Sebastian Andersson -->
<?cs if:subcount(Data.List.Subscribers) > 15 ?>
<?cs set:Data.ScrollSize = 15 ?>
<?cs else ?>
<?cs set:Data.ScrollSize = subcount(Data.List.Subscribers) ?>
<?cs /if ?>
<li><select name="mailaddress_del"
size="<?cs var:Data.ScrollSize ?>" multiple="multiple">
<?cs each:item = Data.List.Subscribers ?>
<option value="<?cs var:item.address ?>"><?cs var:item.address ?><?cs if:item.name ?> (<?cs var:item.name ?>)<?cs /if ?></option>
<?cs /each ?>
</select></li>
<li><?cs var:subcount(Data.List.Subscribers) ?> <?cs var:html_escape(Lang.Misc.Subscribers) ?></li>
<li><input type="hidden" name="action" value="address_del" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.DeleteAddress) ?></button></li>
</ul></form></td>
<?cs /if ?>
<td><form method="post" action="<?cs var:ScriptName ?>" enctype="multipart/form-data">
<!-- this form has to be "multipart/form-data" to make file upload work -->
<input type="hidden" name="list" value="<?cs var:Data.List.Name ?>" />
<?cs if:Data.List.PartType ?>
<input type="hidden" name="part" value="<?cs var:Data.List.PartType ?>" />
<?cs /if ?>
<fieldset>
<ul>
<li><?cs var:html_escape(Lang.Misc.AddSubscriberAddress) ?>
<ul><li><input type="text" name="mailaddress_add" size="40" /></li>
</ul></li>
<?cs if:Data.Permissions.FileUpload ?>
<li><?cs var:html_escape(Lang.Misc.AddSubscriberFile) ?>
<ul><li><input type="file" name="mailaddressfile" size="20"
maxlength="200" /></li>
</ul></li>
<?cs /if ?>
</ul>
</fieldset>
<input type="hidden" name="action" value="address_add" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.AddAddress) ?></button>
</form></td></tr>
</table>
</fieldset>
<?cs /if ?>

View file

@ -0,0 +1,45 @@
<div class="title">
<h1><?cs var:html_escape(Lang.Title.FileEdit) ?> &quot;<?cs var:Data.List.File.Name ?>&quot;</h1>
</div>
<div class="introduction">
<?cs var:html_escape(Lang.Introduction.EditTextFile) ?>
</div>
<!-- reset text file -->
<?cs if:(Data.areDefaultTextsAvailable == 1) && (Data.List.File.isDefault == 0) ?>
<fieldset class="form">
<legend><?cs var:html_escape(Lang.Legend.TextFileReset) ?> </legend>
<div class="introduction">
<?cs var:html_escape(Lang.Introduction.ResetTextFile) ?>
</div>
<form method="post" action="<?cs var:ScriptName ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="list" value="<?cs var:Data.List.Name ?>">
<input type="hidden" name="file" value="<?cs var:Data.List.File.Name ?>">
<input type="hidden" name="action" value="textfile_reset" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.ResetFile) ?></button>
</form>
</fieldset>
<?cs /if ?>
<!-- edit text file -->
<fieldset class="form">
<legend><?cs var:html_escape(Lang.Legend.TextFileEdit) ?> </legend>
<form method="post" action="<?cs var:ScriptName ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="list" value="<?cs var:Data.List.Name ?>">
<input type="hidden" name="file" value="<?cs var:Data.List.File.Name ?>">
<p><textarea name="content" rows="13"
cols="72"><?cs var:Data.List.File.Content ?></textarea></p>
<input type="hidden" name="action" value="textfile_save" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.SaveFile) ?></button>
</form>
</fieldset>
<?cs include:TemplateDir + '/help_tag_substitution.cs' ?>

View file

@ -0,0 +1,63 @@
<div class="title">
<h1><?cs var:html_escape(Lang.Title.FileSelect) ?></h1>
</div>
<div class="introduction">
<?cs var:html_escape(Lang.Introduction.TextFiles) ?>
</div>
<fieldset class="form">
<legend><?cs var:html_escape(Lang.Legend.TextFiles) ?> </legend>
<form method="post" action="<?cs var:ScriptName ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="list" value="<?cs var:Data.List.Name ?>" />
<ul>
<?cs if:subcount(Data.List.CustomizedFiles) +
subcount(Data.List.DefaultFiles) > 0 ?>
<!-- scrollbox for list's subscribers -->
<!-- Keep selection box a reasonable size - suggested by Sebastian Andersson -->
<?cs if:subcount(Data.List.CustomizedFiles) +
subcount(Data.List.DefaultFiles) > 15 ?>
<?cs set:Data.ScrollSize = 15 ?>
<?cs else ?>
<?cs set:Data.ScrollSize = subcount(Data.List.CustomizedFiles) +
subcount(Data.List.DefaultFiles) ?>
<?cs /if ?>
<li><select name="file" size="<?cs var:Data.ScrollSize ?>" style="padding-right:10px">
<?cs if:subcount(Data.List.CustomizedFiles) > 0 ?>
<!-- no optgroup if there is no alternative optgroup -->
<?cs if:subcount(Data.List.DefaultFiles) > 0 ?>
<optgroup label="<?cs var:html_escape(Lang.Misc.CustomizedFiles) ?>">
<?cs /if ?>
<?cs each:item = Data.List.CustomizedFiles ?>
<option><?cs var:item ?></option>
<?cs /each ?>
<?cs if:subcount(Data.List.DefaultFiles) > 0 ?>
</optgroup>
<?cs /if ?>
<?cs /if ?>
<?cs if:subcount(Data.List.DefaultFiles) > 0 ?>
<!-- no optgroup if there is no alternative optgroup -->
<?cs if:subcount(Data.List.CustomizedFiles) > 0 ?>
<optgroup label="<?cs var:html_escape(Lang.Misc.DefaultFiles) ?>">
<?cs /if ?>
<?cs each:item = Data.List.DefaultFiles ?>
<option><?cs var:item ?></option>
<?cs /each ?>
<?cs if:subcount(Data.List.CustomizedFiles) > 0 ?>
</optgroup>
<?cs /if ?>
<?cs /if ?>
</select></li>
<?cs else ?>
<li><?cs var:html_escape(Lang.Misc.NoFiles) ?></li>
<?cs /if ?>
<li><input type="hidden" name="action" value="textfile_edit" />
<button type="submit" name="send" value="do"><?cs var:html_escape(Lang.Buttons.EditFile) ?></button></li>
</ul>
</form>
</fieldset>