removed ezmlmwebrc.gnupg file - setting moved to ezmlmwebrc

removed implementation of 'ui_set'
fixed gnupg support
improved gettext support (still needs some testing)
Encode module is now optional (instead of being required)
This commit is contained in:
lars 2007-03-26 19:06:45 +00:00
parent b7d01f0324
commit d845390a9b
29 changed files with 656 additions and 268 deletions

View file

@ -0,0 +1,25 @@
<div class="title">
<h1><?cs var:html_escape(Lang.Title.GnupgOptions) ?></h1>
</div>
<div class="introduction">
<p><?cs var:html_escape(Lang.Introduction.GnupgOptions) ?></p>
</div>
<fieldset class="form">
<legend><?cs var:html_escape(Lang.Legend.GnupgOptions) ?> </legend>
<form method="post" action="<?cs call:link("","","","","","") ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="config_subset" value="encryption" />
<?cs call:show_options(UI.Options.Config.GnupgOptions) ?>
<!-- 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>
</form>
</fieldset>

View file

@ -1,3 +0,0 @@
<!-- REMOVE --><?cs include:TemplateDir + '/macros.cs' ?>
<!-- Gnupg: allow key submission -->
<?cs call:checkbox("gnupg_allowKeySubmission") ?>

View file

@ -1,3 +0,0 @@
<!-- REMOVE --><?cs include:TemplateDir + '/macros.cs' ?>
<!-- Gnupg: encrypt to all -->
<?cs call:checkbox("gnupg_encryptToAll") ?>

View file

@ -1,4 +1,8 @@
<?cs if:Data.List.Features.Crypto ?>
<!-- comment for the key (second part of the human readable key description) -->
<label for="gnupg_keycomment"><?cs var:html_escape(Lang.Misc.GnupgKeyComment) ?>:</label>
<input type="text" name="gnupg_keycomment" id="gnupg_keycomment" size="25">
<input type="text" name="gnupg_keycomment" id="gnupg_keycomment" size="25"
value="Mailing list" />
<?cs /if ?>

View file

@ -1,11 +1,15 @@
<?cs if:Data.List.Features.Crypto ?>
<!-- expiration of the key (in years) -->
<label for="gnupg_keyexpires"><?cs var:html_escape(Lang.Misc.GnupgKeyExpires) ?>:</label>
<select name="gnupg_keyexpires" id="gnupg_keyexpires" size="0">
<option value="0"><?cs var:html_escape(Lang.Misc.Never) ?></option>
<option value="0" selected="selected"><?cs
var:html_escape(Lang.Misc.Never) ?></option>
<option value="1y">1</option>
<option value="2y">2</option>
<option value="3y">3</option>
<option value="5y">5</option>
<option value="10y">10</option>
</select>
<?cs /if ?>

View file

@ -1,4 +1,8 @@
<?cs if:Data.List.Features.Crypto ?>
<!-- name of the key (first part of the human readable key description) -->
<label for="gnupg_keyname"><?cs var:html_escape(Lang.Misc.GnupgKeyName) ?>:</label>
<input type="text" name="gnupg_keyname" id="gnupg_keyname" size="25">
<input type="text" name="gnupg_keyname" id="gnupg_keyname" size="25"
value="<?cs var:html_escape(Data.List.Name) ?>" />
<?cs /if ?>

View file

@ -1,3 +1,4 @@
<?cs if:Data.List.Features.Crypto ?>
<!-- REMOVE --><?cs include:TemplateDir + '/macros.cs' ?>
<!-- length of the key (bytes) -->
<label for="gnupg_keysize"><?cs var:html_escape(Lang.Misc.GnupgKeySize) ?>:</label>
@ -6,4 +7,5 @@
<option selected="selected">2048</option>
<option>4096</option>
</select>
<?cs /if ?>

View file

@ -1,3 +1,6 @@
<?cs if:Data.List.Features.Crypto ?>
<!-- REMOVE --><?cs include:TemplateDir + '/macros.cs' ?>
<!-- Gnupg: send plaintext if no key is available -->
<?cs call:checkbox("gnupg_NokeyNocrypt") ?>
<?cs call:checkbox("gnupg_plain_without_key") ?>
<?cs /if ?>

View file

@ -1,3 +0,0 @@
<!-- REMOVE --><?cs include:TemplateDir + '/macros.cs' ?>
<!-- Gnupg: require signed messages -->
<?cs call:checkbox("gnupg_requireSigs") ?>

View file

