Пример шаблона

Пример шаблона для общего отчета о работе подключаемых модулей, поддерживающего форматы как HTML, так и PLAIN:

From: "DrWeb-$PRODUCT$" <$FILTER_MAIL$>
To: $R_MAILS$
Subject: Report from Dr.Web $PRODUCT$ per period of $R_PERIOD$
Content-Type: multipart/mixed;
boundary="001-DrWeb-MailFilter-Notification"
MIME-Version: 1.0
 
<if TYPE==HTML>
<for LANG;LANGS>
--001-DrWeb-MailFilter-Notification
Content-Type: text/html; charset=$CHARSET$
Content-Transfer-Encoding: $CONTENT_TRANSFER_ENCODING$
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=$CHARSET$" />
<title>$LC510$</title>
<include "style.css">
</head>
 
<body>
 <div align="center">
   <table width="600" border="0" cellspacing="0" cellpadding="0">
     <tr>
       <td align="center" valign="top"><a name="top" id="top_$LANG$"></a>
         <include "head.templ">
         <table width="100%">
           <tr>
             <td align="right" ><for RP_NAME;R_PLUGINS==".*";"&nbsp;"><a href="#$RP_NAME$_$LANG$" class="ancherlinks">$LC543$ $RP_NAME$</a></for></td>
           </tr>
         </table>
         <p class="titletext">$PRODUCT$: $LC542$ $R_PERIOD$</p>
 
         <for RP_NAME;R_PLUGINS>
         <table width="100%">
           <tbody>
             <tr>
               <th colspan="2" class="header"><a name="$RP_NAME$" id="$RP_NAME$_$LANG$"></a>$LC543$ $RP_NAME$</th>
             </tr>
             <tr>
               <td colspan="2" ><table width="100%" >
                   <tr>
                     <if RP_BLOCKED_OBJECTS_WITH_NUM_AND_PERCENTS><if RP_BLOCKED_OBJECTS_NUM!="0">
                         <td valign="top"><table width="300" cellpadding="5" cellspacing="0"  class="statistic" id="statistic2">
                             <tbody>
                               <tr>
                                 <th colspan="2" class="statisticheader" >
                                   <if RP_BLOCKED_OBJECTS_NUM=="-1">
                                     $LC544$:
                                   </if><if RP_BLOCKED_OBJECTS_NUM!="-1">
                                     $LC545$ $RP_BLOCKED_OBJECTS_NUM$ $LC546$:
                                   </if>
                                 </th>
                               </tr>
                               <tr>
                                 <td>$RP_BLOCKED_OBJECTS_WITH_NUM_AND_PERCENTS$</td>
                               </tr>
                             </tbody>
                         </table></td>
                     </if></if>
                     <if RP_SENDERS_ENVELOPE_WITH_NUM_AND_PERCENTS><if RP_SENDERS_ENVELOPE_NUM!="0">
                         <td valign="top"><table width="300" cellpadding="5" cellspacing="0"  class="statistic" id="statistic">
                             <tbody>
                               <tr>
                                 <th colspan="2" class="statisticheader" >
                                   <if RP_SENDERS_ENVELOPE_NUM=="-1">
                                     $LC547$:
                                   </if><if RP_SENDERS_ENVELOPE_NUM!="-1">
                                     $LC545$ $RP_SENDERS_ENVELOPE_NUM$ $LC548$:
                                   </if>
                                   </th>
                               </tr>
                               <tr>
                                 <td  class="regulartext">$RP_SENDERS_ENVELOPE_WITH_NUM_AND_PERCENTS$</td>
                               </tr>
                             </tbody>
                         </table></td>
                     </if></if>
                     <if RP_CLIENT_IP_WITH_NUM_AND_PERCENTS><if RP_CLIENT_IP_NUM!="0">
                         <td valign="top"><table width="300" cellpadding="5" cellspacing="0"  class="statistic" id="statistic">
                             <tbody>
                               <tr>
                                 <th colspan="2" class="statisticheader" >
                                   <if RP_CLIENT_IP_NUM=="-1">
                                     $LC566$:
                                   </if><if RP_CLIENT_IP_NUM!="-1">
                                     $LC545$ $RP_CLIENT_IP_NUM$ $LC565$:
                                   </if>
                                   </th>
                               </tr>
                               <tr>
                                 <td  class="regulartext">$RP_CLIENT_IP_WITH_NUM_AND_PERCENTS$</td>
                               </tr>
                             </tbody>
                         </table></td>
                     </if></if>
                   </tr>
               </table></td>
             </tr>
             <tr>
               <td class="body">$LC550$:</td>
               <td align="right" class="body">$RP_PASS$ ($RP_PASS_SIZE$)</td>
             </tr>
             <tr>
               <td class="body">$LC551$:</td>
               <td align="right" class="body">$RP_REJECT$ ($RP_REJECT_SIZE$)</td>
             </tr>
             <tr>
               <td class="body">$LC552$:</td>
               <td align="right" class="body">$RP_DISCARD$ ($RP_DISCARD_SIZE$)</td>
             </tr>
             <tr>
               <td class="body">$LC553$:</td>
               <td align="right" class="body">$RP_TEMPFAIL$ ($RP_TEMPFAIL_SIZE$)</td>
             </tr>
             <tr>
               <td class="body">$LC554$:</td>
               <td align="right" class="body">$RP_QUARANTINE$ ($RP_QUARANTINE_SIZE$)</td>
             </tr>
             <tr>
               <td class="body">$LC555$:</td>
               <td align="right" class="body">$RP_REDIRECT$ ($RP_REDIRECT_SIZE$)</td>
             </tr>
             <tr>
               <td class="body">$LC556$:</td>
               <td align="right" class="body">$RP_NOTIFY$ ($RP_NOTIFY_SIZE$)</td>
             </tr>
             <tr>
               <td class="subtitle">$LC557$:</td>
               <td align="right" class="subtitle">$RP_CHECKED_MSGS$ ($RP_CHECKED_SIZE$)</td>
             </tr>
             <tr>
               <td class="subtitle">$LC571$:</td>
               <td align="right" class="subtitle">$RP_BLOCK_PERC$ ($RP_BLOCK_SIZE$)</td>
             </tr>
             <tr>
               <td class="subtitle">$LC570$:</td>
               <td align="right" class="subtitle">$RP_CHECK_TIME_SUM$ (~$RP_CHECK_TIME_AVR$ $LC558$)</td>
             </tr>
           </tbody>
           </table>
           <if RP_NAME == "drweb" ><if RP_AGENT_STAT_UUID>
            <p align="right" class="regulartext"> $LC567$ <a href="http://stat.drweb.com/view/$RP_AGENT_STAT_UUID$">$LC568$</a>. </p>
           </if></if>
           <p> <a href="#top_$LANG$" class="ancherlinks">$LC561$</a> </p>
         </for>
         </td>
     </tr>
   </table>
 </div>
 <br />
