css complete
This commit is contained in:
parent
bee8264b16
commit
f57e6ef896
3 changed files with 391 additions and 141 deletions
|
@ -19,30 +19,6 @@ a:visited {
|
|||
color: #8888ff;
|
||||
}
|
||||
|
||||
#warning {
|
||||
text-decoration: blink;
|
||||
color: #ff0000;
|
||||
float: left;
|
||||
}
|
||||
|
||||
table.error {
|
||||
width: 99%;
|
||||
}
|
||||
|
||||
table.error td {
|
||||
padding: 5px;
|
||||
text-align: center;
|
||||
background-color: #e0e0ff;
|
||||
}
|
||||
|
||||
table.error h2 {
|
||||
color: #ff0000;
|
||||
}
|
||||
|
||||
table.error p.msg {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
strong.big {
|
||||
font-size: large;
|
||||
}
|
||||
|
@ -77,3 +53,164 @@ table.big-pad td {
|
|||
table.small-pad td {
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
|
||||
/*********************** general **************************/
|
||||
|
||||
used classes for containers:
|
||||
title - heading of most pages (except main)
|
||||
list - list of subscribers/mailinglists/moderators/...
|
||||
add_remove - buttons and fields to manipulate such lists
|
||||
info - explanations
|
||||
question - buttons to answer a question
|
||||
options - various possibilities (buttons)
|
||||
input - group of form fields
|
||||
container - includes all other containers on a page
|
||||
|
||||
low-level classes (for "span"):
|
||||
button
|
||||
formfield
|
||||
checkbox
|
||||
help
|
||||
|
||||
and a special div:
|
||||
error
|
||||
|
||||
************************************************************/
|
||||
|
||||
div.container {
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
div.add_remove span.button {
|
||||
width: auto;
|
||||
margin-top: 0px;
|
||||
}
|
||||
|
||||
div.add_remove span.formfield {
|
||||
width: auto;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
div.list {
|
||||
padding: 10px;
|
||||
text-align: center;
|
||||
float: left;
|
||||
}
|
||||
|
||||
p.warning {
|
||||
text-decoration: blink;
|
||||
color: #ff0000;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
span.help {
|
||||
font-size: -1;
|
||||
}
|
||||
|
||||
/************************ main page ***********************
|
||||
name of container: main
|
||||
available classes: list info add_remove
|
||||
**********************************************************/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/******************* confirm delete page *******************
|
||||
name of container: delete
|
||||
available classes: title button
|
||||
***********************************************************/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/************************* edit page ***********************
|
||||
name of container: edit
|
||||
availbale classes: title list add_remove options
|
||||
***********************************************************/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/********* allow/deny/moderators/digests page **************
|
||||
name of container: parts
|
||||
available classes: title info list add_remove
|
||||
***********************************************************/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/******************* create list page **********************
|
||||
name of container: create
|
||||
available classes: title input question
|
||||
***********************************************************/
|
||||
|
||||
#create div.input span.formfield {
|
||||
text-weight: bold;
|
||||
text-size: large;
|
||||
margin-left: 0px;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/********************* config page *************************
|
||||
name of container: config
|
||||
available classes: title info input question
|
||||
***********************************************************/
|
||||
|
||||
#config div.info {
|
||||
text-size: large;
|
||||
text-weight: bold;
|
||||
}
|
||||
|
||||
#config div.input span.formfield {
|
||||
text-weight: bold;
|
||||
margin-left: 0px;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
|
||||
/******************** textfiles ****************************
|
||||
name of container: textfiles
|
||||
available classes: list info question
|
||||
***********************************************************/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/******************** edittext *****************************
|
||||
name of container: edittext
|
||||
available classes: title input info question
|
||||
***********************************************************/
|
||||
|
||||
#edittext div.input {
|
||||
float:left;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**************** error messages **************************/
|
||||
|
||||
div.error {
|
||||
width: 99%;
|
||||
padding: 5px;
|
||||
text-align: center;
|
||||
background-color: #e0e0ff;
|
||||
}
|
||||
|
||||
div.error h2 {
|
||||
color: #ff0000;
|
||||
}
|
||||
|
||||
div.error p.msg {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
|
|
|
@ -279,20 +279,28 @@ sub select_list {
|
|||
# Keep selection box a resonable size - suggested by Sebastian Andersson
|
||||
$scrollsize = 25 if(($scrollsize = $#lists + 1) > 25);
|
||||
|
||||
# Begin of content
|
||||
print '<div id="main" class="container">';
|
||||
|
||||
# Print a form
|
||||
$q->delete_all;
|
||||
print $q->startform;
|
||||
print $q->hidden(-name=>'state', -default=>'select');
|
||||
print '<table class="big-pad"><tr><td align="center" valign="top" rowspan="2">';
|
||||
|
||||
print '<div class="list">';
|
||||
print $q->scrolling_list(-name=>'list', -size=>$scrollsize, -values=>\@lists) if defined(@lists);
|
||||
print '</div>'; # end of main_mainlinglists_list
|
||||
|
||||
print '</td><td align="left" valign="top">', $LANGUAGE{'chooselistinfo'};
|
||||
print '<div class="info">', $LANGUAGE{'chooselistinfo'}, '</div>'; # explanation of options
|
||||
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'create'}]"), ' ' if ((&webauth_create_allowed == 0) || (!defined($opt_c)));
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'edit'}]"), ' ' if(defined(@lists));
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'delete'}]") if(defined(@lists));
|
||||
print '</td></tr><tr><td> </td></tr></table></div>';
|
||||
print '<div class="add_remove">';
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'create'}]"), '</span>' if ((&webauth_create_allowed == 0) || (!defined($opt_c)));
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'edit'}]"), '</span>' if(defined(@lists));
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'delete'}]"), '</span>' if(defined(@lists));
|
||||
print '</div>'; # end of main_buttons
|
||||
print $q->endform;
|
||||
|
||||
print '</div>'; # end of content
|
||||
}
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
|
@ -300,14 +308,25 @@ sub select_list {
|
|||
sub confirm_delete {
|
||||
# Make sure that the user really does want to delete the list!
|
||||
|
||||
# Begin of content
|
||||
print '<div id="delete" class="container">';
|
||||
|
||||
# Print a form ...
|
||||
$q->delete('state');
|
||||
print $q->startform;
|
||||
print $q->hidden(-name=>'state', -default=>'confirm_delete');
|
||||
print $q->hidden(-name=>'list', -default=>$q->param('list'));
|
||||
print '<h2>', $LANGUAGE{'confirmdelete'}, ' ', $q->param('list'), '</h2><br><div class="center">';
|
||||
print $q->submit(-name=>'confirm', -value=>"[$BUTTON{'no'}]"), ' ';
|
||||
print $q->submit(-name=>'confirm', -value=>"[$BUTTON{'yes'}]"), '</div>';
|
||||
|
||||
print '<div class="title">";
|
||||
print '<h2>', $LANGUAGE{'confirmdelete'}, ' ', $q->param('list'), '</h2>';
|
||||
print '</div>'; # end of delete->title
|
||||
|
||||
print '<div class="question">';
|
||||
print '<span class="button">', $q->submit(-name=>'confirm', -value=>"[$BUTTON{'no'}]"), '</span>';
|
||||
print '<span class="button">', $q->submit(-name=>'confirm', -value=>"[$BUTTON{'yes'}]"), '</span>';
|
||||
print '</div>'; # end of delete->question
|
||||
|
||||
print '</div>'; # enf of delete
|
||||
}
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
|
@ -330,30 +349,49 @@ sub display_list {
|
|||
|
||||
# Print out a form of options ...
|
||||
$q->delete('state');
|
||||
print "<h2>$LANGUAGE{'subscribersto'} $Q::list ($listaddress)</h2><hr>";
|
||||
|
||||
# Begin of content
|
||||
print '<div id="edit" class="container">';
|
||||
|
||||
print '<div class="title">';
|
||||
print "<h2>$LANGUAGE{'subscribersto'} $Q::list</h2>";
|
||||
print "<h3>($listaddress)</h3>";
|
||||
print '<hr>';
|
||||
print '</div>'; # end of edit->title
|
||||
|
||||
print $q->start_multipart_form;
|
||||
print '<table class="big-pad"><tr><td rowspan="2" valign="top" align="center">';
|
||||
print $q->hidden(-name=>'state', -default=>'edit');
|
||||
print $q->hidden(-name=>'list', -default=>$Q::list);
|
||||
|
||||
print '<div class="list">';
|
||||
print $q->scrolling_list(-name=>'delsubscriber', -size=>$scrollsize, -values=>\@subscribers, -labels=>&pretty_names, -multiple=>'true') if defined(@subscribers);
|
||||
print '</td><td valign="top" align="left">';
|
||||
print ' ', ($#subscribers + 1), ' ', $LANGUAGE{'subscribers'}, '<BR>' if defined(@subscribers);
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'deleteaddress'}]"), '<p>' if defined(@subscribers);
|
||||
print $q->textfield(-name=>'addsubscriber', -size=>'40'), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'addaddress'}, '"><BR>';
|
||||
print $q->filefield(-name=>'addfile', -size=>20, -maxlength=>100), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'addaddressfile'}, '"><br>' if ($FILE_UPLOAD);
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'addaddress'}]"), '<p>';
|
||||
print '<strong>', $LANGUAGE{'additionalparts'}, ':</strong><br>' if($list->ismodpost || $list->ismodsub || $list->isremote || $list->isdeny || $list->isallow || $list->isdigest);
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'moderators'}]"), '<img src="', $HELP_ICON_URL, '" title="', $HELPER{'moderator'}, '"> ' if ($list->ismodpost || $list->ismodsub || $list->isremote);
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'denylist'}]"), '<img src="', $HELP_ICON_URL, '" title="', $HELPER{'deny'}, '"> ' if ($list->isdeny);
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'allowlist'}]"), '<img src="', $HELP_ICON_URL, '" title="', $HELPER{'allow'}, '"> ' if ($list->isallow);
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'digestsubscribers'}]"), '<img src="', $HELP_ICON_URL, '" title="', $HELPER{'digest'}, '"> ' if ($list->isdigest);
|
||||
print '</div>'; # end of edit->list
|
||||
|
||||
print '<div class="add_remove">';
|
||||
print ($#subscribers + 1), ' ', $LANGUAGE{'subscribers'} if defined(@subscribers);
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'deleteaddress'}]"), '</span>' if defined(@subscribers);
|
||||
print '<span class="button">', $q->textfield(-name=>'addsubscriber', -size=>'40'), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'addaddress'}, '"></span>';
|
||||
print '<span class="button">', $q->filefield(-name=>'addfile', -size=>20, -maxlength=>100), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'addaddressfile'}, '"></span>' if ($FILE_UPLOAD);
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'addaddress'}]"), '</span>';
|
||||
print '</div>'; # end of edit->add_remove
|
||||
|
||||
print '<div class="options">';
|
||||
print '<h3>', $LANGUAGE{'additionalparts'}, ':</h3>' if($list->ismodpost || $list->ismodsub || $list->isremote || $list->isdeny || $list->isallow || $list->isdigest);
|
||||
print '<p>';
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'webarchive'}]"), '<img src="', $HELP_ICON_URL, '" title="', $HELPER{'webarch'}, '"> ' if(&ezmlmcgirc);
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'configuration'}]"), '<img src="', $HELP_ICON_URL, '" title="', $HELPER{'config'}, '"> ';
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'selectlist'}]");
|
||||
print '</td></tr><tr><td> </td></tr></table></div>';
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'moderators'}]"), '<img src="', $HELP_ICON_URL, '" title="', $HELPER{'moderator'}, '"> </span>' if ($list->ismodpost || $list->ismodsub || $list->isremote);
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'denylist'}]"), '<img src="', $HELP_ICON_URL, '" title="', $HELPER{'deny'}, '"> </span>' if ($list->isdeny);
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'allowlist'}]"), '<img src="', $HELP_ICON_URL, '" title="', $HELPER{'allow'}, '"> </span>' if ($list->isallow);
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'digestsubscribers'}]"), '<img src="', $HELP_ICON_URL, '" title="', $HELPER{'digest'}, '"> </span>' if ($list->isdigest);
|
||||
print '</p><p>';
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'webarchive'}]"), '<img src="', $HELP_ICON_URL, '" title="', $HELPER{'webarch'}, '"> </span>' if(&ezmlmcgirc);
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'configuration'}]"), '<img src="', $HELP_ICON_URL, '" title="', $HELPER{'config'}, '"> </span>';
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'selectlist'}]"), '</span>';
|
||||
print '</p>';
|
||||
print '</div>'; # end of edit->options
|
||||
print $q->endform;
|
||||
|
||||
print '</div>'; # end of edit
|
||||
|
||||
}
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
|
@ -556,15 +594,22 @@ sub part_subscribers {
|
|||
my($subpath) = $config =~ m{8\s*'([^']+)'};
|
||||
my($remotepath) = $config =~ m{9\s*'([^']+)'};
|
||||
|
||||
$moderated = '<div class="warning">' if ($postpath);
|
||||
$moderated .= "[$LANGUAGE{'posting'}]" if ($list->ismodpost);
|
||||
$moderated .= '<img src="' . $HELP_ICON_URL . '" title="Posting Moderators are stored in a non-standard location (' . $postpath . '). You will have to edit them manually."></div>' if ($postpath);
|
||||
$moderated .= '<div class="warning">' if ($subpath);
|
||||
$moderated .= " [$LANGUAGE{'subscription'}]" if($list->ismodsub);
|
||||
$moderated .= '<img src="' . $HELP_ICON_URL . '" title="Subscriber Moderators are stored in a non-standard location (' . $subpath . '). You will have to edit them manually"></div>' if ($subpath);
|
||||
$moderated .= '<div class="warning">' if ($remotepath);
|
||||
$moderated .= " [$LANGUAGE{'remoteadmin'}]" if($list->isremote);
|
||||
$moderated .= '<img src="' . $HELP_ICON_URL . '" title="Remote Administrators are stored in a non-standard location (' . $remotepath . '). You will have to edit them manually"></div>' if ($remotepath);
|
||||
my($divclass);
|
||||
|
||||
$divclass = ($postpath)? 'warning' : 'ok';
|
||||
$moderated .= "<p class=\"$divclass\">[$LANGUAGE{'posting'}]" if ($list->ismodpost);
|
||||
$moderated .= '<img src="' . $HELP_ICON_URL . '" title="Posting Moderators are stored in a non-standard location (' . $postpath . '). You will have to edit them manually.">' if ($postpath);
|
||||
$moderated .= '</p>' if ($list->ismodpost);
|
||||
|
||||
$divclass = ($subpath)? 'warning' : 'ok';
|
||||
$moderated .= "<p class=\"$divclass\">[$LANGUAGE{'subscription'}]" if($list->ismodsub);
|
||||
$moderated .= '<img src="' . $HELP_ICON_URL . '" title="Subscriber Moderators are stored in a non-standard location (' . $subpath . '). You will have to edit them manually">' if ($subpath);
|
||||
$moderated .= '</p>' if ($list->ismodsub);
|
||||
|
||||
$divclass = ($remotepath)? 'warning' : 'ok';
|
||||
$moderated .= "<p class=\"$divclass\">[$LANGUAGE{'remoteadmin'}]" if($list->isremote);
|
||||
$moderated .= '<img src="' . $HELP_ICON_URL . '" title="Remote Administrators are stored in a non-standard location (' . $remotepath . '). You will have to edit them manually">' if ($remotepath);
|
||||
$moderated .= '</p> if ($list->isremote);
|
||||
|
||||
}
|
||||
|
||||
|
@ -577,24 +622,37 @@ sub part_subscribers {
|
|||
# Keep selection box a resonable size - suggested by Sebastian Andersson
|
||||
$scrollsize = 25 if(($scrollsize = $#subscribers + 1) > 25);
|
||||
|
||||
# container for the content
|
||||
print '<div id="parts" class="container">';
|
||||
|
||||
# Print out a form of options ...
|
||||
$q->delete('state');
|
||||
print "<h2>$type $LANGUAGE{'for'} $listaddress</h2><hr>";
|
||||
print "<p class=\"center\">$moderated</p>" if(defined($moderated));
|
||||
|
||||
print '<div class="title">';
|
||||
print "<h2>$type $LANGUAGE{'for'} $listaddress</h2>";
|
||||
print '<hr>':
|
||||
print '</div>'; # end of parts_title
|
||||
|
||||
print '<div class="info">', "$moderated", '</div>' if(defined($moderated));
|
||||
|
||||
print $q->start_multipart_form;
|
||||
print '<table class="big-pad"><tr><td rowspan="2" valign="top" align="center">';
|
||||
print $q->hidden(-name=>'state', -default=>$part);
|
||||
print $q->hidden(-name=>'list', -default=>$Q::list), "\n";
|
||||
print $q->scrolling_list(-name=>'delsubscriber', -size=>$scrollsize, -values=>\@subscribers, -multiple=>'true', -labels=>&pretty_names) if defined(@subscribers);
|
||||
print '</td></tr><tr><td valign="top" align="left">';
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'deleteaddress'}]"), '<p>' if defined(@subscribers);
|
||||
print $q->textfield(-name=>'addsubscriber', -size=>'40'), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'addaddress'}, '"><br>';
|
||||
print $q->filefield(-name=>'addfile', -size=>20, -maxlength=>100), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'addaddressfile'}, '"><br>' if ($FILE_UPLOAD);
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'addaddress'}]"), '<p>';
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'subscribers'}]");
|
||||
print '</td></tr><tr><td> </td></tr></table></div>';
|
||||
|
||||
print '<div class="list">', $q->scrolling_list(-name=>'delsubscriber', -size=>$scrollsize, -values=>\@subscribers, -multiple=>'true', -labels=>&pretty_names), '</div>' if defined(@subscribers);
|
||||
|
||||
print '<div class="add_remove">':
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'deleteaddress'}]"), '</span>' if defined(@subscribers);
|
||||
print '<span class="formfield">', $q->textfield(-name=>'addsubscriber', -size=>'40'), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'addaddress'}, '"></span>';
|
||||
print '<span class="formfield">', $q->filefield(-name=>'addfile', -size=>20, -maxlength=>100), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'addaddressfile'}, '"></span>' if ($FILE_UPLOAD);
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'addaddress'}]"), '</span>';
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'subscribers'}]"), '</span>';
|
||||
print '</div>'; # end of parts_subscribers_actions
|
||||
|
||||
print $q->endform;
|
||||
|
||||
print '</div>'; # end of parts
|
||||
|
||||
}
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
|
@ -618,37 +676,50 @@ sub allow_create_list {
|
|||
$hostname = $DEFAULT_HOST;
|
||||
}
|
||||
|
||||
print '<div id="create" class="container">';
|
||||
|
||||
# Print a form of options ...
|
||||
$q->delete_all;
|
||||
print '<h2>', $LANGUAGE{'createnew'}, '</h2><hr>';
|
||||
|
||||
print '<div class="title">';
|
||||
print '<h2>', $LANGUAGE{'createnew'}, '</h2>';
|
||||
print '<hr'>;
|
||||
print '</div>'; # end of create->title
|
||||
|
||||
print $q->startform;
|
||||
print $q->hidden(-name=>'state', -value=>'create');
|
||||
print '<strong class="big">', $LANGUAGE{'listname'}, ': </strong>', $q->textfield(-name=>'list', -size=>'20'), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'listname'}, '"><p>';
|
||||
print '<strong class="big">', $LANGUAGE{'listaddress'}, ': </strong>';
|
||||
print $q->textfield(-name=>'inlocal', -default=>$username, -size=>'10');
|
||||
print ' <strong class="big">@</strong> ', $q->textfield(-name=>'inhost', -default=>$hostname, -size=>'30'), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'listadd'}, '">';
|
||||
|
||||
print '<p><strong class="big">', $LANGUAGE{'listoptions'}, ':</strong>';
|
||||
print '<div class="input">';
|
||||
print '<span class="formfield">', $LANGUAGE{'listname'}, ': ', $q->textfield(-name=>'list', -size=>'20'), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'listname'}, '"></span>';
|
||||
print '<span class="formfield">', $LANGUAGE{'listaddress'}, ': ', $q->textfield(-name=>'inlocal', -default=>$username, -size=>'10')';
|
||||
print ' @ ', $q->textfield(-name=>'inhost', -default=>$hostname, -size=>'30'), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'listadd'}, '"></span>';
|
||||
|
||||
print '<span class="formfield">', $LANGUAGE{'listoptions'}, ':</span>';
|
||||
&display_options($DEFAULT_OPTIONS);
|
||||
print '</p>';
|
||||
|
||||
# Allow creation of mysql table if the module allows it
|
||||
if($Mail::Ezmlm::MYSQL_BASE) {
|
||||
print '<p> ', $q->checkbox(-name=>'sql', -label=>$LANGUAGE{'mysqlcreate'}, -on=>1);
|
||||
print ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'mysqlcreate'}, '"></p>';
|
||||
print '<span class="formfield">', $q->checkbox(-name=>'sql', -label=>$LANGUAGE{'mysqlcreate'}, -on=>1);
|
||||
print ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'mysqlcreate'}, '"></span>';
|
||||
}
|
||||
|
||||
print '<p><strong class="big">', $LANGUAGE{'allowedtoedit'}, ': </strong>',
|
||||
$q->textfield(-name=>'webusers', -value=>$ENV{'REMOTE_USER'}||'ALL', -size=>'30'), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'webusers'}, '">',
|
||||
'<br><font class="helper">', $HELPER{'allowedit'}, '</font></p>'
|
||||
if(-e "$WEBUSERS_FILE");
|
||||
if(-e "$WEBUSERS_FILE") {
|
||||
print '<span class="formfield">', $LANGUAGE{'allowedtoedit'}, ': ';
|
||||
print $q->textfield(-name=>'webusers', -value=>$ENV{'REMOTE_USER'}||'ALL', -size=>'30');
|
||||
print ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'webusers'}, '"></span>';
|
||||
print '<span class="help">', $HELPER{'allowedit'}, '</span>';
|
||||
}
|
||||
print '</div>'; # end of create->input
|
||||
|
||||
print '<p>', $q->submit(-name=>'action', -value=>"[$BUTTON{'createlist'}]"), ' ';
|
||||
print $q->reset(-value=>"[$BUTTON{'resetform'}]"), ' ';
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'cancel'}]");
|
||||
print '</p>';
|
||||
print '<div class="question">';
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'createlist'}]"), '</span>';
|
||||
print '<span class="button">', $q->reset(-value=>"[$BUTTON{'resetform'}]"), '</span>';
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'cancel'}]"), '</span>';
|
||||
print '</div>'; # end of create->question
|
||||
print $q->endform;
|
||||
|
||||
print '</div>'; # end of create
|
||||
|
||||
}
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
|
@ -670,7 +741,7 @@ sub create_list {
|
|||
# Sanity Checks ...
|
||||
return 1 if ($listname eq '' || $qmail eq '');
|
||||
if(-e ("$LIST_DIR/$listname/lock") || -e ("$HOME_DIR/.qmail-$qmail")) {
|
||||
print "<h1>List '$listname' already exists :(</h1>";
|
||||
print "<h1 class="warning">List '$listname' already exists :(</h1>";
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -726,15 +797,28 @@ sub list_config {
|
|||
$listname = $q->param('list');
|
||||
$listaddress = &this_listaddress;
|
||||
|
||||
# Begin of content
|
||||
print '<div id="config">';
|
||||
|
||||
# Print a form of options ...
|
||||
$q->delete_all;
|
||||
print '<h2>', $LANGUAGE{'editconfiguration'}, '</h2><hr>';
|
||||
|
||||
print '<div class="title">';
|
||||
print '<h2>', $LANGUAGE{'editconfiguration'}, '</h2>';
|
||||
print '<hr>';
|
||||
print '</div>'; # end of config->title
|
||||
|
||||
print $q->startform;
|
||||
print $q->hidden(-name=>'state', -value=>'configuration');
|
||||
print $q->hidden(-name=>'list', -value=>$listname);
|
||||
print '<big><strong>', $LANGUAGE{'listname'}, ": <em>$listname</em><br>";
|
||||
print "$LANGUAGE{'listaddress'}: <em>$listaddress</em></strong></big><p>";
|
||||
print '<big><strong>', $LANGUAGE{'listoptions'}, ':</big></strong><br>';
|
||||
|
||||
print '<div class="info">';
|
||||
print '<p>', $LANGUAGE{'listname'}, ": <em>$listname</em></p>";
|
||||
print '<p>', "$LANGUAGE{'listaddress'}: <em>$listaddress</em></p>";
|
||||
print '</div>'; # end of config->info
|
||||
|
||||
print '<div class="input">';
|
||||
print '<h2>', $LANGUAGE{'listoptions'}, ':</h2>';
|
||||
|
||||
# Print a list of options, selecting the ones that apply to this list ...
|
||||
&display_options($list->getconfig);
|
||||
|
@ -745,10 +829,10 @@ sub list_config {
|
|||
$mimeremove = $list->getpart('mimeremove');
|
||||
$prefix = $list->getpart('prefix');
|
||||
|
||||
print '<p><big><strong>', $LANGUAGE{'prefix'}, ': </strong></big>', $q->textfield(-name=>'prefix', -default=>$prefix, -size=>12), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'prefix'}, '">' if defined($prefix);
|
||||
print '<p><big><strong>', $LANGUAGE{'headerremove'}, ':</big></strong> <img src="', $HELP_ICON_URL, '" title="', $HELPER{'headerremove'}, '"><br>', $q->textarea(-name=>'headerremove', -default=>$headerremove, -rows=>5, -columns=>70);
|
||||
print '<p><big><strong>', $LANGUAGE{'headeradd'}, ':</big></strong> <img src="', $HELP_ICON_URL, '" title="', $HELPER{'headeradd'}, '"><br>', $q->textarea(-name=>'headeradd', -default=>$headeradd, -rows=>5, -columns=>70);
|
||||
print '<p><big><strong>', $LANGUAGE{'mimeremove'}, ':</big></strong> <img src="', $HELP_ICON_URL, '" title="', $HELPER{'mimeremove'}, '"><br>', $q->textarea(-name=>'mimeremove', -default=>$mimeremove, -rows=>5, -columns=>70) if defined($mimeremove);
|
||||
print '<span class="formfield">', $LANGUAGE{'prefix'}, ': ', $q->textfield(-name=>'prefix', -default=>$prefix, -size=>12), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'prefix'}, '"></span>' if defined($prefix);
|
||||
print '<p class="formfield">', $LANGUAGE{'headerremove'}, ': <img src="', $HELP_ICON_URL, '" title="', $HELPER{'headerremove'}, '"><br>', $q->textarea(-name=>'headerremove', -default=>$headerremove, -rows=>5, -columns=>70), '</span>';
|
||||
print '<span class="formfield">', $LANGUAGE{'headeradd'}, ': <img src="', $HELP_ICON_URL, '" title="', $HELPER{'headeradd'}, '"><br>', $q->textarea(-name=>'headeradd', -default=>$headeradd, -rows=>5, -columns=>70), '</div>';
|
||||
print '<span class="formfield">', $LANGUAGE{'mimeremove'}, ': <img src="', $HELP_ICON_URL, '" title="', $HELPER{'mimeremove'}, '"><br>', $q->textarea(-name=>'mimeremove', -default=>$mimeremove, -rows=>5, -columns=>70), '</span>' if defined($mimeremove);
|
||||
|
||||
if(open(WEBUSER, "<$WEBUSERS_FILE")) {
|
||||
my($webusers);
|
||||
|
@ -758,18 +842,24 @@ sub list_config {
|
|||
close WEBUSER;
|
||||
$webusers ||= $ENV{'REMOTE_USER'} || 'ALL';
|
||||
|
||||
print '<p><big><strong>', $LANGUAGE{'allowedtoedit'}, ': </strong></big>',
|
||||
$q->textfield(-name=>'webusers', -value=>$webusers, -size=>'30'), ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'webusers'}, '">',
|
||||
'<br><font size="-1">', $HELPER{'allowedit'}, '</font>';
|
||||
print '<span class="formfield">', $LANGUAGE{'allowedtoedit'}, ': ';
|
||||
print $q->textfield(-name=>'webusers', -value=>$webusers, -size=>'30');
|
||||
print ' <img src="', $HELP_ICON_URL, '" title="', $HELPER{'webusers'}, '"></span>',
|
||||
print '<span class="help">', $HELPER{'allowedit'}, '</span>';
|
||||
|
||||
}
|
||||
print '</div>'; # end of config->input
|
||||
|
||||
print '<div class="question">';
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'updateconfiguration'}]"), '</span>';
|
||||
print '<span class="button">', $q->reset(-value=>"[$BUTTON{'resetform'}]"), '</span>';
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'cancel'}]"), '</span>';
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'edittexts'}]"), '</span>';
|
||||
print '</div>'; # end of config->question
|
||||
|
||||
print '<p>', $q->submit(-name=>'action', -value=>"[$BUTTON{'updateconfiguration'}]"), ' ';
|
||||
print $q->reset(-value=>"[$BUTTON{'resetform'}]"), ' ';
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'cancel'}]"), ' ';
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'edittexts'}]");
|
||||
print $q->endform;
|
||||
|
||||
print '</div>'; # end of config
|
||||
}
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
|
@ -862,19 +952,32 @@ sub list_text {
|
|||
@files = grep !/^\./, readdir DIR;
|
||||
closedir DIR;
|
||||
|
||||
# Begin of content
|
||||
print '<div id="textfiles">';
|
||||
|
||||
# Print a form ...
|
||||
$q->delete('state');
|
||||
print $q->startform;
|
||||
print $q->hidden(-name=>'state', -default=>'list_text');
|
||||
print $q->hidden(-name=>'list', -default=>$q->param('list'));
|
||||
print '<table class="big-pad"><tr><td align="center" valign="top" rowspan="2">';
|
||||
|
||||
print '<div class="list">;
|
||||
print $q->scrolling_list(-name=>'file', -values=>\@files);
|
||||
print '</td><td align="center" valign="top">';
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'editfile'}]"), ' ';
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'cancel'}]");
|
||||
print '<p>', $LANGUAGE{'edittextinfo'}, '</td></tr><tr><td> </td></tr></table></div>';
|
||||
print '</div>'; # end of textfiles->list
|
||||
|
||||
print '<div class="info">';
|
||||
print $LANGUAGE{'edittextinfo'};
|
||||
print '</div>'; # end of textfiles->info
|
||||
|
||||
print '<div class="question">';
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'editfile'}]"), '</span>';
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'cancel'}]"), '</span>';
|
||||
print '</div>'; # end of textfiles->question
|
||||
|
||||
print $q->endform;
|
||||
|
||||
print '</div>';
|
||||
|
||||
}
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
|
@ -886,23 +989,38 @@ sub edit_text {
|
|||
my($list) = new Mail::Ezmlm("$LIST_DIR/$Q::list");
|
||||
$content = $list->getpart("text/$Q::file");
|
||||
|
||||
# Begin of content
|
||||
print '<div id="edittext">';
|
||||
|
||||
# Print a form ...
|
||||
$q->delete('state');
|
||||
|
||||
print '<div class="title">';
|
||||
print '<h2>', $LANGUAGE{'editingfile'}, ': ', $Q::file, '</h2>';
|
||||
print '<table class="small-pad"><tr><td valign="top" rowspan="2">';
|
||||
print '</div>'; # end of edittext->title
|
||||
|
||||
print $q->startform;
|
||||
print $q->hidden(-name=>'state', -default=>'edit_text');
|
||||
print $q->hidden(-name=>'list', -default=>$q->param('list'));
|
||||
print $q->hidden(-name=>'file', -default=>$q->param('file'));
|
||||
print $q->textarea(-name=>'content', -default=>$content, -rows=>'25', -columns=>'72');
|
||||
print '</td><td valign="top" align="left">';
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'savefile'}]"), ' ';
|
||||
print $q->reset(-value=>"[$BUTTON{'resetform'}]"), ' ';
|
||||
print $q->submit(-name=>'action', -value=>"[$BUTTON{'cancel'}]");
|
||||
print '<p>', $LANGUAGE{'editfileinfo'};
|
||||
print $q->endform;
|
||||
print '</td></tr><tr><td> <td></tr></table>'
|
||||
|
||||
print '<div class="input">';
|
||||
print '<span class="formfield">', $q->textarea(-name=>'content', -default=>$content, -rows=>'25', -columns=>'72'), '</span>';
|
||||
print '</div>'; # end of edittext->input
|
||||
|
||||
print '<id class="info">';
|
||||
print $LANGUAGE{'editfileinfo'};
|
||||
print '</div>'; # end of edittext->info
|
||||
|
||||
print '<div class="question">';
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'savefile'}]"), '</span>';
|
||||
print '<span class="button">', $q->reset(-value=>"[$BUTTON{'resetform'}]"), '</span>';
|
||||
print '<span class="button">', $q->submit(-name=>'action', -value=>"[$BUTTON{'cancel'}]"), '</span>';
|
||||
print '</div>'; # end of edittext->question
|
||||
|
||||
print $q->endform;
|
||||
|
||||
print '</div>'; # end of edittext
|
||||
}
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
|
@ -965,37 +1083,32 @@ sub display_options {
|
|||
my($i, $j);
|
||||
|
||||
print "<!-- $opts -->";
|
||||
print '<table class="small-pad" class="left"><tr><td>';
|
||||
print '<p>';
|
||||
foreach $i (grep {/\D/} keys %EZMLM_LABELS) {
|
||||
if ($opts =~ /^\w*$i\w*\s*/) {
|
||||
print $q->checkbox(-name=>$i, -value=>$i, -label=>$EZMLM_LABELS{$i}[0], -on=>'1');
|
||||
print '<span class="checkbox">', $q->checkbox(-name=>$i, -value=>$i, -label=>$EZMLM_LABELS{$i}[0], -on=>'1')';
|
||||
} else {
|
||||
print $q->checkbox(-name=>$i, -value=>$i, -label=>$EZMLM_LABELS{$i}[0]);
|
||||
print '<span class="checkbox">', $q->checkbox(-name=>$i, -value=>$i, -label=>$EZMLM_LABELS{$i}[0]);
|
||||
}
|
||||
print '<img src="', $HELP_ICON_URL, '" border="0" title="', $EZMLM_LABELS{$i}[1] , '">';
|
||||
print '<img src="', $HELP_ICON_URL, '" border="0" title="', $EZMLM_LABELS{$i}[1] , '"></span>';
|
||||
print '</td>'; $j++;
|
||||
if ($j >= 3) {
|
||||
$j = 0; print '</tr><tr>';
|
||||
$j = 0; print '</p><p>';
|
||||
}
|
||||
print '<td>';
|
||||
}
|
||||
print '</td></tr></table>';
|
||||
print '</p>';
|
||||
|
||||
print '<table class="small-pad" class="left">';
|
||||
foreach $i (grep {/\d/} keys %EZMLM_LABELS) {
|
||||
print '<tr><td>';
|
||||
print '<p>';
|
||||
if ($opts =~ /$i (?:'(.+?)')/) {
|
||||
print $q->checkbox(-name=>$i, -value=>$i, -label=>$EZMLM_LABELS{$i}[0], -on=>'1');
|
||||
print '<span class="checkbox">', $q->checkbox(-name=>$i, -value=>$i, -label=>$EZMLM_LABELS{$i}[0], -on=>'1');
|
||||
} else {
|
||||
print $q->checkbox(-name=>$i, -value=>$i, -label=>$EZMLM_LABELS{$i}[0]);
|
||||
print '<span class="checkbox">', $q->checkbox(-name=>$i, -value=>$i, -label=>$EZMLM_LABELS{$i}[0]);
|
||||
}
|
||||
print '<img src="', $HELP_ICON_URL, '" border="0" title="', $EZMLM_LABELS{$i}[1] , '">';
|
||||
print '</td><td>';
|
||||
print $q->textfield(-name=>"$i-value", -value=>$1||$EZMLM_LABELS{$i}[2], -size=>30);
|
||||
print '</td></tr>';
|
||||
|
||||
print '<img src="', $HELP_ICON_URL, '" border="0" title="', $EZMLM_LABELS{$i}[1] , '"></span>';
|
||||
print '<span class="formfield">', $q->textfield(-name=>"$i-value", -value=>$1||$EZMLM_LABELS{$i}[2], -size=>30), '</span>';
|
||||
print '</p>';
|
||||
}
|
||||
print '</table>';
|
||||
|
||||
}
|
||||
|
||||
|
@ -1050,7 +1163,7 @@ BEGIN {
|
|||
sub handle_errors {
|
||||
my $msg = shift;
|
||||
print << "EOM";
|
||||
</table><table class="error"><tr><td>
|
||||
</div><div class="error">
|
||||
<h2>A fatal error has occoured</h2>
|
||||
<p>Something you did caused this script to bail out. The error
|
||||
message we got was</p>
|
||||
|
@ -1059,7 +1172,7 @@ BEGIN {
|
|||
If you still find yourself getting this error, please
|
||||
contact the <a href="mailto:webmaster\@$DEFAULT_HOST">site administrator</a>
|
||||
quoting the error message above.</p>
|
||||
</td></tr></table></div>
|
||||
</</div>
|
||||
EOM
|
||||
|
||||
}
|
||||
|
|
|
@ -162,7 +162,7 @@
|
|||
confirmdelete => 'Bestätige die Löschung von ', # list name
|
||||
subscribersto => 'Abonnenten von', # list name
|
||||
subscribers => 'Abonnenten',
|
||||
additionalparts => 'Weitere Listen-Bestandteile',
|
||||
additionalparts => 'Weitere Optionen',
|
||||
posting => 'Einsendungen',
|
||||
subscription => 'Einschreibung',
|
||||
remoteadmin => 'Entfernte AdministratorIn',
|
||||
|
|
Loading…
Add table
Reference in a new issue