@ -1,3 +0,0 @@
<!-- REMOVE --><?cs include:TemplateDir + '/macros.cs' ?>
<!-- Gnupg: require subscriber -->
<?cs call:checkbox("gnupg_RequireSub") ?>

View file

@ -1,3 +1,6 @@
<?cs if:Data.List.Features.Crypto ?>
<!-- REMOVE --><?cs include:TemplateDir + '/macros.cs' ?>
<!-- Gnupg: sign outgoing messages -->
<?cs call:checkbox("gnupg_signMessages") ?>
<?cs call:checkbox("gnupg_sign_messages") ?>
<?cs /if ?>

View file

@ -1,3 +0,0 @@
<!-- REMOVE --><?cs include:TemplateDir + '/macros.cs' ?>
<!-- Gnupg: require keys to be trusted -->
<?cs call:checkbox("gnupg_VerifiedKeyReq") ?>

View file

@ -11,14 +11,15 @@
<form method="post" action="<?cs call:link("","","","","","") ?>" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="list" value="<?cs var:Data.List.Name ?>" />
<input type="hidden" name="action" value="gnupg_convert_do" />
<button type="submit" name="send" value="do"><?cs
if:Data.List.Type == "gnupg" ?><?cs
var:html_escape(Lang.Buttons.GnupgConvertToNormal) ?><?cs
else ?><?cs
var:html_escape(Lang.Buttons.GnupgConvertToEncrypted) ?><?cs
/if ?></button>
<?cs if:Data.List.Features.Crypto
?><button type="submit" name="send" value="do"><?cs
var:html_escape(Lang.Buttons.GnupgConvertToPlain) ?></button>
<input type="hidden" name="action" value="gnupg_convert_disable" /><?cs
else
?><button type="submit" name="send" value="do"><?cs
var:html_escape(Lang.Buttons.GnupgConvertToEncrypted) ?></button>
<input type="hidden" name="action" value="gnupg_convert_enable" /><?cs
/if ?>
</form>
</fieldset>

View file

@ -23,3 +23,4 @@
</form>
</fieldset>

View file

@ -31,4 +31,3 @@
</fieldset>

View file

@ -26,7 +26,9 @@
<td><label for="gnupg_key_<?cs var:key.id ?>"><?cs
var:html_escape(key.email) ?></label></td>
<td><label for="gnupg_key_<?cs var:key.id ?>"><?cs
var:html_escape(key.expires) ?></label></td>
if:key.expires ?><?cs var:html_escape(key.expires) ?><?cs
else ?><?cs var:html_escape(Lang.Misc.Never) ?><?cs /if
?></label></td>
<td><a href="<?cs call:link("action", "gnupg_export",
"list", Data.List.Name,
"gnupg_keyid", key.id) ?>"

View file

@ -26,7 +26,9 @@
<td><label for="gnupg_key_<?cs var:key.id ?>"><?cs
var:html_escape(key.email) ?></label></td>
<td><label for="gnupg_key_<?cs var:key.id ?>"><?cs
var:html_escape(key.expires) ?></label></td>
if:key.expires ?><?cs var:html_escape(key.expires) ?><?cs
else ?><?cs var:html_escape(Lang.Misc.Never) ?><?cs /if
?></label></td>
<td><a href="<?cs call:link("action", "gnupg_export",
"list", Data.List.Name,
"gnupg_keyid", key.id) ?>"

View file