</body>
</html>
</for>
</if><if TYPE==PLAIN>
<for LANG;LANGS>
--001-DrWeb-MailFilter-Notification
Content-Type: text/plain; charset=$CHARSET$
Content-Transfer-Encoding: $CONTENT_TRANSFER_ENCODING$
 
             $LC542$ $R_PERIOD$
 
<for RP_NAME;R_PLUGINS==".*";"">
   *** $LC543$ $RP_NAME$ ***
<if RP_BLOCKED_OBJECTS_WITH_NUM_AND_PERCENTS>
<if RP_BLOCKED_OBJECTS_NUM!="0">
<if RP_BLOCKED_OBJECTS_NUM=="-1">
$LC544$:
</if><if RP_BLOCKED_OBJECTS_NUM!="-1">
$LC545$ $RP_BLOCKED_OBJECTS_NUM$ $LC546$:
</if>
$RP_BLOCKED_OBJECTS_WITH_NUM_AND_PERCENTS$
</if>
</if>
<if RP_SENDERS_ENVELOPE_WITH_NUM_AND_PERCENTS>
<if RP_SENDERS_ENVELOPE_NUM!="0">
<if RP_SENDERS_ENVELOPE_NUM=="-1">
$LC547$:
</if><if RP_SENDERS_ENVELOPE_NUM!="-1">
$LC545$ $RP_SENDERS_ENVELOPE_NUM$ $LC548$:
</if>
$RP_SENDERS_ENVELOPE_WITH_NUM_AND_PERCENTS$
</if>
</if>
<if RP_CLIENT_IP_WITH_NUM_AND_PERCENTS>
<if RP_CLIENT_IP_NUM!="0">
<if RP_CLIENT_IP_NUM=="-1">
$LC566$:
</if><if RP_CLIENT_IP_NUM!="-1">
$LC545$ $RP_CLIENT_IP_NUM$ $LC565$:
</if>
$RP_CLIENT_IP_WITH_NUM_AND_PERCENTS$
</if>
</if>
 $LC549$:
$LC550$:       $RP_PASS$ ($RP_PASS_SIZE$)
$LC551$:       $RP_REJECT$ ($RP_REJECT_SIZE$)
$LC552$:       $RP_DISCARD$ ($RP_DISCARD_SIZE$)
$LC553$:       $RP_TEMPFAIL$ ($RP_TEMPFAIL_SIZE$)
$LC554$:       $RP_QUARANTINE$ ($RP_QUARANTINE_SIZE$)
$LC555$:       $RP_REDIRECT$ ($RP_REDIRECT_SIZE$)
$LC556$:       $RP_NOTIFY$ ($RP_NOTIFY_SIZE$)
 
------------------------------
$LC557$:       $RP_CHECKED_MSGS$ ($RP_CHECKED_SIZE$)
$LC571$:       $RP_BLOCK_PERC$ ($RP_BLOCK_SIZE$)
$LC570$:       $RP_CHECK_TIME_SUM$ (~$RP_CHECK_TIME_AVR$ $LC558$)
<if RP_NAME == "drweb" ><if RP_AGENT_STAT_UUID>
 
   $LC567$ $LC568$:
      http://stat.drweb.com/view/$RP_AGENT_STAT_UUID$
</if></if>
</for>
</for>
</if>
--001-DrWeb-MailFilter-Notification--