Commit 8522fffa authored by sympa-authors's avatar sympa-authors
Browse files

*** empty log message ***


git-svn-id: https://subversion.renater.fr/sympa/trunk@2925 05aa8bb8-cd2b-0410-b1d7-8918dfa770ce
parent 56841e40
......@@ -1002,75 +1002,75 @@ command-line arguments :
\begin {itemize}
\item \option {- - prefix=PREFIX}, the \Sympa homedirectory (default /home/sympa/)
\item \option {- -prefix=PREFIX}, the \Sympa homedirectory (default /home/sympa/)
\item \option {- - with-bindir=DIR}, user executables in DIR (default /home/sympa/bin/)\\
\item \option {--with-bindir=DIR}, user executables in DIR (default /home/sympa/bin/)\\
\file {queue} and \file {bouncequeue} programs will be installed in this directory.
If sendmail is configured to use smrsh (check the mailer prog definition in your sendmail.cf),
this should point to \dir {/etc/smrsh}. This is probably the case if you are using Linux RedHat.
\item \option {- - with-sbindir=DIR}, system admin executables in DIR (default /home/sympa/bin)
\item \option {--with-sbindir=DIR}, system admin executables in DIR (default /home/sympa/bin)
\item \option {- - with-libexecdir=DIR}, program executables in DIR (default /home/sympa/bin)
\item \option {--with-libexecdir=DIR}, program executables in DIR (default /home/sympa/bin)
\item \option {- - with-cgidir=DIR}, CGI programs in DIR (default /home/sympa/bin)
\item \option {--with-cgidir=DIR}, CGI programs in DIR (default /home/sympa/bin)
\item \option {- - with-iconsdir=DIR}, web interface icons in DIR (default /home/httpd/icons)
\item \option {--with-iconsdir=DIR}, web interface icons in DIR (default /home/httpd/icons)
\item \option {- - with-datadir=DIR}, default configuration data in DIR (default /home/sympa/bin/etc)
\item \option {--with-datadir=DIR}, default configuration data in DIR (default /home/sympa/bin/etc)
\item \option {- - with-confdir=DIR}, Sympa main configuration files in DIR (default /etc)\\
\item \option {--with-confdir=DIR}, Sympa main configuration files in DIR (default /etc)\\
\file {sympa.conf} and \file {wwsympa.conf} will be installed there.
\item \option {- - with-exlpdir=DIR}, modifiable data in DIR (default /home/sympa/expl/)
\item \option {--with-exlpdir=DIR}, modifiable data in DIR (default /home/sympa/expl/)
\item \option {- - with-libdir=DIR}, code libraries in DIR (default /home/sympa/bin/)
\item \option {--with-libdir=DIR}, code libraries in DIR (default /home/sympa/bin/)
\item \option {- - with-mandir=DIR}, man documentation in DIR (default /usr/local/man/)
\item \option {--with-mandir=DIR}, man documentation in DIR (default /usr/local/man/)
\item \option {- - with-docdir=DIR}, man files in DIR (default /home/sympa/doc/)
\item \option {--with-docdir=DIR}, man files in DIR (default /home/sympa/doc/)
\item \option {- - with-initdir=DIR}, install System V init script in DIR (default /etc/rc.d/init.d)
\item \option {--with-initdir=DIR}, install System V init script in DIR (default /etc/rc.d/init.d)
\item \option {- - with-lockdir=DIR}, create lock files in DIR (default /var/lock/subsys)
\item \option {--with-lockdir=DIR}, create lock files in DIR (default /var/lock/subsys)
\item \option {- - with-piddir=DIR}, create .pid files in DIR (default /home/sympa/)
\item \option {--with-piddir=DIR}, create .pid files in DIR (default /home/sympa/)
\item \option {- - with-etcdir=DIR}, Config directories populated by the user are in DIR (default /home/sympa/etc)
\item \option {--with-etcdir=DIR}, Config directories populated by the user are in DIR (default /home/sympa/etc)
\item \option {- - with-localedir=DIR}, create language files in DIR (default /home/sympa/locale)
\item \option {--with-localedir=DIR}, create language files in DIR (default /home/sympa/locale)
\item \option {- - with-scriptdir=DIR}, create script files in DIR (default /home/sympa/script)
\item \option {--with-scriptdir=DIR}, create script files in DIR (default /home/sympa/script)
\item \option {- - with-sampledir=DIR}, create sample files in DIR (default /home/sympa/sample)
\item \option {--with-sampledir=DIR}, create sample files in DIR (default /home/sympa/sample)
\item \option {- - with-spooldir=DIR}, create directory in DIR (default /home/sympa/spool)
\item \option {--with-spooldir=DIR}, create directory in DIR (default /home/sympa/spool)
\item \option {- - with-perl=FULLPATH}, set full path to Perl interpreter (default /usr/bin/perl)
\item \option {--with-perl=FULLPATH}, set full path to Perl interpreter (default /usr/bin/perl)
\item \option {- - with-openssl=FULLPATH}, set path to OpenSSL (default /usr/local/ssl/bin/openssl)
\item \option {--with-openssl=FULLPATH}, set path to OpenSSL (default /usr/local/ssl/bin/openssl)
\item \option {- - with-user=LOGIN}, set sympa user name (default sympa)\\
\item \option {--with-user=LOGIN}, set sympa user name (default sympa)\\
\Sympa daemons are running under this UID.
\item \option {- - with-group=LOGIN}, set sympa group name (default sympa)\\
\item \option {--with-group=LOGIN}, set sympa group name (default sympa)\\
\Sympa daemons are running under this UID.
\item \option {- - with-sendmail\_aliases=ALIASFILE}, set aliases file to be used by Sympa (default /etc/mail/sympa\_aliases). (You can overright this value at runtime giving its value in \file {sympa.conf})\\
\item \option {--with-sendmail\_aliases=ALIASFILE}, set aliases file to be used by Sympa (default /etc/mail/sympa\_aliases). (You can overright this value at runtime giving its value in \file {sympa.conf})\\
\item \option {- - with-virtual\_aliases=ALIASFILE}, set postfix virtual file to be used by Sympa (default /etc/mail/sympa\_virtual)\\
\item \option {--with-virtual\_aliases=ALIASFILE}, set postfix virtual file to be used by Sympa (default /etc/mail/sympa\_virtual)\\
This is used by the \file {alias\_manager.pl} script :
\item \option {- - with-newaliases=FULLPATH}, set path to sendmail newaliases command (default /usr/bin/newaliases)
\item \option {--with-newaliases=FULLPATH}, set path to sendmail newaliases command (default /usr/bin/newaliases)
\item \option {- - with-newaliases\_arg=ARGS}, set arguments to newaliases command (default NONE)
\item \option {--with-newaliases\_arg=ARGS}, set arguments to newaliases command (default NONE)
This is used by the \file {postfix\_manager.pl} script :
\item \option {- - with-postmap=FULLPATH}, set path to postfix postmap command (default /usr/sbin/postmap)
\item \option {--with-postmap=FULLPATH}, set path to postfix postmap command (default /usr/sbin/postmap)
\item \option {- - with-postmap\_arg=ARGS}, set arguments to postfix postmap command (default NONE)
\item \option {--with-postmap\_arg=ARGS}, set arguments to postfix postmap command (default NONE)
\end {itemize}
......@@ -1150,7 +1150,7 @@ using \file {testlogs.pl}.
The \unixcmd {make install} step should have installed a \unixcmd {sympa} init script in
your \dir {/etc/rc.d/init.d/} directory (you can change this at \unixcmd {configure}
time with the \option {- - with-initdir} option). You should edit your runlevels to make
time with the \option {--with-initdir} option). You should edit your runlevels to make
sure \Sympa starts after Apache and MySQL. Note that \textindex{MySQL} should
also start before \textindex{Apache} because of \file {wwsympa.fcgi}.
......@@ -1164,34 +1164,34 @@ messages distribution.
\begin {itemize}
\item \option {- - debug} | \option {-d}
\item \option {--debug} | \option {-d}
Sets \Sympa in debug mode and keeps it attached to the terminal.
Debugging information is output to STDERR, along with standard log
information. Each function call is traced. Useful while reporting
a bug.
\item \option {\-\-service} \textit {process\_command} | \textit {process\_message}
\item \option {--service}
Sets \Sympa daemon in way it process only message distribution (process\_message) or in way it process only command (process\_command).
\item \option {- - config \textit {config\_file}} | \option {-f \textit {config\_file}}
\item \option {--config \textit {config\_file}} | \option {-f \textit {config\_file}}
Forces \Sympa to use an alternative configuration file. Default behavior is
to use the configuration file as defined in the Makefile (\$CONFIG).
\item \option {- - mail} | \option {-m}
\item \option {--mail} | \option {-m}
\Sympa will log calls to sendmail, including recipients. Useful for
keeping track of each mail sent (log files may grow faster though).
\item \option {- - lang \textit {catalog}} | \option {-l \textit {catalog}}
\item \option {--lang \textit {catalog}} | \option {-l \textit {catalog}}
Set this option to use a language catalog for \Sympa.
The corresponding catalog file must be located in \tildedir {sympa/locale}
directory.
\item \option {- - keepcopy \textit {recipient\_directory}} | \option {-k \textit {recipient\_directory}}
\item \option {--keepcopy \textit {recipient\_directory}} | \option {-k \textit {recipient\_directory}}
This option tells Sympa to keep a copy of every incoming message,
instead of deleting them. \textit {recipient\_directory} is the directory
......@@ -1204,60 +1204,60 @@ messages distribution.
\end{verbatim}
\end {quote}
\item \option {- - create\_list - - robot \textit {robotname} - - input\_file \textit {list\_file.xml}}
\item \option {--create\_list --robot \textit {robotname} --input\_file \textit {list\_file.xml}}
Create the list described by the xml file, see \ref{list-creation-sympa},
page~\pageref{list-creation-sympa}.
\item \option {- - close\_list \textit {listname@robot}}
\item \option {--close\_list \textit {listname@robot}}
Close the list (changing its status to closed), remove aliases and remove
subscribers from DB (a dump is created in the list directory to allow restoring
the list). See \ref{family-close-list}, page~\pageref{family-close-list} when you
are in a family context.
\item \option {- - dump \textit {listname \texttt {|} ALL}}
\item \option {--dump \textit {listname \texttt {|} ALL}}
Dumps subscribers of a list or all lists. Subscribers are dumped
in \file {subscribers.db.dump}.
\item \option {- - import \textit {listname}}
\item \option {--import \textit {listname}}
Import subscribers in the \textit {listname} list. Data are read from STDIN.
\item \option {- - lowercase}
\item \option {--lowercase}
Lowercases e-mail addresses in database.
\item \option {- - help} | \option {-h}
\item \option {--help} | \option {-h}
Print usage of sympa.pl.
\item \option {- - make\_alias\_file}
\item \option {--make\_alias\_file}
Create an aliases file in /tmp/ with all list aliases (only list which status is 'open'). It uses the list\_aliases.tt2
template.
\item \option {- - version} | \option {-v}
\item \option {--version} | \option {-v}
Print current version of \Sympa.
\item \option {- - instanciate\_family \textit {familyname} \textit {robotname} - - input\_file \textit {family\_file.xml}}
\item \option {--instanciate\_family \textit {familyname} \textit {robotname} --input\_file \textit {family\_file.xml}}
Instantiate the family \textit {familyname}. See \ref{lists-families},
page~\pageref{lists-families}.
\item \option {- - close\_family \textit {familyname} - - robot \textit {robotname}}
\item \option {--close\_family \textit {familyname} --robot \textit {robotname}}
Close the \textit {familyname} family. See \ref{family-closure},
page~\pageref{family-closure}.
\item \option {- - add\_list \textit {familyname} - - robot \textit {robotname} - - input\_file \textit {list\_file.xml}}
\item \option {--add\_list \textit {familyname} --robot \textit {robotname} --input\_file \textit {list\_file.xml}}
Add the list described in the XML file to the \textit{familyname} family. See \ref{family-add-list},
page~\pageref{family-add-list}.
\item \option {- - modify\_list \textit {familyname} - - robot \textit {robotname} - - input\_file \textit {list\_file.xml}}
\item \option {--modify\_list \textit {familyname} --robot \textit {robotname} --input\_file \textit {list\_file.xml}}
Modify the existing family list, with description contained in the XML file. See \ref{family-modify-list},
page~\pageref{family-modify-list}.
......@@ -1754,10 +1754,40 @@ see a nice mailto adresses where others have nothing.
browsing archives. This block all robot, even google and co.
\subsection {\cfkeyword {dark\_color} \cfkeyword {light\_color} \cfkeyword {text\_color} \cfkeyword {bg\_color} \cfkeyword {error\_color} \cfkeyword {selected\_color} \cfkeyword {shaded\_color}}
\subsection {\cfkeyword {color_0}, \cfkeyword {color_1} .. \cfkeyword {color_15}}
\label {colors}
They are the color definition for web interface. Thoses parameters can be overwritten in each virtual robot definition.
The color are used in the CSS file and unfortunitly they are also in use in some web templates. The sympa admin interface
show every colors in use.
\subsection {\cfkeyword {dark\_color} \cfkeyword {light\_color} \cfkeyword {text\_color} \cfkeyword {bg\_color} \cfkeyword {error\_color} \cfkeyword {selected\_color} \cfkeyword {shaded\_color}}
Deprecated. They are the color definition for previous web interface. Thoses parameters are unused in 5.1 and higher
version but still availible.style.css, print.css, print-preview.css and fullPage.css
\subsection {\cfkeyword {css\_path}}
Pre-parsed CSS files (let's say static css files) can be installed using Sympa server skins module. Thoses CSS files are
installed in a part of the web server that can be reached without using sympa web engine. In order to do this edit the
robot.conf file and set the css_path parameter. Then retart the server and use skins module from the "admin sympa" page
to install preparsed CSS file. The in order to replace dynamic CSS by thoses static files
set the \cfkeyword {css\_url} parameter.
\subsection {\cfkeyword {css\_url}}
By default, CSS files style.css, print.css, print-preview.css and fullPage.css are delivred by Sympa web interface itself using a sympa action
named css. URL look like http://foo.org/sympa/css/style.css . CSS file are made parsing a web\_tt2 file named css.tt2. This allow dynamique
definition of colors and in a near futur a complete definition of the skin, user preference skins etc.
They are the color definition for web interface. Default are set in the main Makefile. Thoses parameters can be overwritten in each virtual robot definition.
In order to make sympa web interface faster, it is strongly recommended to install static css file somewhere in your web site. This way sympa will deliver
only one page insteed of one page and four css page at each clic. This can be done using css\_url parameter. The parameter must contain the URL of the
directory where style.css, print.css, print-preview.css and fullPage.css are installed. You can make your own a sophisticated new skin editing thoses
files. The server admin module include a CSS administration page that can help you to install static CSS.
\subsection {\cfkeyword {cookie}}
......
From: [% from %]
To: [%|loc(list.name)%]Moderators of list %1[%END%] <[% list.name %]-editor@[% list.host %]>
Subject: [% FILTER qencode %][%|loc(list.name,msg_from)%]Article to be approved for list %1 from %2[%END%][%END%]
Subject: [% FILTER qencode %][%|loc(list.name)%]Article to be approved for %1[%END%][%END%]
Reply-To: [% conf.email %]@[% conf.host %]
Mime-version: 1.0
Content-Type: multipart/mixed; boundary="[% boundary %]"
......@@ -21,7 +21,6 @@ mailto:[% conf.email %]@[% conf.host %]?subject=REJECT%20[% list.name %]%20[% mo
REJECT [% list.name %] [% modkey %]
[% END %]
[%|loc(mod_spool_size)%]Number of messages awaiting moderation for this list : %1[%END%]
--[% boundary %]
Content-Type: message/rfc822
Content-Transfer-Encoding: 8bit
......
......@@ -54,6 +54,8 @@ my @valid_options = qw(
openssl capath cafile key_passwd ssl_cert_dir remove_headers
antivirus_path antivirus_args antivirus_notify anonymous_header_fields sendmail_aliases
dark_color light_color text_color bg_color error_color selected_color shaded_color
color_0 color_1 color_2 color_3 color_4 color_5 color_6 color_7 color_8 color_9 color_10 color_11 color_12 color_13 color_14 color_15
css_url css_path
ldap_export_name ldap_export_host ldap_export_suffix ldap_export_password
ldap_export_dnmanager ldap_export_connection_timeout urlize_min_size
list_check_smtp list_check_suffixes spam_protection web_archive_spam_protection soap_url
......@@ -148,13 +150,29 @@ my %Default_Conf =
'antivirus_args' => '',
'antivirus_notify' => 'sender',
'anonymous_header_fields' => 'Sender,X-Sender,Received,Message-id,From,X-Envelope-To,Resent-From,Reply-To,Organization,Disposition-Notification-To,X-Envelope-From,X-X-Sender',
'dark_color' => '#330099',
'light_color' => '#ccccff',
'dark_color' => 'silver',
'light_color' => '#aaddff',
'text_color' => '#000000',
'bg_color' => '#ffffff',
'bg_color' => '#ffffcc',
'error_color' => '#ff6666',
'selected_color' => '#3366cc',
'shaded_color' => '#eeeeee',
'selected_color' => 'silver',
'shaded_color' => '#66cccc',
'color_0' => '#F0F0F0', # very light grey use in tables
'color_1' => '#999', # main menu button color | #999
'color_2' => '#333', # font color | #333
'color_3' => '#929292', # top boxe and footer box bacground color | #929292
'color_4' => 'silver', # page backgound color | silver
'color_5' => '#fff', # ?? | fff
'color_6' => '#99ccff', # list menu current button | ffc
'color_7' => '#88bbdd', # main menu, button on mouse over, | ccc
'color_8' => '#3366CC', # | FF0000,
'color_9' => '#DEE7F7',
'color_10' => '#777777', # inactive button
'color_11' => '#3366CC', # |666
'color_12' => '#000',
'color_13' => '#ffffcc', # input backgound | transparent
'color_14' => '#000',
'color_15' => '#000',
'chk_cert_expiration_task' => '',
'crl_update_task' => '',
'ldap_export_name' => '',
......@@ -182,6 +200,8 @@ my %Default_Conf =
'default_bounce_level1_rate' => 45,
'default_bounce_level2_rate' => 75,
'soap_url' => '',
'css_url' => '',
'css_path' => '',
'urlize_min_size' => 10240, ## 10Kb
'supported_lang' => 'fr,en_US,hu,it',
'web_recode_to' => '',
......@@ -384,6 +404,11 @@ sub load_robots {
soap_url => 1,
supported_lang => 1,
default_shared_quota => 1,
css_url => 1,
css_path => 1,
color_0 => 1, color_2 => 1, color_3 => 1, color_4 => 1, color_5 => 1,color_6 => 1,
color_7 => 1, color_8 => 1, color_9 => 1,color_7 => 1, color_8 => 1, color_9 => 1,
color_10 => 1, color_11 => 1, color_12 => 1,color_13 => 1, color_14 => 1, color_15 => 1,
);
## Load wwsympa.conf
......
......@@ -541,7 +541,7 @@ my %alias = ('reply-to' => 'reply_to',
'group' => 'description',
},
'expire_task' => {'task' => 'expire',
'gettext_id' => "Periodical subscription expiration task",
'gettext_id' => "",
'group' => 'other'
},
'family_name' => {'format' => $tools::regexp{'family_name'},
......@@ -849,7 +849,7 @@ my %alias = ('reply-to' => 'reply_to',
'order' => 8
},
'f_dir' => {'format' => '.+',
'gettext_id' => "Directory where the database is stored (used for DBD::CSV only)",
'gettext_id' => "",
'order' => 9
},
'name' => {'format' => '.+',
......@@ -976,7 +976,7 @@ my %alias = ('reply-to' => 'reply_to',
'group' => 'bounces'
},
'remind_task' => {'task' => 'remind',
'gettext-id' => 'Periodical subscription reminder task',
'gettext-id' => 'remind pediodical task',
'default' => {'conf' => 'default_remind_task'},
'group' => 'other'
},
......@@ -2512,8 +2512,6 @@ sub send_to_editor {
$self->send_file('moderate', $recipient, $self->{'domain'}, {'modkey' => $modkey,
'boundary' => $boundary,
'msg' => $crypted_file,
'msg_from' => $message->{'sender'},
'mod_spool_size' => $self->get_mod_spool_size(),
'method' => $method,
## From the list because it is signed
'from' => $self->{'name'}.'@'.$self->{'domain'}
......@@ -2524,8 +2522,6 @@ sub send_to_editor {
$self->send_file('moderate', \@rcpt, $self->{'domain'}, {'modkey' => $modkey,
'boundary' => $boundary,
'msg' => $file,
'msg_from' => $message->{'sender'},
'mod_spool_size' => $self->get_mod_spool_size(),
'method' => $method,
'from' => &Conf::get_robot_conf($robot, 'sympa')
});
......@@ -5692,8 +5688,6 @@ sub verify {
my @bodies;
my @parts = $context->{'msg'}->parts();
## Should be recurcive...
foreach my $i (0..$#parts) {
next unless ($parts[$i]->effective_type() =~ /^text/);
next unless ($parts[$i]->bodyhandle);
......@@ -5897,22 +5891,20 @@ sub verify {
## Verify if a given user is part of an LDAP search filter
sub search{
my $filter_file = shift;
my $ldap_file = shift;
my $sender = shift;
my $robot = shift;
my $list = shift;
&do_log('debug2', 'List::search(%s,%s,%s)', $filter_file, $sender, $robot);
&do_log('debug2', 'List::search(%s,%s,%s)', $ldap_file, $sender, $robot);
my $file;
unless ($file = &tools::get_filename('etc',"search_filters/$filter_file", $robot, $list)) {
&do_log('err', 'Could not find search filter %s', $filter_file);
unless ($file = &tools::get_filename('etc',"search_filters/$ldap_file", $robot, $list)) {
&do_log('err', 'Could not find LDAP filter %s', $ldap_file);
return undef;
}
if ($filter_file =~ /\.ldap$/) {
my $timeout = 3600;
my $var;
......@@ -5927,10 +5919,10 @@ sub search{
my $filter = $ldap_conf{'filter'};
$filter =~ s/\[sender\]/$sender/g;
if (defined ($persistent_cache{'named_filter'}{$filter_file}{$filter}) &&
(time <= $persistent_cache{'named_filter'}{$filter_file}{$filter}{'update'} + $timeout)){ ## Cache has 1hour lifetime
if (defined ($persistent_cache{'named_filter'}{$ldap_file}{$filter}) &&
(time <= $persistent_cache{'named_filter'}{$ldap_file}{$filter}{'update'} + $timeout)){ ## Cache has 1hour lifetime
&do_log('notice', 'Using previous LDAP named filter cache');
return $persistent_cache{'named_filter'}{$filter_file}{$filter}{'value'};
return $persistent_cache{'named_filter'}{$ldap_file}{$filter}{'value'};
}
unless (eval "require Net::LDAP") {
......@@ -5974,17 +5966,16 @@ sub search{
if ($mesg->count() == 0){
$persistent_cache{'named_filter'}{$filter_file}{$filter}{'value'} = 0;
$persistent_cache{'named_filter'}{$ldap_file}{$filter}{'value'} = 0;
}else {
$persistent_cache{'named_filter'}{$filter_file}{$filter}{'value'} = 1;
$persistent_cache{'named_filter'}{$ldap_file}{$filter}{'value'} = 1;
}
$ldap->unbind or do_log('notice','List::search_ldap.Unbind impossible');
$persistent_cache{'named_filter'}{$filter_file}{$filter}{'update'} = time;
$persistent_cache{'named_filter'}{$ldap_file}{$filter}{'update'} = time;
return $persistent_cache{'named_filter'}{$filter_file}{$filter}{'value'};
}
return $persistent_cache{'named_filter'}{$ldap_file}{$filter}{'value'};
}
return undef;
......
......@@ -14,24 +14,83 @@ reference other variables.
-->
<DefineVar>
SELECTED_MONTH
<P><FONT COLOR="($tag$% dark_color %$tag$)" SIZE="+1"><STRONG>
CALENDAR
<div id="ArcCalendar">
($tag$% FOREACH year = calendar %$tag$)
<div>
<ul class="calendar">
<li class="calendarLinksInactive">($tag$% year.key %$tag$)</li>
($tag$% FOREACH mounth = ['01' '02' '03' '04' '05' '06' '07' '08' '09' '10' '11' '12'] %$tag$)
($tag$% IF year.value.item(mounth) %$tag$)
($tag$% IF year.key == '$yyyy$' && mounth == '$mois$'%$tag$) <li class="calendarLinksCurrentPage"><a href="($tag$% path_cgi %$tag$)/arc/($tag$% list %$tag$)/($tag$% year.key %$tag$)-($tag$% mounth %$tag$)/">($tag$% mounth %$tag$)</a></li>
($tag$% ELSE %$tag$)<li class="calendarLinks"><a href="($tag$% path_cgi %$tag$)/arc/($tag$% list %$tag$)/($tag$% year.key %$tag$)-($tag$% mounth %$tag$)/">($tag$% mounth %$tag$)</a></li>
($tag$% END %$tag$)
($tag$% ELSE %$tag$)<li class="calendarLinksInactive">($tag$% mounth %$tag$)</li>
($tag$% END %$tag$)
($tag$% END %$tag$)
</ul>
</div>
($tag$% END %$tag$)
</div>
</DefineVar>
<DefineVar>
SEARCH_FORM
<form method="post" action="($tag$% path_cgi %$tag$)">
<input name="list" type="hidden" value="($tag$% list %$tag$)" />
<input name="archive_name" type="hidden" value="($tag$% archive_name %$tag$)" />
<input name="how" type="hidden" value="phrase" />
<input name="age" type="hidden" value="new" />
<input name="case" type="hidden" value="off" />
<input name="match" type="hidden" value="partial" />
<input name="limit" type="hidden" value="10" />
<input name="body" type="hidden" value="true" />
<input name="subj" type="hidden" value="true" />
<input name="key_word" type="text" size="17" />
<input name="action" type="hidden" value="arcsearch" />
<input type="submit" name="action_arcsearch" value="($tag$%|loc%$tag$)Search($tag$%END%$tag$)" /> &nbsp;
<input type="submit" name="action_arcsearch_form" value="($tag$%|loc%$tag$)Advanced search($tag$%END%$tag$)" />
</form>
</DefineVar>
<DefineVar>
TOP_PANEL
<div id="ActionHeader">
$CALENDAR$
$SEARCH_FORM$
<div style="text-align: center;"><strong>$PRINTABLE_MONTH$&nbsp;&nbsp;&nbsp;$NUMOFMSG$ ($tag$%|loc%$tag$)mails($tag$%END%$tag$)</strong></div><br />
Pages navigation : <br />
</div>
</DefineVar>
<DefineVar>
PRINTABLE_MONTH
($tag$% IF lang == 'fr' %$tag$)
$mois$/$yyyy$
($tag$% ELSE %$tag$)
$yyyy$/$mois$
($tag$% END %$tag$)
</STRONG></FONT><BR>
</DefineVar>
<DefineVar>
SELECTED_MONTH
<P><font color="($tag$% dark_color %$tag$)" size="+1"><strong>
$PRINTABLE_MONTH$
</strong></FONT><br />
<HR width="30%">
</P>
</DefineVar>
<DefineVar>
POWERED_BY
<HR SIZE="1" NOSHADE>
<P><FONT SIZE="-1" COLOR="($tag$% dark_color %$tag$)">
($tag$%|loc%$tag$)Archive powered by($tag$%END%$tag$) <A HREF="$DOCURL$">MhonArc $VERSION$</A>.
</FONT></P>
<hr size="1" noshade>
<p><font size="-1">
($tag$%|loc%$tag$)Archive powered by($tag$%END%$tag$) <a href="$DOCURL$">MhonArc $VERSION$</a>.
</font></p>
</DefineVar>
<!-- ============================================================== -->
......@@ -118,50 +177,37 @@ IDXPGEND
<!-- mail1.html -->
<IDXPGBEGIN>
[%TAGS ($tag$% %$tag$) %]
<CENTER>
$SELECTED_MONTH$
<TABLE CELLPADDING="2" CELLSPACING="2" WIDTH="100%" BORDER="0">
<TR ALIGN="CENTER" BGCOLOR="($tag$% dark_color %$tag$)">
<TD>
<!-- begin header -->
<TABLE WIDTH="100%" BORDER="0" CELLSPACING="0" CELLPADDING="2">
<TR ALIGN="CENTER" VALIGN="MIDDLE">
<TD NOWRAP BGCOLOR="($tag$% light_color %$tag$)" ALIGN="CENTER">
$PREVPGLINK$&nbsp;&nbsp;
<FONT SIZE="-1" FACE="Arial,Helvetica"><STRONG>$NUMOFMSG$ ($tag$%|loc($PAGENUM$,$NUMOFPAGES$)%$tag$)mails, page # %1/%2($tag$%END%$tag$)</STRONG></FONT>
&nbsp;&nbsp;$NEXTPGLINK$
</TD>
<TD NOWRAP BGCOLOR="($tag$% light_color %$tag$)" ALIGN="CENTER">
<FONT COLOR="($tag$% bg_color %$tag$)" SIZE="-1"><STRONG>
($tag$%|loc%$tag$)Chronological($tag$%END%$tag$)
</STRONG></FONT>
&nbsp;&nbsp;
<FONT SIZE="-1"><STRONG><A HREF="thrd$PAGENUM$.html" STYLE="text-decoration: none">
($tag$%|loc%$tag$)Thread($tag$%END%$tag$)
</A></STRONG></FONT>
</TD>
</TR>
</TABLE>
<div id="ActionHeader">
$CALENDAR$
$SEARCH_FORM$
<div style="text-align: center;"><strong>$PRINTABLE_MONTH$&nbsp;&nbsp;&nbsp;$NUMOFMSG$ ($tag$%|loc%$tag$)mails($tag$%END%$tag$)</strong></div><br />
Pages navigation : <br />
<span style="float: right">
<a class="ArcMenuLinksCurrentPage" href="mail$PAGENUM$.html">($tag$%|loc%$tag$)chronological($tag$%END%$tag$)</a>
<a class="ArcMenuLinks" href="thrd$PAGENUM$.html">($tag$%|loc%$tag$)Thread($tag$%END%$tag$)</a>
</span>
$PREVPGLINK$ ($tag$%|loc($PAGENUM$,$NUMOFPAGES$)%$tag$)page # %1/%2($tag$%END%$tag$) $NEXTPGLINK$
</div>
<!-- end header -->
</TD>
</TR>
</TABLE>
</CENTER>
</IDXPGBEGIN>
<!-- top of message list -->
<LISTBEGIN>
<UL>
<br />
<ul>
</LISTBEGIN>
<!-- item of maillist.html -->
<LITEMPLATE>
<LI><b>$SUBJECT$</b>, <EM>$FROMNAME$</EM></LI>
<li><b>$SUBJECT$</b>, <em>$FROMNAME$</em></li>
</LITEMPLATE>
<!-- bottom of message list -->
<LISTEND>
</UL>
</ul>
</LISTEND>
<!-- maillist.html bottom -->
......@@ -172,19 +218,23 @@ $POWERED_BY$
<!-- links definition -->
<PrevPgLink chop>
<FONT SIZE="-1" FACE="Arial,Helvetica" COLOR="($tag$% dark_color %$tag$)"><A HREF="$FIRSTPG$"><IMG SRC="($tag$% icons_url %$tag$)/begin.png" ALT="First" HEIGHT="20" BORDER="0" ALIGN="middle"></A>&nbsp;&nbsp;<A HREF="$PREVPG$"><IMG SRC="($tag$% icons_url %$tag$)/left.png" ALT="Previous" HEIGHT="20" BORDER="0" ALIGN="middle"></A></FONT>
<a class="ArcMenuLinks" href="$FIRSTPG$">($tag$%|loc%$tag$)First($tag$%END%$tag$)</a>
<a class="ArcMenuLinks" href="$PREVPG$">($tag$%|loc%$tag$)Previous($tag$%END%$tag$)</a>
</PrevPgLink>
<PrevPgLinkIA chop>