@ -1,9 +1,5 @@
Lang {
ID = en
Name = English
Menue {
ListCreate = Create new list
ListDelete = Delete list
@ -24,6 +20,7 @@ Lang {
GnupgSecretKeys = secret keys
GnupgGenerateKey = generate key
GnupgConvert = Encryption
GnupgOptions = encryption
TextFiles = Text files
ListSelect = Choose a list
Properties = Properties of
@ -54,6 +51,7 @@ Lang {
GnupgPublic = Public keys
GnupgSecret = Secret keys
GnupgGenerate = Generate a new keypair
GnupgOptions = Encryption settings
}
@ -69,7 +67,7 @@ Lang {
ResetFile = Remove customized file
LanguageSet = select
GnupgConvertToEncrypted = Convert to an encrypted mailinglist
GnupgConvertToNormal = Convert to a plaintext mainlinglist
GnupgConvertToPlain = Convert to a plaintext mainlinglist
DeletePublicKey = Delete public key(s)
DeleteSecretKey = Delete secret key(s)
GnupgImportKey = Import key
@ -125,7 +123,10 @@ Lang {
GnupgInvalidExpiration = The expiration time is invalid!
GnupgInvalidKeySize = The length of the key is invalid!
GnupgExportKey = Export of key failed!
GnupgConvert = Conversion to encrypted mailing list failed!
GnupgConvertEnable = Conversion to encrypted mailing list failed!
GnupgConvertDisable = Conversion to plaintext mailing list failed!
GnupgConvertAlreadyEnabled = Encryption was already enabled for this mailing list.
GnupgConvertAlreadyDisabled = Encryption was already disabled for this mailing list.
}
@ -139,7 +140,8 @@ Lang {
SaveFile = The file was saved.
ResetFile = The customized text file was successfully removed. From now on, the system-wide default text file will be used instead of it.
GnupgKeyImport = The key was successfully imported.
GnupgConvert = Encryption is now enabled for this list.
GnupgConvertEnable = Encryption is now enabled for this list.
GnupgConvertDisable = Encryption is now disabled for this list.
}
@ -166,13 +168,8 @@ Lang {
w = Remove the ezmlm-warn invocations from the list setup (rarely useful)
x = Remove or reject specific mime types in messages
y = Request a confirmation mail for every posted message
gnupg_allowKeySubmission = Allow key submission via mail
gnupg_encryptToAll = Encrypt to all recipients at once (do not encrypt inividually)
gnupg_NokeyNocrypt = Send plaintext to the subscribers which have no key
gnupg_RequireSub = Only subscribers may post messages
gnupg_signMessages = Sign outgoing messages with the list's key
gnupg_VerifiedKeyReq = Use only verified keys
gnupg_requireSigs = Only verifiably signed messages are accepted
gnupg_plain_without_key = Send plaintext to the subscribers which have no key
gnupg_sign_messages = Sign outgoing messages with the list's key
}
@ -260,6 +257,7 @@ Lang {
ResetTextFile = This text file was customized for this list. If you want to use the system-wide default text file of the choosen language instead, you may remove this customized file.
GnupgConvert = You can convert a normal mailinglist to an encrypted list and vice versa.
GnupgGenerateKey = Every encrypted mailing list needs a secret key. You can import this key or create it using the form below. After submitting the form, you have to be patient, as it takes some time (up to several minutes) to create a key.
GnupgOptions = Configure some useful settings of the encrypted mailing list.
}
Legend {
@ -288,5 +286,6 @@ Lang {
GnupgSecretKeys = Secret keys of this list
GnupgKeyImport = Import a key
GnupgGenerateKey = Generate the key for this list
GnupgOptions = Encryption settings
}
}

View file

@ -92,6 +92,14 @@
"config_subset","processing") ?>"
title="<?cs var:html_escape(Lang.Menue.ConfigProcess) ?>"><?cs
var:html_escape(Lang.Menue.ConfigProcess) ?></a></li><?cs /if ?>
<?cs if:(UI.Navigation.Config.GnupgOptions == 1) &&
Data.List.Features.Crypto
?><li><a <?cs if:(Data.Action == "config_encryption")
?> class="nav_active"<?cs /if ?>
href="<?cs call:link("list",Data.List.Name,"action","config_ask",
"config_subset","encryption") ?>"
title="<?cs var:html_escape(Lang.Menue.GnupgOptions) ?>"><?cs
var:html_escape(Lang.Menue.GnupgOptions) ?></a></li><?cs /if ?>
<?cs if:UI.Navigation.Config.Archive == 1
?><li><a <?cs if:(Data.Action == "config_archive") ?>
class="nav_active"<?cs /if ?>
@ -115,7 +123,7 @@
var:html_escape(Lang.Menue.ConfigAll) ?></a></li><?cs /if ?>
</ul></li>
<?cs if:subcount(UI.Navigation.Gnupg) > 0
<?cs if:(subcount(UI.Navigation.Gnupg) > 0) && (Data.List.Features.Crypto)
?><li><font class="no_link"><?cs var:html_escape(Lang.Menue.Gnupg)
?></font>
<ul>
@ -149,7 +157,7 @@
title="<?cs var:html_escape(Lang.Menue.TextFiles) ?>"><?cs
var:html_escape(Lang.Menue.TextFiles) ?></a></li><?cs /if ?>
<?cs if:UI.Navigation.GnupgConvert == 1
<?cs if:(UI.Navigation.GnupgConvert == 1) && Config.Features.Crypto
?><li><a <?cs if:(Data.Action == "gnupg_convert_ask") ||
(Data.Action == "gnupg_convert_do") ?> class="nav_active"<?cs /if ?>
href="<?cs call:link("list",Data.List.Name,"action","gnupg_convert_ask","","") ?>"

View file

@ -21,6 +21,12 @@ UI {
All = 1
}
Gnupg {
PublicKeys = 1
SecretKeys = 1
GenerateKey = 1
}
TextEdit = 1
ListDelete = 1
GnupgConvert = 1

View file

@ -19,7 +19,6 @@ UI {
TextEdit = 1
ListDelete = 1
GnupgConvert = 1
Language = 1
Interface = 1
Help = 1

209
template/ui/normal.hdf Normal file
View file

@ -0,0 +1,209 @@
UI {
Navigation {
ListSelect = 1
ListCreate = 1
Subscribers {
Subscribers = 1
Digest = 1
Allow = 1
Deny = 1
Moderators = 1
}
Config {
Main = 1
Subscription = 1
Posting = 1
Processing = 1
GnupgOptions = 1
Archive = 1
Admin = 1
All = 1
}
Gnupg {
PublicKeys = 1
SecretKeys = 1
GenerateKey = 1
}
TextEdit = 1
ListDelete = 1
GnupgConvert = 1
Language = 1
Interface = 1
Help = 1
}
Options {
Create {
Listname = create_listname
Listaddress = create_listaddress
Listlanguage = lang_select
Mysql = mysql
Webuser = webusers
}
Subscribers {
Subscribers = {}
Digest {
Enabled = digest_enabled
Settings = digest_settings
}
Deny {
Enabled = block_deny
}
Moderators {
Posting {
Self = mod_post
Path = mod_post_path
}
Subscription {
Self = mod_sub
Path = mod_sub_path
}
Administration {
Self = admin_enabled
Path = admin_path
}
}
}
GenerateKey {
KeyName = gnupg_keyname
KeyComment = gnupg_keycomment
KeySize = gnupg_keysize
KeyExpiration = gnupg_keyexpires
}
Config {
Main {
Language = lang_select
Charset = charset_select
Owner = owner_address
MainList = mainlist
MailmanRequests = mailman_requests
RemoveWarn = warn_remove
SQL = mysql
WebUsers = webusers
}
Archive {
Enabled {
Self = archive_enabled
Public = public
ModOnly = archive_mod_only
Guard = archive_deny_unknown
}
RemovePrivateHeader = archive_remove_private_header
}
Subscription {
Public = public
ConfirmSub = confirm_sub
ConfirmUnsub = confirm_unsub
ModSub {
Self = mod_sub
Path = mod_sub_path
}
}
Admin {
Enabled {
Self = admin_enabled
RequestSubscribers = admin_get_subscribers
EditText = admin_edit_text
Path = admin_path
}
}
Posting {
UseDeny = block_deny
BlockOthers = block_others_post
Confirm = confirm_post
Moderate {
Self = mod_post
NonMod = block_nonmod_post
Path = mod_post_path
}
SizeMax = msgsize_max
SizeMin = msgsize_min
MimeCheck {
Self = mimecheck
MimeReject = mimereject
}
}
GnupgOptions {
SignMessages = gnupg_sign_messages
PlainWithoutKey = gnupg_plain_without_key
}
Processing {
Prefix = prefix
Trailer = trailer
From = from_address
MimeCheck {
Self = mimecheck
MimeRemove = mimeremove
}
HeaderRemove = headerremove
HeaderAdd = headeradd
}
Overview {
Public = public
ConfirmSub = confirm_sub
ConfirmUnsub = confirm_unsub
ModSubEnable = mod_sub
UseDeny = block_deny
BlockOthers = block_others_post
ConfirmPosting = confirm_post
ModPosting = mod_post
NonModPosting = block_nonmod_post
MailmanRequests = mailman_requests
RemoveWarn = warn_remove
DigestEnabled = digest_enabled
DigestSettings = digest_settings
ArchiveEnabled = archive_enabled
ArchiveModOnly = archive_mod_only
ArchiveGuard = archive_deny_unknown
RemovePrivateHeader = archive_remove_private_header
AdminEnabled = admin_enabled
AdminRequestSubscribers = admin_get_subscribers
AdminEditText = admin_edit_text
FromAddress = from_address
Owner = owner_address
SQL = mysql
MainList = mainlist
ModPostPath = mod_post_path
ModSubPath = mod_sub_path
AdminPath = admin_path
Prefix = prefix
Trailer = trailer
SizeMax = msgsize_max
SizeMin = msgsize_min
MimeCheck {
Self = mimecheck
MimeRemove = mimeremove
MimeReject = mimereject
}
HeaderRemove = headerremove
HeaderAdd = headeradd
Language = lang_select
Charset = charset_select
WebUsers = webusers
}
}
}
}