Changeset 9702


Ignore:
Timestamp:
Mar 15, 2011, 3:39:19 PM (13 years ago)
Author:
cljosse
Message:

[Mail supervisor] add class.

Location:
extensions/Mail_supervisor
Files:
1 added
18 edited

Legend:

Unmodified
Added
Removed
  • extensions/Mail_supervisor/admin/header_2_1.tpl

    r8917 r9702  
    1 {known_script id="jquery" src= $ROOT_URL|@cat:$path_js|@cat:"jquery.js" }
    2 {known_script id="jquery.cluetip" src=$ROOT_URL|@cat:$path_js|@cat:"plugins/jquery.cluetip.js" }
    3 {known_script id="jquery" src= $ROOT_URL|@cat:$path_js|@cat:"jquery.js"}
     1{html_head}
     2{known_script id="jquery" src= $ROOT_URL|@cat:$path_js|@cat:"jquery.packed.js" }
    43{known_script id="jquery.cluetip" src=$ROOT_URL|@cat:$path_js|@cat:"plugins/jquery.cluetip.packed.js" }
    5 {known_script id="mail_script" src= $MAIL_SUPERV_PATH|@cat:"include/Scripts.js"}
     4{known_script id="mail_script" src= $MAIL_SUPERV_PATH|@cat:"include/Scripts.js"}{/html_head}
     5<input id="action_spam" name="action_spam" type="hidden" value="{$action_spam}" />
  • extensions/Mail_supervisor/admin/header_2_2.tpl

    r8917 r9702  
    1 {combine_script id="jquery" path= $ROOT_URL|@cat:$path_js|@cat:"jquery.js" }
     1{combine_script id="jquery" path= $ROOT_URL|@cat:$path_js|@cat:"jquery.min.js" }
    22{combine_script id="jquery.cluetip" path=$ROOT_URL|@cat:$path_js|@cat:"plugins/jquery.cluetip.js" require="jquery"}
    3 {combine_script id="jquery" src= $ROOT_URL|@cat:$path_js|@cat:"jquery.js"}
    4 {combine_script id="jquery.cluetip" path=$ROOT_URL|@cat:$path_js|@cat:"plugins/jquery.cluetip.packed.js" require="jquery"}
    53{combine_script id="my_script" path= $MAIL_SUPERV_PATH|@cat:"include/Scripts.js" }
     4
     5<input id="action_spam" name="action_spam" type="hidden" value="{$action_spam}" />
  • extensions/Mail_supervisor/admin/mail_black_liste.tpl

    r8917 r9702  
    1 {* $Id: mail_black_liste.tpl 3723 2009-08-07 04:53:38Z rvelices $ *}
    2 {html_head}
    3 {if PHPWG_VERSION < 2.2 } {include file=$MAIL_SUPERV_PATH_ABS|@cat:'header_2_1.tpl'}
    4 {else} {include file= $MAIL_SUPERV_PATH_ABS|@cat:'header_2_2.tpl'} {/if} {/html_head}
    5 
     1{* $Id: mail_black_liste.tpl cljosse $ *}
    62<script type="text/javascript">
    7 jQuery().ready(function()
    8 {ldelim}
    9   jQuery('.cluetip').cluetip(
    10   {ldelim}
    11     width: 550,
    12     splitTitle: '|'
    13   {rdelim});
    14 {rdelim});
     3 var confirm_message = "{'Sv_Are_you_sure'|@translate|@escape:'javascript'}?"; 
    154</script>
    16 
    175<link href="theme.css" rel="stylesheet" type="text/css" />
    186{html_head}<link rel="stylesheet" type="text/css" href="{$MAIL_SUPERV_PATH}admin/theme.css" />{/html_head}
     
    2412<form action='' method="post" name="form_black">
    2513<fieldset>
    26     <legend >{'Sv_options'|translate}</legend>
    27  <table>
    28 <td><input type="checkbox" name="no_mail_list" value="on" {$no_mail_list}  />&nbsp;&nbsp;{'Sv_no_mail_list'|translate}  </td>
    29 <td><input type="checkbox" style="visibility:hidden" name="no_connect" value="off" {$no_connect} />&nbsp;&nbsp; </td>
    30 <td><input type="checkbox" style="visibility:hidden" name="set_auto" value="off" {$set_auto} />&nbsp;&nbsp; </td>
    31 <td><input type="checkbox" name="set_id" value="on" {$set_id} />&nbsp;&nbsp;{'Sv_set_id'|translate}</td>
    32 <tr><p></p><td>
    33 <input class="submit" type="submit" name="submit" value="{'Sv_Valider'|translate}" /></td></tr>
    34  </table>
     14<legend >{'Sv_options'|translate}</legend>
     15  <table>
     16    <td><input type="checkbox" name="no_mail_list" value="on" {$no_mail_list}  />&nbsp;&nbsp;{'Sv_no_mail_list'|translate}      </td>
     17    <td style="visibility:hidden" ><input type="checkbox" name="no_connect" value="off" {$no_connect} />&nbsp;&nbsp;{'Sv_no_connect'|translate} </td>
     18    <td style="visibility:visible" ><input type="checkbox"  name="set_auto" value="off" {$set_auto} />&nbsp;&nbsp;{'Sv_set_auto'|translate} </td>
     19    <td style="visibility:hidden" ><input type="checkbox" name="set_id" value="on" {$set_id} />&nbsp;&nbsp;{'Sv_set_id'|translate}</td>
     20    <tr><p></p><td>
     21    <input class="submit" type="submit" name="submit" value="{'Sv_Valider'|translate}" /></td></tr>
     22  </table>
    3523</fieldset>
    3624<input name="info1" type="hidden" />
    3725 <fieldset >
    38     <legend>{'Sv_black_liste'|translate}</legend>
    39            <table>
    40                 <div >
    41                 <input name="ip_black" id = "ip_black_test" type="text" value="{$ip_black}"      />
    42           <input class="cluetip" title="{'Sv_Test'|translate}|{'Sv_hlp_7_3'|translate}"   type="submit" name="submit" value="{'Sv_Test'|translate}"  />
    43 
    44 { if $ip_black_len > 0}
    45                
    46                {if  $IS_SPAM  == true }
    47                                 <label class="erreur">  {'Sv_is_a_spam'|@translate} </label>
    48                                 { else }
    49                                  <label class="erreur"> {'Sv_not_a_spam'|@translate} </label>
    50                         {/if}
    51                         { if  $istype == 'IP'}         
     26<legend>{'Sv_black_liste'|translate}</legend>
     27<table>
     28 <td><input name="ip_black" id = "ip_black_test" type="text" value="{$ip_black}"         />
     29 <input class="cluetip" title="{'Sv_Test'|translate}|{'Sv_hlp_7_3'|translate}"   type="submit" name="submit" value="{'Sv_Test'|translate}"  />
     30 { if $ip_black_len > 0}               
     31        {if  $IS_SPAM  == true }
     32                <label class="erreur">  {'Sv_is_a_spam'|@translate} </label>
     33        { else }
     34                        { if  $istype == 'IP'} 
     35                                <label class="erreur">  {'Sv_not_a_spam'|@translate} </label>
     36                        { else }
     37                           <label class="erreur">       {'Sv_no_verif'|@translate} </label>
     38                        {/if}                   
     39        {/if}
     40</td>
     41        <td>
     42        <input class="bp cluetip"
     43                title="{'Sv_Ajout'|translate}|{'Sv_hlp_7_4'|translate}"
     44                type="submit"
     45                name="submit"
     46                rel="ajout:{$ip_black}"
     47                value="{'Sv_Ajout'|@translate}"
     48                alt="{'Sv_Ajout'|@translate} : {$ip_black}"
     49        />
     50  </td>
     51  <td>
     52 <input type="image" name="submit"   class='bp row1'
     53  src="{$ROOT_URL}{$themeconf.admin_icon_dir}/plug_activate.png"
     54  rel="ajout:{$ip_black}"
     55  id="btn_ajout{$ip_black}"
     56  alt="{'Sv_Ajout'|@translate} : {$ip_black}" 
     57  title="{'Sv_Ajout'|@translate} {$ip_black}" />
     58{ else }
     59                   
     60{/if}
    5261                       
    53 <input class="cluetip" title="{'Sv_Ajout'|translate}|{'Sv_hlp_7_4'|translate}"    type="submit" name="submit" value="{'Sv_Ajout'|translate}"  />
    54 
    55               <input type="image" name="submit"   class='row1'
    56               src="{$ROOT_URL}{$themeconf.admin_icon_dir}/plug_activate.png"
    57                   alt="{'Sv_Ajout'|@translate}"
    58                   onclick = "
    59  if (confirm( document.getElementById('btn_ajout{$ip_black}').title + '\n\n' + '{'Sv_Are you sure?'|@translate|@escape:'javascript'}'))
    60   form_black.info1.value='ajout:{$ip_black}'
    61   "
    62                   id="btn_ajout{$ip_black}"
    63               title="{'Sv_Ajout'|@translate} {$ip_black}" />                           
    64 {/if}   
    65         { else }
    66                    
    67                 {/if}
    68                        
    69 
    70 
    71                          
     62</td>
     63         
     64       
    7265                           
    73              </div>
     66         <td>
    7467                 <a href="http://www.stopforumspam.com" >  <img src="{$img_logo}"  width="32"/>  http://www.stopforumspam.com
    75  </a>
    76          </table> 
     68 </a></td>
     69 </tr>  <tr>   </tr>
     70     </table> 
    7771 
    7872        <table class="table2" >
     
    8983                        <td>{$group.nb}</td>
    9084                <td style="text-align:center;">
    91                         <input type="image" class="{if $smarty.foreach.group_loop.index is odd}row1{else}row2{/if}" 
     85                        <input type="image" class="bp {if $smarty.foreach.group_loop.index is odd}row1{else}row2{/if}" 
    9286                                src="{$ROOT_URL}{$themeconf.admin_icon_dir}/delete.png"
    93                                         alt="{'Sv_delete'|@translate}"
    94                                         onclick = "
    95                                                 if (confirm( document.getElementById('btn_delete{$group.ip}').title + '\n\n' + '{'Sv_Are you sure?'|@translate|@escape:'javascript'}'))
    96   form_black.info1.value='raz:{$group.ip}'
    97   "
     87                                        rel="raz:{$group.ip}"
    9888                                        id="btn_delete{$group.ip}"
    99                                 title="{'Sv_delete'|@translate} {$group.ip}" />
     89                                title="{'Sv_delete'|@translate} {$group.ip}"
     90                                        alt="{'Sv_delete'|@translate} {$group.ip}" />
    10091                        </td>
    10192                  </tr>
     
    121112           <td><input class="submit" type="submit" name="prev"  value=   "{'previous_page'|translate}" /></td>
    122113        { /if}
    123        <td>{'page'|translate}</td>         
    124            <td><input type="text" name="start"  value="{$start}" size=5  /></td>
    125             <td>/ {$maxipage}  </td>   
    126 
    127            
     114  <td>{'page'|translate}</td>     
     115  <td><input type="text" name="start"  value="{$start}" size=5  /></td>
     116  <td>/ {$maxipage}  </td>                 
    128117        {if $start < $maxipage }   
    129118           <td><input class="submit" type="submit" name="next"  value=  "{'Next'|translate}"  /></td>
    130119                { /if}   
    131            <td>
    132           <input class="submit" type="submit" name="info" value="{'Sv_list'|translate}" />
    133           </td>
    134 </table>       
    135 
    136 
    137 <table class="table2">
    138 
    139    <tr class="throw">
    140  
    141     <th>{$champs_ip[0]|@translate}</th>
    142     <th>{$champs_ip[1]|@translate}</th>
    143     <th>{$champs_ip[2]|@translate}</th>
    144         <th>{$champs_ip[3]|@translate}</th>
    145         <th>{$champs_ip[4]|@translate}</th>
    146         <th>{$champs_ip[5]|@translate}</th>
    147 
    148     <th>{'Sv_blackliste'|@translate}</th>
     120           <td><input class="submit" type="submit" name="info" value="{'Sv_list'|translate}" /></td>
     121 </table>       
     122 <table class="table2">
     123  <tr class="throw">   
     124   <th>{$champs_ip[0]|@translate}</th>
     125   <th>{$champs_ip[1]|@translate}</th>
     126   <th>{$champs_ip[2]|@translate}</th>
     127   <th>{$champs_ip[3]|@translate}</th>
     128   <th>{$champs_ip[4]|@translate}</th>
     129   <th>{$champs_ip[5]|@translate}</th>
     130   <th>{'Sv_blackliste'|@translate}</th>
    149131  </tr>
    150   {if not empty($liste_ip)}
    151  
    152   {foreach from=$liste_ip item=group name=group_loop}
    153  
    154                 <tr class="{if $smarty.foreach.group_loop.index is odd}row1{else}row2{/if}">
    155                  <td>{$group.id}</td>
    156           <td>{$group.date}</td>
    157               <td>{$group.time}</td>
    158               <td>{$group.user_id}</td>
    159                   <td>{$group.IP}</td>
    160          <td>{$group.total}</td>
    161       <td style="text-align:center;">
    162 <input type="image"
    163   class="{if $smarty.foreach.group_loop.index is odd}row1{else}row2{/if}"
    164   src="{$ROOT_URL}{$themeconf.admin_icon_dir}/plug_activate.png"
    165   onclick = "
    166  if (confirm( document.getElementById('btn_permissions{$group.IP}').title + '\n\n' + '{'Sv_Are you sure?'|@translate|@escape:'javascript'}'))
    167   form_black.info1.value='ajout:{$group.IP}'
    168   " 
    169   id="btn_permissions{$group.IP}"
    170   title="{'Sv_blacklist'|@translate} {$group.IP}"
    171   alt="{'Sv_blacklist'|@translate} {$group.IP}" />
     132  {if not empty($liste_ip)} 
     133   {foreach from=$liste_ip item=group name=group_loop} 
     134    <tr class="{if $smarty.foreach.group_loop.index is odd}row1{else}row2{/if}">
     135    <td>{$group.id}</td>
     136    <td>{$group.date}</td>
     137    <td>{$group.time}</td>
     138    <td>{$group.user_id}</td>
     139    <td>{$group.IP}</td>
     140    <td>{$group.total}</td>
     141    <td style="text-align:center;">
     142                 <input type="image"
     143                   class="bp {if $smarty.foreach.group_loop.index is odd}row1{else}row2{/if}"
     144                   src="{$ROOT_URL}{$themeconf.admin_icon_dir}/plug_activate.png"
     145                   rel='ajout:{$group.IP}'
     146                   id="btn_permissions{$group.IP}"
     147                   title="{'Sv_blacklist'|@translate} {$group.IP}"
     148                   alt="{'Sv_blacklist'|@translate} {$group.IP}" />
    172149    </td>
    173  
    174     <td style="text-align:center;">
    175 
    176     </td>
    177   </tr>
    178                         {/foreach}
    179                  {/if}
    180                         <td> <img src="{$ROOT_URL}{$themeconf.admin_icon_dir}/plug_activate.png" /> {'Sv_set_black_list'|@translate}</td>
    181         </table>
    182         </fieldset>
     150    <td style="text-align:center;"></td>
     151   </tr>
     152   {/foreach}
     153  {/if}
     154  <td> <img src="{$ROOT_URL}{$themeconf.admin_icon_dir}/plug_activate.png" /> {'Sv_set_black_list'|@translate}</td>
     155 </table>
     156</fieldset>
    183157</form>
     158<form action="" method="post" name="form_connexion" id="form_connexion" style="visibility:hidden">     
     159                <input name="pays"  type="text" value =  ""  id = "pays"  >
     160                <input name="ville"  type="text" value = ""  id = "ville"   >
     161                <input name="region"  type="text" value =  ""   id = "region"   >
     162                <input name="latitude"  type="text" value =  "" id = "latitude"   >
     163                <input name="longitude"  type="text" value = "" id = "longitude"  >     
     164</form >
  • extensions/Mail_supervisor/admin/mail_superv_admin.php

    r8917 r9702  
    2222// +-----------------------------------------------------------------------+
    2323
    24 if ( !defined('PHPWG_ROOT_PATH'))
    25 {
    26   die('Hacking attempt!');
    27 }
     24if ( !defined('PHPWG_ROOT_PATH')) {  die('Hacking attempt!');}
    2825
    2926if (!defined('MAIL_SUPERV_PATH')) define('MAIL_SUPERV_PATH' , PHPWG_PLUGINS_PATH.basename(dirname(__FILE__)).'/');
     
    3835include_once(PHPWG_ROOT_PATH.'admin/include/functions.php');
    3936include_once (PHPWG_ROOT_PATH.'admin/include/tabsheet.class.php');
    40 
    41 
    4237$my_base_url = get_admin_plugin_menu_link(__FILE__);
    4338
     
    10297$error = array();
    10398
    104 
     99include_once (MAIL_SUPERV_PATH.'mail_super.inc.php');
    105100include_once (MAIL_SUPERV_PATH.'include/constants.php');
    106101
    107         if (!isset($infos_message))
    108         {
    109         $infos_message = "";
    110         }
    111 if (!isset($erreur_message))
    112         {
    113         $erreur_message = "";
    114         }
     102  if (!isset($infos_message))   {
     103      $infos_message = "";
     104  }
     105  if (!isset($erreur_message)){
     106      $erreur_message = "";
     107  }
    115108
    116109if (isset($conf['mail_superv'])) {
    117 
    118 include_once (MAIL_SUPERV_PATH.'include/fonctions.php');
    119             global $pays,$region,$ville,$ip ;   
    120 
    121                
    122 $mails_options = explode("," , $conf['mail_superv']);
    123         if (!isset($mails_options[set_id])) $mails_options[set_id] = 'off' ;  // 7
    124                 if (!isset($mails_options[ip])) $mails_options[ip] = $ip   ;  //6
    125                 if (!isset($mails_options[set_auto])) $mails_options[set_auto] = 'off' ;  //5
    126                 if (!isset($mails_options[no_connect])) $mails_options[no_connect] = 'off' ;  //4
    127                 if (!isset($mails_options[no_mail_list])) $mails_options[no_mail_list] = 'off' ;  //3
    128                
    129                 if (!isset($mails_options[check_header_text])) $mails_options[check_header_text] = 'off' ;  //2
    130                 if (!isset($mails_options[check_header_carbon])) $mails_options[check_header_carbon] = 'off' ;  //1
    131                 if (!isset($mails_options[check_mailto])) $mails_options[check_mailto] = 'off' ;  //0
     110   global $pays,$region,$ville,$ip ;   
     111    include_once (MAIL_SUPERV_PATH.'include/fonctions.php');
    132112//================================================================================================     
    133 $mails_options[set_auto] = 'off' ;
    134 $mails_options[no_connect] = 'off' ;
    135        
    136 $mails_donnees = Get_Datas();
    137 
    138 
     113
     114   $mails_donnees = mail_supervisor::Get_Datas();
    139115}else {
    140 die ("mail");
     116    die ("mail");
    141117}
    142118
    143119
    144120$aff_nb=true;
    145 
    146121// *************************************************************************
    147122// |                          Selection de l'onglet                        |
    148123// *************************************************************************
    149 
    150                 $modif=false ;
    151 
    152         $plugin =  Get_Version_plugins( MAIL_SUPERV_PATH);
    153         $version = $plugin['version'] ;
     124  $modif=false ;
     125  $plugin =  mail_supervisor::Get_Version_plugins( MAIL_SUPERV_PATH);
     126  $version = $plugin['version'] ;
    154127 //=========================================================
    155 
    156                 if (!isset($ip)) {
    157                        if (getenv("HTTP_CLIENT_IP"))
    158                                             {    $ip=getenv("HTTP_CLIENT_IP");  }
    159                                         else{   $ip=getenv("REMOTE_ADDR");      }
    160                            }
     128  if (!isset($ip)) {
     129          if (getenv("HTTP_CLIENT_IP")){   
     130      $ip=getenv("HTTP_CLIENT_IP");     
     131    } else{   
     132      $ip=getenv("REMOTE_ADDR");       
     133    }
     134  }
     135               
    161136//================================================================================
    162137switch ($page['tab'])
     
    185160         }
    186161         $infos_message .=  l10n('Sv_refresh') .'<br />';
    187      sauve_donnees();
     162     mail_supervisor::sauve_donnees();
    188163         $aff_nb = false ;
    189164 
     
    192167
    193168        if ( $_POST['submit'] == l10n('Sv_raz')   ) {
    194 
    195         $mails_donnees['date_quarantaine']=time();
    196         $mails_donnees['nb_mails'] = 0  ;
    197         $mails_donnees['nb_spams'] = 0  ;
    198         $mails_donnees['date_mail'] = time();
    199         $mails_donnees['date_spam'] = time();
    200        
    201         $mails_donnees['reste'] = 0;
    202         $mails_donnees['quarantaine']='false';
    203        
    204      sauve_donnees();
    205          $infos_message .=  l10n('Sv_raz') .'<br />'; ;
    206        
     169         $mails_donnees['date_quarantaine']=time();
     170         $mails_donnees['nb_mails'] = 0  ;
     171         $mails_donnees['nb_spams'] = 0  ;
     172         $mails_donnees['date_mail'] = time();
     173         $mails_donnees['date_spam'] = time(); 
     174         $mails_donnees['reste'] = 0;
     175         $mails_donnees['quarantaine']='false';
     176    mail_supervisor::sauve_donnees();
     177         $infos_message .=  l10n('Sv_raz') .'<br />';   
    207178        }
    208179
    209180  //===================================================================
    210         if ( $_POST['submit'] == l10n('Sv_Valider') ) 
    211                 {
    212                 $mails_options[check_mailto] = isset($_POST['check_mailto']) ? $_POST['check_mailto'] : 'off' ;               
    213                 $mails_options[check_header_carbon] = isset($_POST['check_header_carbon']) ? $_POST['check_header_carbon'] : 'off' ;
    214                 $mails_options[check_header_text] = isset($_POST['check_header_text']) ? $_POST['check_header_text'] : 'off' ;     
     181        if ( $_POST['submit'] == l10n('Sv_Valider') ) {
     182    $mails_options['check_mailto'] = isset($_POST['check_mailto']) ? $_POST['check_mailto'] : 'off' ;               
     183    $mails_options['check_header_carbon'] = isset($_POST['check_header_carbon']) ? $_POST['check_header_carbon'] : 'off' ;
     184    $mails_options['check_header_text'] = isset($_POST['check_header_text']) ? $_POST['check_header_text'] : 'off' ;     
    215185 
    216                 //donnees 
    217                 $mails_donnees['nb_mails_maxi'] = isset($_POST['nb_mails_maxi']) ? $_POST['nb_mails_maxi'] :  $mails_donnees['nb_mails_maxi']  ;
    218                 $mails_donnees['nb_mails_periode'] = isset($_POST['nb_mails_periode']) ? $_POST['nb_mails_periode'] :  $mails_donnees['nb_mails_periode']  ; 
    219                 $mails_donnees['nb_spams_maxi'] = isset($_POST['nb_spams_maxi']) ? $_POST['nb_spams_maxi'] :  $mails_donnees['nb_spams_maxi']  ;
    220                 $mails_donnees['nb_spams_periode'] = isset($_POST['nb_spams_periode']) ? $_POST['nb_spams_periode'] :  $mails_donnees['nb_spams_periode']  ;
    221 
    222                 $mails_donnees['quarantaine_periode'] = isset($_POST['quarantaine_periode']) ? $_POST['quarantaine_periode'] :  $mails_donnees['quarantaine_periode']  ;
    223  
    224                         $mails_donnees['message'] = isset($_POST['content']) ? $_POST['content'] :  $mails_donnees['message']  ;
    225                         $mails_donnees['header_text'] = isset($_POST['header_text']) ? $_POST['header_text'] :  $mails_donnees['header_text']  ;
    226  //=======================================================================================================
    227                         verif_mails_donnees();
    228                         sauve_options();
    229                 sauve_donnees();
    230 //=======================================================================================================
    231                         $infos_message  =  l10n('Sv_save_config') . " : " . l10n('Sv_Datas') . "<br />" ;
    232                         $erreur_message = "";
    233                         $mails_donnees = Get_Datas() ;
    234                         }
    235        }
    236        
    237         $mails_donnees = Get_Datas();
     186    //donnees 
     187    $mails_donnees['nb_mails_maxi'] = isset($_POST['nb_mails_maxi']) ? $_POST['nb_mails_maxi'] :  $mails_donnees['nb_mails_maxi']  ;
     188    $mails_donnees['nb_mails_periode'] = isset($_POST['nb_mails_periode']) ? $_POST['nb_mails_periode'] :  $mails_donnees['nb_mails_periode']  ; 
     189    $mails_donnees['nb_spams_maxi'] = isset($_POST['nb_spams_maxi']) ? $_POST['nb_spams_maxi'] :  $mails_donnees['nb_spams_maxi']  ;
     190    $mails_donnees['nb_spams_periode'] = isset($_POST['nb_spams_periode']) ? $_POST['nb_spams_periode'] :  $mails_donnees['nb_spams_periode']  ;
     191
     192    $mails_donnees['quarantaine_periode'] = isset($_POST['quarantaine_periode']) ? $_POST['quarantaine_periode'] :  $mails_donnees['quarantaine_periode']  ;
     193 
     194    $mails_donnees['message'] = isset($_POST['content']) ? $_POST['content'] :  $mails_donnees['message']  ;
     195    $mails_donnees['header_text'] = isset($_POST['header_text']) ? $_POST['header_text'] :  $mails_donnees['header_text']  ;
     196    //=======================================================================================================
    238197    verif_mails_donnees();
    239 //===============================================================================
    240  
    241         $rest_mail= $mails_donnees['rest_mail'];       
    242         $rest_spam= $mails_donnees['rest_spam'];       
    243     $reste= $mails_donnees['reste'];   
    244 
    245 $quarantaine = ($mails_donnees['quarantaine'] == 'true') ? true : false ;       
    246 
    247 $template->assign(
     198    mail_supervisor::sauve_options();
     199    mail_supervisor::sauve_donnees();
     200    //==============================================================================
     201    $infos_message  =  l10n('Sv_save_config') . " : " . l10n('Sv_Datas') . "<br />" ;
     202    $erreur_message = "";
     203    $mails_donnees = mail_supervisor::Get_Datas() ;
     204  }
     205 }     
     206        $mails_donnees = mail_supervisor::Get_Datas();
     207 verif_mails_donnees();
     208//===============================================================================
     209 $rest_mail= $mails_donnees['rest_mail'];       
     210 $rest_spam= $mails_donnees['rest_spam'];       
     211 $reste= $mails_donnees['reste']; 
     212 $quarantaine = ($mails_donnees['quarantaine'] == 'true') ? true : false ;     
     213 $template->assign(
    248214                                        array(
    249    'check_mailto' => ($mails_options[check_mailto] == 'on') ? 'checked="checked"' : '' ,
    250    'check_header_carbons' => ($mails_options[check_header_carbon] == 'on') ? 'checked="checked"' : '' ,
    251    'check_header_text' => ($mails_options[check_header_text] == 'on') ? 'checked="checked"' : '' ,
     215                        'check_mailto' => ($mails_options['check_mailto'] == 'on') ? 'checked="checked"' : '' ,
     216                        'check_header_carbons' => ($mails_options['check_header_carbon'] == 'on') ? 'checked="checked"' : '' ,
     217                        'check_header_text' => ($mails_options['check_header_text'] == 'on') ? 'checked="checked"' : '' ,
    252218
    253219   
    254         'nb_mails' => $mails_donnees['nb_mails'] ,
    255         'date_mail' => "'".date(l10n('Sv_formatdate'),$mails_donnees['date_mail'])."'" ,
    256         'nb_mails_maxi' => $mails_donnees['nb_mails_maxi'] ,   
    257         'nb_mails_periode' => "'". int_to_heure($mails_donnees['nb_mails_periode'])."'" ,       
    258         'time_mails_reste' => "'".int_to_heure( $rest_mail )."'" ,     
    259        
    260         'nb_spams' => $mails_donnees['nb_spams'] ,
    261         'date_spam' => "'".date(l10n('Sv_formatdate'),$mails_donnees['date_spam'])."'" ,
    262         'nb_spams_maxi' => $mails_donnees['nb_spams_maxi'] ,   
    263         'nb_spams_periode' => "'".int_to_heure($mails_donnees['nb_spams_periode'])."'" ,
    264         'time_spams_reste' => "'".int_to_heure($rest_spam)."'" ,       
     220                        'nb_mails' => $mails_donnees['nb_mails'] ,
     221                        'date_mail' => "'".date(l10n('Sv_formatdate'),$mails_donnees['date_mail'])."'" ,
     222                        'nb_mails_maxi' => $mails_donnees['nb_mails_maxi'] ,   
     223                        'nb_mails_periode' => "'". int_to_heure($mails_donnees['nb_mails_periode'])."'" ,       
     224                        'time_mails_reste' => "'".int_to_heure( $rest_mail )."'" ,     
     225       
     226                        'nb_spams' => $mails_donnees['nb_spams'] ,
     227                        'date_spam' => "'".date(l10n('Sv_formatdate'),$mails_donnees['date_spam'])."'" ,
     228                        'nb_spams_maxi' => $mails_donnees['nb_spams_maxi'] ,   
     229                        'nb_spams_periode' => "'".int_to_heure($mails_donnees['nb_spams_periode'])."'" ,
     230                        'time_spams_reste' => "'".int_to_heure($rest_spam)."'" ,       
    265231         
    266         'quarantaine' => $quarantaine ,
    267         'date_quarantaine' => "'".date(l10n('Sv_formatdate'),time()+$reste)."'" ,
    268         'quarantaine_periode' => "'".int_to_heure($mails_donnees['quarantaine_periode'])."'" ,
    269      'reste' => "'".int_to_heure($reste)."'",
    270  
    271     'message' => $mails_donnees['message'] ,
    272         'header_text' => "'".$mails_donnees['header_text']."'" ,
    273        
    274     'PHPWG_VERSION' =>   PHPWG_VERSION ,
    275         'version' =>    $version ,
    276         'MAIL_SUPERV_PATH' =>  MAIL_SUPERV_PATH ,
    277         'path_js' => $path_js,
    278     'MAIL_SUPERV_PATH_ABS' => MAIL_SUPERV_PATH_ABS,
     232                        'quarantaine' => $quarantaine ,
     233                        'date_quarantaine' => "'".date(l10n('Sv_formatdate'),time()+$reste)."'" ,
     234                        'quarantaine_periode' => "'".int_to_heure($mails_donnees['quarantaine_periode'])."'" ,
     235                        'reste' => "'".int_to_heure($reste)."'",
     236 
     237                        'message' => $mails_donnees['message'] ,
     238                        'header_text' => "'".$mails_donnees['header_text']."'" ,
     239       
     240                        'PHPWG_VERSION' =>       PHPWG_VERSION ,
     241                        'version' =>     $version ,
     242                        'MAIL_SUPERV_PATH' =>  MAIL_SUPERV_PATH ,
     243                        'path_js' => $path_js,
     244                        'MAIL_SUPERV_PATH_ABS' => MAIL_SUPERV_PATH_ABS,
    279245     
    280246                                                )
    281                                 );     
    282 
    283         $template->set_filenames(array('plugin_admin_content' => realpath(MAIL_SUPERV_PATH . 'admin/mail_superv_admin.tpl')));
    284  
    285 
    286         $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');
    287                
     247                                );                       
     248         $template->set_filenames(array('plugin_admin_content' => realpath(MAIL_SUPERV_PATH . 'admin/mail_superv_admin.tpl')));
     249         $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');           
    288250 break;
    289  
    290  
    291 // *************************************************************************
     251  // *************************************************************************
    292252//                        TEST                                             |
    293253// *************************************************************************
     
    295255   case 'mail_superv_test':
    296256                load_language('plugin.lang', MAIL_SUPERV_PATH);
    297                 $mails_donnees = Get_Datas() ;
     257                $mails_donnees = mail_supervisor::Get_Datas() ;
    298258                $group_id = isset($_POST['group']) ? $_POST['group'] :  '-1'  ;
    299259
     
    354314
    355315        unset_make_full_url();
    356         sauve_donnees();
    357         $mails_donnees = Get_Datas() ;
     316        mail_supervisor::sauve_donnees();
     317        $mails_donnees = mail_supervisor::Get_Datas() ;
    358318    $query = 'SELECT
    359319                name
     
    426386//              BLACK LISTE                                         |
    427387// *************************************************************************   
    428      case 'mail_black_liste':
    429                 global $user_name,$mail_adresse,$ip ;
    430                 $aff_nb=false;
    431  //------------------------------------------------------------------------------------
    432         $mails_options[no_mail_list] = isset($_POST['no_mail_list']) ? $_POST['no_mail_list'] : $mails_options[no_mail_list] ;
    433         $mails_options[no_connect] = 'off' ;//isset($_POST['no_connect']) ? $_POST['no_connect'] : $mails_options[no_connect] ;
    434             $mails_options[set_auto] = 'off' ;//isset($_POST['set_auto']) ? $_POST['set_auto'] : $mails_options[set_auto] ;             
    435 //=======================================================================================       
    436     $info_ip = (isset($info_ip)) ? $info_ip : '' ;
    437     $info_ip = (isset($_POST['info1'])) ? $_POST['info1'] : $info_ip ;
    438     $info_ip = (isset($_POST['info'])) ? $_POST['info'] : $info_ip ;
    439     $info_ip .= ":";
    440    $val=explode(":",$info_ip);
    441    $info_ip = trim($val[0]) ;
    442    $ip_black = trim($val[1]) ;
    443 
     388 case 'mail_black_liste':
     389  global $user_name,$mail_adresse,$ip ;
     390  $aff_nb=false;
     391  //=======================================================================================     
     392  $info_ip = (isset($info_ip)) ? $info_ip : '' ;
     393  $info_ip = (isset($_POST['info1'])) ? $_POST['info1'] : $info_ip ;
     394  $info_ip = (isset($_POST['info'])) ? $_POST['info'] : $info_ip ;
     395  $info_ip .= ":";
     396  $val=explode(":",$info_ip);
     397  $info_ip = trim($val[0]) ;
     398  $ip_black = trim($val[1]) ;
    444399  if (isset($_POST['ip_black']))   $ip_black = ($ip_black == "" ) ? $_POST['ip_black'] : $ip_black ;
    445    
    446                         $istype="";
    447                  
    448                  
    449         if ( isset($_POST['submit']) )
    450                 {
    451 
    452         if (clj_is_ip($ip_black)) $istype='IP';
    453          elseif (clj_is_mail($ip_black))  $istype='MAIL';
    454      else   $istype='LOGIN';
    455          
    456                         if (  $_POST['submit'] == l10n('Sv_Ajout') )
    457                 {
    458                                $info_ip = 'Ajout' ;
    459                    $ip_black = trim( $_POST['ip_black']) ;
    460                                $infos_message .= $info_ip . '---->'. $ip_black ;   
    461                         }
    462                         if (  $_POST['submit'] == l10n('Sv_Valider') )
    463                 {
    464                                 $mails_options[no_mail_list] = isset($_POST['no_mail_list']) ? $_POST['no_mail_list'] : "off" ;
    465                         $mails_options[no_connect] ='off' ;// isset($_POST['no_connect']) ? $_POST['no_connect'] : "off" ;
    466                         $mails_options[set_auto] = 'off' ;//isset($_POST['set_auto']) ? $_POST['set_auto'] : "off" ;
    467                                 $mails_options[set_id] = isset($_POST['set_id']) ? $_POST['set_id'] : "off" ;
    468                                 sauve_options();
    469                             $infos_message .=  l10n('Sv_save_config') . '<br />';   
    470                            
    471                         }
    472                 }       
    473 
     400                $istype="";
     401        if ( isset($_POST['submit']) ){
     402         if (clj_is_ip($ip_black)) $istype='IP';
     403         else if (clj_is_mail($ip_black))  $istype='MAIL';
     404      else   $istype='LOGIN';   
     405    if (  $_POST['submit'] == l10n('Sv_Ajout') )        {
     406      $info_ip = 'Ajout' ;
     407      $ip_black = trim( $_POST['ip_black']) ;
     408      $infos_message .= $info_ip . '---->'. $ip_black ;   
     409    }
     410         if (  $_POST['submit'] == l10n('Sv_Valider') ) {
     411   
     412     $mails_options['no_mail_list'] = isset($_POST['no_mail_list']) ? "on" : "off" ;
     413     $mails_options['no_connect'] = isset($_POST['no_connect']) ? "on" : "off" ;
     414     $mails_options['set_auto'] = isset($_POST['set_auto']) ? "on" : "off" ;
     415     $mails_options['set_id'] = isset($_POST['set_id']) ? "on" : "off" ;
     416     mail_supervisor::sauve_options();
     417     $infos_message .=  l10n('Sv_save_config') . '<br />';
     418  }
     419}
    474420if (!isset($params)) $params=array();
    475421if (!isset($params['per_page'])) $params['per_page'] = 20 ;
     
    480426if (isset($_POST['next'])) $params['start'] +=   1;
    481427if (isset($_POST['prev']))  $params['start'] -=   1;
    482 
    483 $params['start']= ($params['start']>=0) ? $params['start'] : 0 ;
    484 
    485 
    486 include  (MAIL_SUPERV_PATH.'include/save_info.php');       
    487 $maxipage=(int) (       $nbip  / $params['per_page']) ;
     428 $params['start']= ($params['start']>=0) ? $params['start'] : 0 ;
    488429//=======================================================================================       
     430 include  (MAIL_SUPERV_PATH.'include/save_info.php');     
     431  $maxipage=(int) (     $nbip  / $params['per_page']) ;
    489432        $f_action  = $my_base_url.'&amp;tab=mail_black_liste' ;
    490433        $champs_ip=array();
    491434        $champs_bl=array();
    492435        if (!empty($liste_ip))          $champs_ip=array_keys($liste_ip[0]);
    493         if (!empty($liste_bl))      $champs_bl=array_keys($liste_bl[0]);
     436        if (!empty($liste_bl))  $champs_bl=array_keys($liste_bl[0]);
    494437           $smile_bonjour=MAIL_SUPERV_PATH."smilies/mouche.gif" ;
    495438           $img_logo=MAIL_SUPERV_PATH."smilies/logo.png" ;
     
    514457                        'F_ACTION' => $f_action ,
    515458                                               
    516                         'no_mail_list' => ($mails_options[no_mail_list] == 'on') ? 'checked="checked"' : '' ,
    517                         'no_connect' => ($mails_options[no_connect] == 'on') ? 'checked="checked"' : '' ,
    518                         'set_auto' => ($mails_options[set_auto] == 'on') ? 'checked="checked"' : '' ,
    519                         'set_id' => ($mails_options[set_id] == 'on') ? 'checked="checked"' : '' ,
     459                        'no_mail_list' => ($mails_options['no_mail_list'] == 'on') ? 'checked="checked"' : '' ,
     460                        'no_connect' => ($mails_options['no_connect'] == 'on') ? 'checked="checked"' : '' ,
     461                        'set_auto' => ($mails_options['set_auto'] == 'on') ? 'checked="checked"' : '' ,
     462                        'set_id' => ($mails_options['set_id'] == 'on') ? 'checked="checked"' : '' ,
    520463                        'IP' =>  $ip ,                                         
    521464                        'PAYS' =>  $pays  ,
     
    526469                                        )
    527470                                );                       
    528          //===============================================================     
    529                
    530                                  
    531                 $template->set_filenames(array('plugin_admin_content' => realpath(MAIL_SUPERV_PATH . 'admin/mail_black_liste.tpl')));
    532                 $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');
     471         //===============================================================                                       
     472  $template->set_filenames(array('plugin_admin_content' => realpath(MAIL_SUPERV_PATH . 'admin/mail_black_liste.tpl')));
     473  $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');
     474     
     475
    533476   break;
    534477
     
    585528        }
    586529        if ( $modif == true )   {
    587                                 sauve_donnees();
     530                                mail_supervisor::sauve_donnees();
    588531                                $modif = false ;
    589532                }
     
    593536                 $infos_message .= "\n".'Spams : '.$mails_donnees['nb_spams']. '  \\  ' . $mails_donnees['nb_spams_maxi'];
    594537                }
    595                
    596 
    597                  
    598                 if  ($infos_message != "")  {
    599                    array_push($page['infos'],  $infos_message);
    600                    $infos_message="";
    601                  }
    602                  
    603                 if  ($erreur_message != "")  {
    604        
    605                   array_push($page['errors'], $erreur_message);
    606                   $erreur_message="";
    607        
    608                  
    609                  }               
     538
     539
     540         mail_supervisor::affiche_message();
    610541//========================================================================     
    611542?>
  • extensions/Mail_supervisor/admin/mail_superv_admin.tpl

    r8917 r9702  
    1 {html_head} {if PHPWG_VERSION < 2.2 } {include file=$MAIL_SUPERV_PATH_ABS|@cat:'header_2_1.tpl'}
    2 {else} {include file= $MAIL_SUPERV_PATH_ABS|@cat:'header_2_2.tpl'} {/if} {/html_head}
    3 
    41<script type="text/javascript">
    52jQuery().ready(function(){ldelim}
  • extensions/Mail_supervisor/admin/mail_superv_help.tpl

    r8917 r9702  
    1 {html_head} {if PHPWG_VERSION < 2.2 } {include file=$MAIL_SUPERV_PATH_ABS|@cat:'header_2_1.tpl'}
    2 {else} {include file= $MAIL_SUPERV_PATH_ABS|@cat:'header_2_2.tpl'} {/if} {/html_head}
    31<div class="instructions" >
    42<h2>{'Sv_Tab_help'|translate}{'Sv_version'|translate}{$version}</h2>
    53<fieldset style=" position:relative ; top:15px">
    64  <legend>{'Sv_admin_titre'|translate}</legend>
    7 <div id="instructionFonction" class="instructionBlock" >
    8  
     5<div id="instructionFonction" class="instructionBlock" >
    96  <div
    107    id="fonction_header"
  • extensions/Mail_supervisor/admin/mail_superv_test.tpl

    r8917 r9702  
    1 {html_head} {if PHPWG_VERSION < 2.2 } {include file=$MAIL_SUPERV_PATH_ABS|@cat:'header_2_1.tpl'}
    2 {else} {include file= $MAIL_SUPERV_PATH_ABS|@cat:'header_2_2.tpl'} {/if} {/html_head}
    31<div class="titrePage">
    42        <h2>{'Sv_supervisor'|translate}{'Sv_version'|translate}{$version}</h2>
    53</div>
    6 
    74<form action="" method="post" name="form">
    8 
    95  <fieldset>
    106    <legend>{'Sv_Tab_test'|translate}</legend>
  • extensions/Mail_supervisor/include/Scripts.js

    r8917 r9702  
    1 function blockToggleDisplay(headerId, contentId){
    2         var revHeader = document.getElementById(headerId);
    3         var revContent = document.getElementById(contentId);
     1function blockToggleDisplay(headerId, contentId) {
     2 var revHeader = document.getElementById(headerId);
     3 var revContent = document.getElementById(contentId);
    44
    5         if (revContent.style.display == 'none')
    6         {
    7                 revContent.style.display = 'block';
    8                 revHeader.className = 'instructionBlockHeaderExpanded';
    9         }
    10         else
    11         {
    12                 revContent.style.display = 'none';
    13                 revHeader.className = 'instructionBlockHeaderCollapsed';
    14         }
     5 if (revContent.style.display == 'none') {
     6  revContent.style.display = 'block';
     7  revHeader.className = 'instructionBlockHeaderExpanded';
     8 }
     9 else {
     10  revContent.style.display = 'none';
     11  revHeader.className = 'instructionBlockHeaderCollapsed';
     12 }
    1513}
     14/*******************************************
     15* get_script_geo()
     16********************************************/
     17function get_script_geo() {
     18 try {
     19  if (typeof pays == "undefined") {
     20   pays = geoip_country_name();
     21   ville = geoip_city();
     22   region = geoip_region_name();
     23   latitude = geoip_latitude();
     24   longitude = geoip_longitude();
     25  }
     26  jQuery("#pays").val(pays);
     27  jQuery("#ville").val(ville);
     28  jQuery("#region").val(region);
     29  jQuery("#latitude").val(latitude);
     30  jQuery("#longitude").val(longitude);
     31
     32 } catch (e) {
     33  url = "http://j.maxmind.com/app/geoip.js";
     34  jQuery.getScript(url, function () {
     35   try {
     36    pays = geoip_country_name();
     37    ville = geoip_city();
     38    region = geoip_region_name();
     39    latitude = geoip_latitude();
     40    longitude = geoip_longitude();
     41    jQuery("#pays").val(pays);
     42    jQuery("#ville").val(ville);
     43    jQuery("#region").val(region);
     44    jQuery("#latitude").val(latitude);
     45    jQuery("#longitude").val(longitude);
     46   } catch (e) {
     47
     48   }
     49  });
     50 }
     51
     52}
     53jQuery(document).ready(
     54     function (jQuery) {
     55       jQuery(window).load(function () {
     56         // get_script_geo();
     57         jQuery('.cluetip').cluetip({ width: 350, splitTitle: '|' });
     58
     59         spam = jQuery("#action_spam").val();
     60         if (spam == "true") get_script_geo();
     61         if (jQuery(".infos").length > 0)
     62           if (spam == "true") {
     63             jQuery(".infos").css("color", "red");           
     64
     65           }
     66
     67         jQuery(".bp").click(function () {
     68           if (confirm(this.alt + '\n\n' + confirm_message)) form_black.info1.value = this.rel;
     69
     70         });
     71
     72
     73         function ajout_action(titre, message, valeur) {
     74           alert("");
     75
     76
     77         }
     78
     79
     80       });
     81     });
  • extensions/Mail_supervisor/include/constants.php

    r4888 r9702  
    22global $prefixeTable;
    33
    4 if (!defined('MAIL_SUPERV_TABLE')) define('MAIL_SUPERV_TABLE', $prefixeTable.'mail_superv');
     4if (!defined('mail_superv_TABLE')) define('mail_superv_TABLE', $prefixeTable.'mail_superv');
    55if (!defined('MAIL_BLACK_LISTE_TABLE')) define('MAIL_BLACK_LISTE_TABLE', $prefixeTable.'mail_black_list');
    66if (!defined('Sv_MAIL_TABLE')) define('Sv_MAIL_TABLE', $prefixeTable.'Sv_mail');
    7 
    8 
    9 
    107global  $superv_champs , $superv_type ,$superv_bl_champs , $superv_bl_type ;
    11 
    12 
    13           $superv_champs = array(
    14                        "id",
    15                                         "nb_mails",
    16                                         "date_mail",
    17                                         "nb_mails_maxi",               
    18                                         "nb_mails_periode",     
    19                                         "nb_spams",
    20                                         "date_spam",   
    21                                         "nb_spams_maxi",       
    22                                         "nb_spams_periode",     
    23                                         "quarantaine",
    24                                         "date_quarantaine",
    25                                         "quarantaine_periode", 
    26                                         "message",
    27                                         "message_test",
    28                                     "header_text",
    29                                
    30                                         );     
     8$superv_champs = array(
     9  "id",
     10  "nb_mails",
     11  "date_mail",
     12  "nb_mails_maxi",             
     13  "nb_mails_periode",   
     14  "nb_spams",
     15  "date_spam", 
     16  "nb_spams_maxi",     
     17  "nb_spams_periode",   
     18  "quarantaine",
     19  "date_quarantaine",
     20  "quarantaine_periode",       
     21  "message",
     22  "message_test",
     23  "header_text",                               
     24                );     
    3125                                                                       
    3226        $superv_type = array(
  • extensions/Mail_supervisor/include/fonctions.php

    r8917 r9702  
    2222// +-----------------------------------------------------------------------+
    2323
    24 if (!defined('PHPWG_ROOT_PATH'))
    25 {
    26   die('Hacking attempt!');
    27 }
    28 
     24if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
    2925if (!defined('MAIL_SUPERV_PATH')) define('MAIL_SUPERV_PATH' , PHPWG_PLUGINS_PATH.basename(dirname(__FILE__)).'/');
    3026
    31     define ("check_mailto", 0);
    32         define ("check_header_carbon",1);
    33         define ("check_header_text",2);
    34     define ("no_mail_list", 3);
    35         define ("no_connect",4);        // empeche l'ip de se connecter au site.
    36         define ("set_auto",5);          // Test a l'ouverture et enregistrement
    37     define ("ip",6);                    // dernirre adresse IP
    38         define ("set_id",7);            // enregistrment nouvel
    39  
    40  
    41  if (!isset($_COOKIE[session_name()]))
    42 {
    43 
    44 
    45 
    46 }
    47 include_once(PHPWG_ROOT_PATH.'include/functions_mail.inc.php');
    48 include_once(PHPWG_ROOT_PATH.'include/functions.inc.php');
    49 include_once(PHPWG_ROOT_PATH.'admin/include/functions.php');
     27global  $superv_champs , $superv_type ,$superv_bl_champs , $superv_bl_type ;
     28// if (!isset($_COOKIE[session_name()])){}
     29
    5030global $lang ;
    51 
    52 include_once (MAIL_SUPERV_PATH.'include/function_test_send.php');
    53     load_language('plugin.lang', MAIL_SUPERV_PATH);
    54 global  $superv_champs , $superv_type ,$superv_bl_champs , $superv_bl_type ;
    55          
    56 //==========================================================
    57 function sauve_options()
    58 {
    59 global $mails_options ;
    60  if ( isset($mails_options) )
    61         {
    62          
    63          while ( count($mails_options) < 10 )
    64            {
    65          
    66               $mails_options[]='?';
    67            }
    68            
    69                 $valeurs = implode( ',',$mails_options);
    70  
    71                
    72                 $query = '
    73                 UPDATE '.CONFIG_TABLE.'
    74                 SET value="'. $valeurs . '"
    75                 WHERE param = "mail_superv"
    76                 LIMIT 1';
    77                         pwg_query($query);
    78          
    79         }
    80 }
    81 //=================================================================================
    82 function sauve_donnees()
    83 {
    84 
    85 global $mails_donnees,$superv_champs,$superv_type,$erreur_message ;
    86 //=====================================================================
    87         $clefs = $superv_champs ;
    88         $valeurs = array();
    89 
    90 foreach ( $clefs as $champ)
    91    {
    92      $champ = trim($champ);
    93      
    94          if ( isset($mails_donnees[  $champ ]) ) {
    95            $sep= (is_string($mails_donnees[ $champ ])) ? '"' : '' ;
    96        array_push($valeurs , "`".$champ."`" . ' = ' . $sep . $mails_donnees[  $champ ] . $sep)  ;
    97          }else{
    98          
    99             array_push($valeurs , "`".$champ."`" . ' = ' .  "0"  )  ;
    100          }
    101          
    102     }
    103 $valeurs = implode(", ",$valeurs) ;
    104 //=====================================================================
    105 $query = '
    106         UPDATE '.MAIL_SUPERV_TABLE.'
    107         SET '. $valeurs .'
    108                 WHERE `id` = 1 LIMIT 1 ';
    109                 ;
    110         ob_start();
    111                 $ret=  pwg_query($query)    ;
    112                 $m= ob_get_contents();
    113         ob_end_clean() ;
    114         $erreur_message .= $m ;
    115 
    116 }
    117          
    118 //=================================================================================
    119 function affiche_message()
    120 {
    121  global $template,$infos_message,$erreur_message, $user ,$ip;
    122 
    123 global $mails_options,$conf,$lang ;
    124 
    125 $mails_options = explode("," , $conf['mail_superv']);
    126                 if (!isset($ip)) {
    127                        if (getenv("HTTP_CLIENT_IP"))
    128                                             {    $ip=getenv("HTTP_CLIENT_IP");  }
    129                                         else{   $ip=getenv("REMOTE_ADDR");      }
    130                            }
    131 //  unset ($_SESSION['pwg_'.'action_spam']);
    132      $action_spam = pwg_get_session_var('action_spam') ;
    133     if  ($action_spam == null) { $action_spam = kill_list();  }
    134        
    135         if (is_bool($action_spam)) $action_spam =($action_spam == true) ? "true" : "false" ;
    136           if ($action_spam == "true" )
    137                  { 
    138                   $erreur_message = $ip . " "  . $action_spam  ;
    139                   pwg_set_session_var('action_spam', "true");
    140                   $erreur_message .= "<BR />".l10n('Sv_is_a_spam') ;
    141                  if ($mails_options[no_connect] == 'on' ){
    142                         //[status] => guest
    143                         //[status] => normal
    144                         //[status] => webmaster
    145                         if ($user['status'] != 'webmaster'  )
    146                                 if (!isset($_GET['admin'])) {
    147                                                  die('Blacklist : <br />' .$erreur_message. '<br /> Hacking attempt!');
    148                                 }elseif   ($_GET['admin'] != 'piwigo')
    149                                         {
    150                                                  die('blacklist Hacking attempt!');
    151                                         }
    152                                 unset ($_SESSION['pwg_'.'action_spam']);
    153            }
    154              }else{
    155                    pwg_set_session_var('action_spam', "false");
    156                  }
    157        
    158  
    159 // }     
    160 
    161  //==============================================================
    162   if (isset($erreur_message))
    163                 {       
    164  
    165                 if ($erreur_message <> "")
    166                         {
    167                             $erreur_message = str_replace("\n",'<br />',$erreur_message) ;
    168                                 $template->assign('errors',$erreur_message);
    169                                 $erreur_message = "";
    170                         }
    171                 }
    172                
    173        
    174   if (isset($infos_message))
    175                 {       
    176                
    177                 if ($infos_message <> "")
    178                         {
    179                                 $infos_message = str_replace("\n",'<br />',$infos_message) ;
    180                                 $template->assign('infos',$infos_message);
    181                                 $infos_message = "";
    182                         }
    183                 }
    184                 //=============================================================
    185        
    186        
    187 return;         
    188                
    189 }
    190 
    191 function Get_geo()
    192 {
    193 global $ip,$pays,$region,$ville, $latitude ,$longitude,$mails_options;
    194          //===================================================================================
    195         $info_geo = pwg_get_session_var('info_geo');
    196         print_r($info_geo );
    197         if (count($info_geo) > 0) 
    198         {
    199                
    200                 $pays  = $info_geo[0];
    201                 $region  = $info_geo[1];
    202                 $ville  = $info_geo[2];
    203                 $latitude = $info_geo[3];
    204                 $longitude = $info_geo[4];
    205                 $ip = $info_geo[5];
    206                 return true;
    207         }
    208 //=======================================================================
    209 
    210  if (isset($_POST['pays'])) {
    211                         $pays = isset($_POST['pays']) ? $_POST['pays'] : "";
    212                         $region =  isset($_POST['region']) ? $_POST['region'] :"";                             
    213                         $ville = (isset($_POST['ville']))   ? $_POST['ville']: "";
    214                         $latitude =  isset($_POST['latitude']) ? $_POST['latitude'] : "";       
    215                         $longitude =  isset($_POST['longitude']) ? $_POST['longitude'] : "";
    216                                
    217                         $info_geo = array(   $pays ,$region , $ville ,$latitude, $longitude,$_SERVER['REMOTE_ADDR']  );
    218                         pwg_set_session_var('info_geo', $info_geo);
    219                         return true;
    220  
    221  }else{
    222 
    223             $result="";
    224 ?>
    225 <script language="JavaScript" src="http://j.maxmind.com/app/geoip.js" type="text/javascript" >
    226 </script>         
    227 <script language="JavaScript" type="text/javascript">
    228             var pays     =  geoip_country_name();
    229                         var ville     =  geoip_city();
    230                         var region    =  geoip_region_name() ;
    231                         var latitude  =  geoip_latitude() ;
    232                         var longitude =  geoip_longitude() ;
    233                        
    234 </script>
    235 <form action="" method="post" name="form_connexion" id="form_connexion" style="visibility:hidden">
    236 <script language="JavaScript" type="text/javascript">                   
    237                 document.write ("<input name=\"pays\"  type=\"text\" value =  "+ pays + "  id = \"pays\"  > ");
    238                 document.write ("<input name=\"ville\"  type=\"text\" value = "+ ville + "  id = \"ville\"   >  ");
    239                 document.write ("<input name=\"region\"  type=\"text\" value =  "+ region + "   id = \"region\"   > ");
    240                 document.write ("<input name=\"latitude\"  type=\"text\" value =  "+ latitude + " id = \"latitude\"   > ");
    241                 document.write ("<input name=\"longitude\"  type=\"text\" value = "+ longitude + " id = \"longitude\"  >  ");
    242 </script>       
    243 
    244 </form >       
    245 <script language="JavaScript" type="text/javascript">
    246   document.getElementById("form_connexion").submit();
    247 </script>
    248 <?php   
    249    
    250  }
    251 //=====================================================================================         
    252 }
    253 
    254 //=================================================================================
    255 function Get_Datas()
    256 {
    257 global $superv_champs ;
    258 $champs = implode(",",$superv_champs );
    259     $query = "SELECT ".$champs."
    260     FROM ".MAIL_SUPERV_TABLE."
    261         ;";
    262                          $result = @pwg_query($query);
    263  
    264         if (!$result) {
    265                                         verif_base();
    266                                         $result = @pwg_query($query);
    267                                         }
    268 
    269                                        
    270     $data = mysql_fetch_array($result,MYSQL_ASSOC);
    271         //====================================================================================
    272 
    273         $next_day = Str_To_Time( $data['nb_mails_periode'], $data['date_mail'] );
    274  $next_day = ($next_day >0) ? $next_day :  (604800  + time()) ;
    275         $data['rest_mail'] =    $next_day - time() ;
    276 
    277         $next_day = Str_To_Time( $data['nb_spams_periode'],$data['date_spam']);
    278         $next_day = ($next_day >0) ? $next_day :  (172800  + time()) ;
    279         $data['rest_spam'] =  $next_day - time() ;
    280 
    281 
    282         $next_day = Str_To_Time($data['quarantaine_periode'] ,$data['date_quarantaine']);       
    283         $next_day = ($next_day >0) ? $next_day :  (172800 + time()) ;
    284        
    285         if ($data['quarantaine'] == 'true' ) {
    286                         $data['reste'] =   ( $next_day )-time() ;
    287         }else{
    288                         $data['reste'] = 0;
    289         }
    290        
    291          return $data;
    292 }
     31global $template ;
    29332//===============================================
    294 
    29533function corrige_header($Carbonne,$headers,$args,$cl_list_mail)
    29634        {
     
    30139                if ( count($args[$Carbonne]) > 0 )
    30240                {
    303                         if ($mails_options[check_header_carbon] == 'on') {
     41                        if ($mails_options['check_header_carbon'] == 'on') {
    30442                                        $cl_list_mail  =  str_replace(","," , ",get_strict_email_list(implode(',', $args[$Carbonne])))." \n"  ;
    30543                                        $headers = preg_replace('/.*'.$Carbonne.'(.*).\n/i', $Carbonne.': '.$cl_list_mail, $headers);
     
    36199$retour=str_replace("+0","+",$retour);
    362100//================================================================================================   
    363 
    364 
    365101return $retour;
    366 
    367 }       
    368 
    369 function memo_var($variables)
    370 {
    371                 ob_start();
    372                 echo '<pre>';
    373                 print_r($variables);
    374                 echo '</pre>';
    375                 $m= ob_get_contents();
    376 
    377         ob_end_clean();
    378                 return $m;
    379                
    380 }
    381    
     102}         
    382103
    383104       
    384 function verif_base()
    385 {
    386 
    387 global $lang,$superv_champs,$superv_type,$superv_bl_champs,$superv_bl_type;
    388     load_language('plugin.lang', MAIL_SUPERV_PATH);
    389 //==============================================================================               
    390     create_table(MAIL_BLACK_LISTE_TABLE,$superv_bl_champs,$superv_bl_type) ;
    391         ajust_table(MAIL_BLACK_LISTE_TABLE,$superv_bl_champs,$superv_bl_type)  ;
    392 //==============================================================================               
    393         create_table(MAIL_SUPERV_TABLE,$superv_champs,$superv_type) ;
    394         ajust_table(MAIL_SUPERV_TABLE,$superv_champs,$superv_type)  ;
    395 //==============================================================================               
     105function verif_base(){
     106  global $lang,$superv_champs,$superv_type,$superv_bl_champs,$superv_bl_type;
     107  load_language('plugin.lang', MAIL_SUPERV_PATH);
     108  //==============================================================================             
     109  create_table(MAIL_BLACK_LISTE_TABLE,$superv_bl_champs,$superv_bl_type) ;
     110  ajust_table(MAIL_BLACK_LISTE_TABLE,$superv_bl_champs,$superv_bl_type)  ;
     111  //==============================================================================             
     112  create_table(mail_superv_TABLE,$superv_champs,$superv_type) ;
     113  ajust_table(mail_superv_TABLE,$superv_champs,$superv_type)  ;
     114  //==============================================================================             
    396115    $valeurs= array (   1,
    397                                                 0,
    398                            time(),
     116                                                          0,
     117                                   time(),
    399118                         2000,
    400          '"604800"' ,
     119                  '"604800"' ,
    401120                            0,
    402                   time(),
     121                       time(),
    403122                           10,
    404           '"172800"',
    405                        '"false"',
    406                 time(),
    407           '"172800"',
    408           '"Init"',
     123                   '"172800"',
     124                    '"false"',
     125                       time(),
     126                   '"172800"',
     127                     '"Init"',
    409128   '"'.l10n('Sv_supervisor').'"',
    410129        '"'.l10n('hello').'"',
    411          )
    412         ;
    413 //==================================================================================
    414         ajout_ligne(MAIL_SUPERV_TABLE,$superv_champs, $valeurs,false ) ;
    415        
    416 
    417 }
     130         );
     131        ajout_ligne(mail_superv_TABLE,$superv_champs, $valeurs,false ) ;
     132}
     133//=================================================================================
     134
    418135
    419136//=========================================
     
    434151{
    435152global $conf ;
    436 
    437153  $query = '
    438154SELECT DISTINCT u.'.$conf['user_fields']['id'].' AS id,
     
    447163    LEFT JOIN '.USER_GROUP_TABLE.' AS ug
    448164      ON u.'.$conf['user_fields']['id'].' = ug.user_id
    449   WHERE ug.group_id='.$group_id.' ';
    450 
    451 
    452  
     165  WHERE ug.group_id='.$group_id.' ';
    453166 $groups=array();
    454   $datas = pwg_query($query);
    455  
    456  
    457   if (!empty($datas))
    458   {
     167  $datas = pwg_query($query);
     168 
     169  if (!empty($datas)) {
    459170    while ($group = mysql_fetch_array($datas,MYSQL_ASSOC))
    460     {
    461 
    462        
     171    {   
    463172      if (!empty($group['email']))
    464       {
    465         array_push($groups, format_email($group['username'], $group['email'] ));
     173      {         array_push($groups, format_email($group['username'], $group['email'] ));
    466174      }
    467175    }
     
    472180//=================================================================================
    473181
    474 function create_table($nom_table,$champs,$types)  //MAIL_SUPERV_TABLE
     182function create_table($nom_table,$champs,$types)  //mail_superv_TABLE
    475183{
    476184        $i=0;
    477185        $valeurs=array();
    478 foreach ( $champs as $champ)
    479    {
    480         $champ = trim($champ);
    481                 array_push($valeurs , " `".$champ."`" . '  ' . $types[ $i] )  ;
    482                 $i +=1;
     186  foreach ( $champs as $champ) {
     187      $champ = trim($champ);
     188      array_push($valeurs , " `".$champ."`" . '  ' . $types[ $i] )  ;
     189      $i +=1;
    483190    }
    484191
     
    495202         
    496203}
    497 function ajust_table($nom_table,$champs,$types)  //MAIL_SUPERV_TABLE
     204function ajust_table($nom_table,$champs,$types)  //mail_superv_TABLE
    498205{
    499206global $infos_message ;
     
    514221        if ( count($valeurs) == 0) return ;
    515222       
    516   $infos_message .=  "AJUSTE TABLE : ". $nom_table . "<br />" . "NB (col) : ". count($colonnes) . memo_var($valeurs) . "<br />" ;
     223  $infos_message .=  "AJUSTE TABLE : ". $nom_table . "<br />" . "NB (col) : ". count($colonnes) . mail_supervisor::Memo_Var($valeurs) . "<br />" ;
    517224       
    518225     $valeurs=implode(", ",$valeurs) ;
     
    556263global $mails_donnees,$infos_message,$erreur_message,$page;
    557264
    558 if (!is_numeric($mails_donnees['nb_mails_periode']))
    559 {
    560  $periode = Str_To_Time( $mails_donnees['nb_mails_periode'],0);
    561  $mails_donnees['nb_mails_periode']= ($periode > 0) ? $periode : '604800' ;
     265if (!is_numeric($mails_donnees['nb_mails_periode'])){
     266  $periode = Str_To_Time( $mails_donnees['nb_mails_periode'],0);
     267  $mails_donnees['nb_mails_periode']= ($periode > 0) ? $periode : '604800' ;
    562268 }
    563 
    564 if (!is_numeric($mails_donnees['nb_spams_periode']))
    565 {
    566  
    567  $periode=Str_To_Time( $mails_donnees['nb_spams_periode'],0);
    568  $mails_donnees['nb_spams_periode']= ($periode > 0) ? $periode : '172800' ; ;
     269if (!is_numeric($mails_donnees['nb_spams_periode'])){
     270  $periode=Str_To_Time( $mails_donnees['nb_spams_periode'],0);
     271  $mails_donnees['nb_spams_periode']= ($periode > 0) ? $periode : '172800' ; ;
    569272 }
    570 if (!is_numeric($mails_donnees['quarantaine_periode']))
    571 {
    572  $periode=Str_To_Time( $mails_donnees['quarantaine_periode'],0);
    573  $mails_donnees['quarantaine_periode']= ($periode > 0) ? $periode : '172800' ;
     273if (!is_numeric($mails_donnees['quarantaine_periode'])){
     274  $periode=Str_To_Time( $mails_donnees['quarantaine_periode'],0);
     275  $mails_donnees['quarantaine_periode']= ($periode > 0) ? $periode : '172800' ;
    574276 }
    575 
    576         if  ($infos_message != "")  {
    577                    array_push($page['infos'],  $infos_message);
    578                    $infos_message="";
    579                  }
    580                  
    581                 if  ($erreur_message != "")  {
    582                   array_push($page['errors'], $erreur_message);
    583                   $erreur_message ="";
    584                  }     
     277    if  ($infos_message != "")  {
     278        array_push($page['infos'],  $infos_message);
     279        $infos_message="";
     280    }           
     281    if  ($erreur_message != "")  {
     282        array_push($page['errors'], $erreur_message);
     283        $erreur_message ="";
     284    }   
    585285                 
    586286}
     
    730430        $sep=" ";
    731431        $chaine = trim($chaine);
     432    if ($chaine=="") return ;
    732433        $existe = (strpos($sep.$sep,$chaine )===false) ;
    733434         while  ($existe ){
    734435         $str_temp = str_replace($sep.$sep, $sep, $chaine ); 
    735436                if($str_temp == $chaine ) return $chaine ;
    736 //                      $erreur_message .= memo_var($str_temp) ;
     437//                      $erreur_message .= mail_supervisor::Memo_Var($str_temp) ;
    737438                $chaine  = $str_temp;
    738439                        $existe =  (strpos($sep.$sep,$chaine )===false) ;
     
    740441        return $chaine;
    741442}
    742 
    743 
    744 
    745 function kill_list()
    746 {
    747  //==================== TEST black_liste ============================================   
    748  global $pays,$region,$ville,$ip ;
    749  global $erreur_message,$infos_message,$conf;   
    750  global $conf, $user, $page;
    751  global $mails_options ;
    752  global $superv_bl_champs,$superv_bl_type ;
    753  global $nb ;
    754  
    755 if (count($mails_options) < 7 ) return false ;
    756    
    757      $champs=implode(',',$superv_bl_champs);
    758      $query = "
    759                 SELECT ".$champs.",COUNT(`ip`) as total
    760                 FROM `".MAIL_BLACK_LISTE_TABLE."`
    761                     WHERE '".$ip."' LIKE `ip`
    762                         GROUP by `ip`
    763                 ;";     
    764                  $result = @pwg_query($query);
    765         if (!$result) {
    766                                         verif_base();
    767                                         $result = @pwg_query($query);
    768                                 }
    769         $datas = mysql_fetch_array($result,MYSQL_ASSOC);
    770         $nb = $datas['total'];
    771 //=======================================================================       
    772 
    773 if ($mails_options[set_auto] == 'nonoui') // ne plus tester automatiquement .
    774 {
    775  // $ip="94.102.63.13"; ' Spammeurs
    776  // $ip="94.102.63.15";
    777  // $mail=matusowraber93813@gmail.com ;
    778  // $username=fretgpsolodens ;
    779 global $user_name,$mail_adresse;
    780 
    781   if (test_spam($ip,$user['username'] ,$user['email']))
    782   {
    783 
    784   if ($nb==0) {
    785         $valeurs=array( 'NULL',
    786                             "'".$ip."'",
    787                                         "'".$pays."'",
    788                                         "'".$region."'",       
    789                                         "'".$ville."'",
    790                                         "'".$user['email']."'",
    791                                         "'".$user['username']."'",     
    792                                         $nb+1
    793         );
    794           ajout_ligne(MAIL_BLACK_LISTE_TABLE,$superv_bl_champs, $valeurs,$nb==0) ;     
    795         }else{ 
    796        
    797         $nb +=1;
    798        
    799                  $query ="
    800                         UPDATE " . MAIL_BLACK_LISTE_TABLE . "
    801                         SET ";
    802                     if (isset($_POST['pays'])) 
    803                  $query .= "   
    804                         `pays` = '". $pays ."',
    805                         `region` = '" . $region ."',
    806                         `ville` = '" . $ville . "',
    807                        
    808                         ";
    809                        
    810                  $query .= "
    811                     `adresse` = '".$user['email']."',           
    812                         `fai` = '".$user['username']."',               
    813                         `nb` = " . $nb . "
    814                     WHERE '".$ip."' like `ip`
    815                 ";
    816                
    817                                 pwg_query($query );     
    818         }
    819           $erreur_message .=  $mails_options[ip] ." ".$user['username']." ".$user['email'] . ' -----> ' . l10n('Sv_black_list') ;
    820         // die($nb." ".$ip." ".$user['username']." ".$user['email']); 
    821         return true ;   
    822 
    823     }
    824  
    825 }
     443//==================== TEST black_liste ============================================   
     444function kill_list() {
     445  global $pays,$region,$ville,$ip ;
     446  global $erreur_message,$infos_message,$conf; 
     447  global $conf, $user, $page;
     448  global $mails_options ;
     449  global $superv_bl_champs,$superv_bl_type ;
     450  global $nb ;
     451  if (!isset($ip)) {
     452    if (getenv("HTTP_CLIENT_IP"))   {
     453      $ip=getenv("HTTP_CLIENT_IP");
     454    }else{
     455      $ip=getenv("REMOTE_ADDR");
     456    }
     457  }
     458  $champs=implode(',',$superv_bl_champs);
     459   $query = "SELECT ".$champs.",COUNT(`ip`) as total
     460  FROM `".MAIL_BLACK_LISTE_TABLE."`
     461                WHERE '".$ip."' LIKE `ip`
     462                GROUP by `ip`
     463  ;";   
     464        $result = @pwg_query($query);
     465         if (!$result) {
     466                        verif_base();
     467                        $result = @pwg_query($query);
     468                        }
     469          $datas = mysql_fetch_array($result,MYSQL_ASSOC);
     470        $nb = $datas['total']|0;
     471    //=======================================================================   
     472    if ($mails_options['set_auto'] == 'on') { 
     473      global $user_name,$mail_adresse;
     474
     475       if (isset($nb) && $nb>0) {
     476       //if (test_spam($ip,$user['username'] ,$user['email']))  // ne plus tester automatiquement .
     477            if ($nb==0) {
     478                  $valeurs=array( 'NULL',
     479                           "'".$ip."'",
     480                                                "'".$pays."'",
     481                                                "'".$region."'",       
     482                                                "'".$ville."'",
     483                                                "'".$user['email']."'",
     484                                                "'".$user['username']."'",     
     485                                                $nb+1
     486                    );
     487                  ajout_ligne(MAIL_BLACK_LISTE_TABLE,$superv_bl_champs, $valeurs,$nb==0) ;     
     488                }else{ 
     489            mail_supervisor::Get_geo();   
     490            $nb +=1;   
     491                         $query ="UPDATE " . MAIL_BLACK_LISTE_TABLE . " SET ";
     492                         if (isset($_POST['pays']))     
     493                         $query .= "`pays` = '". $pays ."',
     494                                `region` = '" . $region ."',
     495                                `ville` = '" . $ville . "',                     
     496                                ";                     
     497                         $query .= "`adresse` = '".$user['email']."',           
     498                                `fai` = '".$user['username']."',               
     499                                `nb` = " . $nb . "
     500                         WHERE '".$ip."' like `ip` ";           
     501                                       pwg_query($query );     
     502                }
     503             $erreur_message .= $pays . $ip ." <br />User Name :".$user['username']."<br />User Mail :".$user['email'] . ' -----> ' . l10n('Sv_black_liste') ;
     504       // die($nb." ".$ip." ".$user['username']." ".$user['email']); 
     505 
     506       return true ;   
     507      } 
     508    }
    826509 //==============================================================================
    827  if ( $mails_options[ip] == $ip ) return ($nb > 0) ;   
    828    $mails_options[ip] =   $ip ; 
    829    sauve_options();
    830  
     510
     511 if ( $mails_options['ip'] == $ip ) return ($nb > 0) ;   
     512   $ip0= $mails_options['ip'] ;
     513   $mails_options['ip'] = $ip ; 
     514   mail_supervisor::sauve_options(); 
    831515        if (  $nb > 0 )
    832516        {
     
    848532            $row  = mysql_fetch_row(pwg_query($query));
    849533            $nb =  ($row[7]);
    850       $erreur_message .= $ip . ' | ' . $pays . ' | ' . $region . ' | ' . $ville . ' ' . $nb . ' ==> '; 
     534        $erreur_message .= $ip0 . ' | ' .$ip . ' | ' . $pays . ' | ' . $region . ' | ' . $ville . ' ' . $nb . ' ==> '; 
    851535 
    852536         if ($nb == 0)
     
    858542                                        "'".$ville."'",
    859543                                        "'".$user['email']."'",         
    860                                "'".$user['username']."'",               
     544                          "'".$user['username']."'",           
    861545                                        1
    862546              );
     
    883567                                pwg_query($query );     
    884568                                }
    885         //================================================================================     
    886                
    887569        }
    888  
    889 
    890 return ($nb > 0) ;
     570 return ($nb > 0) ;
    891571}
    892572//=====================================================================================
    893573function test_spam($ip =0,$user_name ='', $mail_adresse = "")
    894574{
    895         $buffer="";
    896         global $page,$infos_message;
    897 
    898 // fretgpsolodens
    899         $src =  "http://www.stopforumspam.com/api?";
    900         $type=array();
    901         $result="";
    902 if (strlen($ip)>3) {
    903 //==================  Verifie si l'IP est correct  ================================
    904 if (clj_is_ip($ip)){     
     575 $buffer="";
     576 global $page,$infos_message;
     577 $src =  "http://www.stopforumspam.com/api?";
     578 $type=array();
     579 $result="";
     580 $ip= sup_double_espace($ip);
     581 if (strlen($ip)>3) {
     582   //==================  Verifie si l'IP est correct  ================================
     583   if (clj_is_ip($ip)){     
    905584     
    906 } else { 
    907 //==================  Verifie si l'adresse mail est correcte  ================================
    908       if( clj_is_mail($ip) ){ 
    909                           $mail_adresse=$ip ;
     585   } else { 
     586   //==================  Verifie si l'adresse mail est correcte  ================================
     587         if( clj_is_mail($ip) ){ 
     588                         $mail_adresse=$ip ;
     589                 $ip="";
     590            }
     591            else
     592            {
     593   //==================  Login  ================
     594              $user_name=$ip;
    910595              $ip="";
    911          }
    912          else
    913          {
    914 //==================  Login  ================
    915            $user_name=$ip;
    916            $ip="";
    917          }
    918 }   
    919 //=============================================================================
    920 }
    921 
    922 $user_name=str_replace(" ","%20",trim($user_name));
    923 if ($user_name==l10n('Sv_guest')) $user_name="";
    924 $user_name="";  // ne plus tester sur le login.
    925 $mail_adresse =str_replace(" ","%20",trim($mail_adresse));
    926 
    927 if ( strlen($user_name) > 3)      $type[]="username=$user_name" ;
    928 if ( strlen($mail_adresse) > 3)   $type[]="email=".$mail_adresse ;
    929 if ( strlen($ip) > 3)   $type[]="ip=".$ip ;
    930 
    931          foreach  ( $type as $fil )
    932      {   
    933           $resultat="";
    934            if (  clj_fetchRemote($src.$fil , $resultat,1))
    935                   {
    936                     $result .= $resultat.'<br />'  ;
    937                   }  else {
    938                  
    939                   }
    940                  
    941       }
    942 
    943 return !(strpos(  $result ,'yes' ) === false) ;
     596            }
     597   }   
     598   //=============================================================================
     599 }
     600
     601 $user_name=str_replace(" ","%20",trim($user_name));
     602 if ($user_name==l10n('Sv_guest')) $user_name="";
     603 $user_name="";  // ne plus tester sur le login.
     604 $mail_adresse =str_replace(" ","%20",trim($mail_adresse));
     605 if ( strlen($user_name) > 3)     $type[]="username=$user_name" ;
     606 if ( strlen($mail_adresse) > 3)   $type[]="email=".$mail_adresse ;
     607 if ( strlen($ip) > 3)   $type[]="ip=".$ip ;
     608 foreach  ( $type as $fil ) {   
     609  $resultat="";
     610  if (  clj_fetchRemote($src.$fil , $resultat,1))
     611   $result .= $resultat.'<br />'  ;               
     612 }
     613
     614 return !(strpos(  $result ,'yes' ) === false) ;
    944615 
    945616}
     
    1044715}
    1045716
    1046  function Get_Version_plugins($dir)
    1047   {
    1048         $path = $dir;
    1049           $plg_data = implode( '', file($path.'main.inc.php') );
    1050           if ( preg_match("|Plugin Name: (.*)|", $plg_data, $val) )
    1051           {
    1052             $plugin['name'] = trim( $val[1] );
    1053           }
    1054           if (preg_match("|Version: (.*)|", $plg_data, $val))
    1055           {
    1056             $plugin['version'] = trim($val[1]);
    1057           }
    1058           if ( preg_match("|Plugin URI: (.*)|", $plg_data, $val) )
    1059           {
    1060             $plugin['uri'] = trim($val[1]);
    1061           }
    1062           if ($desc = load_language('description.txt', $path.'/', array('return' => true)))
    1063           {
    1064             $plugin['description'] = trim($desc);
    1065           }
    1066           elseif ( preg_match("|Description: (.*)|", $plg_data, $val) )
    1067           {
    1068             $plugin['description'] = trim($val[1]);
    1069           }
    1070           if ( preg_match("|Author: (.*)|", $plg_data, $val) )
    1071           {
    1072             $plugin['author'] = trim($val[1]);
    1073           }
    1074           if ( preg_match("|Author URI: (.*)|", $plg_data, $val) )
    1075           {
    1076             $plugin['author uri'] = trim($val[1]);
    1077           }
    1078           if (!empty($plugin['uri']) and strpos($plugin['uri'] , 'extension_view.php?eid='))
    1079           {
    1080             list( , $extension) = explode('extension_view.php?eid=', $plugin['uri']);
    1081             if (is_numeric($extension)) $plugin['extension'] = $extension;
    1082           }
    1083           // IMPORTANT SECURITY !
    1084           $plugin = array_map('htmlspecialchars', $plugin);
    1085 
    1086          return $plugin ;
    1087 
    1088   }
    1089 
    1090 
    1091717
    1092718?>
  • extensions/Mail_supervisor/include/function_test_send.php

    r8917 r9702  
    2222// +-----------------------------------------------------------------------+
    2323
    24 if ( !defined('PHPWG_ROOT_PATH'))
    25 {
    26   die('Hacking attempt!');
    27 }
    28 
    29 
    30 
    31 function test_envoie($message,$group_name,$group_id)
    32 {
    33     global $infos_message,$erreur_message ,$conf,$user,$conf_mail,$mail_donnees,$args,$lang ;
    34         $mailto=""; 
    35        
     24if ( !defined('PHPWG_ROOT_PATH'))   die('Hacking attempt!');
     25function test_envoie($message,$group_name,$group_id){   
     26  global $infos_message,$erreur_message ,$conf,$user,$conf_mail,$mail_donnees,$args,$lang ;
     27        $mailto="";     
    3628 load_language('plugin.lang', MAIL_SUPERV_PATH);
    3729 
     
    4739if (!isset($mails_donnees))
    4840        {
    49         $mails_donnees = Get_Datas();
     41        $mails_donnees = mail_supervisor::Get_Datas();
    5042        }               
    5143if (!isset($conf_mail))
     
    5547          if (isset($args))
    5648  {
    57     $infos_message=memo_var($args);
     49    $infos_message=mail_supervisor::Memo_Var($args);
    5850  }else{
    5951        $args = array();
     
    8880        //==================================================================
    8981        $message_html .= "</br>" . $message . "</br>" . $message_texte;
    90 
    91        
    9282 //==========================================================================
    9383
     
    10999               $infos_message .='<br />'.l10n('Sv_no_receiver_available') ;
    110100        }
    111 
    112101}
    113102//===============================================================================================================
    114 function mail_attachement($args)
    115 {
     103function mail_attachement($args){
    116104 global $infos_message,$erreur_message ,$conf,$user,$conf_mail,$mail_donnees,$lang ;
    117105
    118     $mails_donnees = Get_Datas();
     106    $mails_donnees = mail_supervisor::Get_Datas();
    119107          if (!isset($conf_mail))
    120108  {
     
    145133               
    146134 
    147         $message_html =         '<img src="'.PHPWG_ROOT_PATH.'admin/template/goto/theme/roma/images/piwigo_logo_sombre_214x100.png" />';
    148         ob_start();   
     135  $message_html =       '<img src="'.PHPWG_ROOT_PATH.'admin/template/goto/theme/roma/images/piwigo_logo_sombre_214x100.png" />';
     136  ob_start();   
    149137 
    150         echo str_replace("\n","<br />",$message_texte);
     138  echo str_replace("\n","<br />",$message_texte);
    151139       
    152         $message_html .= ob_get_contents()."\n";
    153         //ob_flush();
    154         ob_end_clean();
     140  $message_html .= ob_get_contents()."\n";
     141  //ob_flush();
     142  ob_end_clean();
    155143
    156        $limite=$conf_mail['boundary_key'];   
    157                 $headers =   date("Y-m-d H:i:s") ."\n";
     144  $limite=$conf_mail['boundary_key'];   
     145  $headers =   date("Y-m-d H:i:s") ."\n";
    158146
    159147  //=======================================================================================
    160                 $headers = "From: ".$args['from']."\n";
    161                 $headers.= "Reply-To: ".$args['from']."\n";
    162                 $nb_destinataires=0;
    163 $destinataire = $conf_mail['email_webmaster'];
     148    $headers = "From: ".$args['from']."\n";
     149    $headers.= "Reply-To: ".$args['from']."\n";
     150    $nb_destinataires=0;
     151    $destinataire = $conf_mail['email_webmaster']; 
     152    if (!empty($args['Cc'])){
     153      $nb_destinataires += count($args['Cc']);
     154      $to= explode(',', $args['Cc']);
     155      $headers  .= get_strict_email_list($to) ;             
     156        }
     157    if (!empty($args['Bcc'])){ 
     158      $nb_destinataires += count($args['Bcc']);
     159      $to = implode(',', $args['Bcc']);
     160      $headers  .= 'Bcc :'.get_strict_email_list($to)."\n" ;               
     161    }
    164162
    165  
    166                 if (!empty($args['Cc']))
    167                 {$nb_destinataires += count($args['Cc']);
    168                  $to= explode(',', $args['Cc']);
    169                  $headers       .= get_strict_email_list($to) ;
    170                    
    171                 }
    172                 if (!empty($args['Bcc']))
    173                 {  $nb_destinataires += count($args['Bcc']);
    174             $to = implode(',', $args['Bcc']);
    175             $headers    .= 'Bcc :'.get_strict_email_list($to)."\n" ;
    176                    
    177                 }
    178 
    179   $headers.= 'Content-Type: multipart/alternative;'."\n";
    180   $headers.= '  boundary="---='.$limite.'";'."\n";
    181   $headers.= '  reply-type=original'."\n";
    182   $headers.= 'MIME-Version: 1.0'."\n";
    183   $headers.= 'X-Mailer: Piwigo Mailer'."\n";
    184 
    185   //Le message en texte simple pour les navigateurs qui n'acceptent pas le HTML
    186     $texte = "This is a multi-part message in MIME format.\n";
    187        
    188         $texte .= "-----=".$limite."\n";
    189         $texte .= "Ceci est un message est au format MIME.\n";
    190         $texte .= 'Content-Type: text/plain; charset="UTF-8"'."\n";
    191         $texte .= 'Content-Transfer-Encoding: 8bit'."\n\n"; 
    192         $texte .= $message_texte ;
    193                 $texte .= "\n\n";
    194                
    195                 $texte .= "-----=".$limite."\n";
    196         $texte .= 'Content-Type: text/html; charset="UTF-8"'."\n";
    197         $texte .= 'Content-Transfer-Encoding: 8bit'."\n\n"; 
    198         $texte .= $message_html;
    199         $texte .= "\n\n";
    200          
    201 
    202 
    203                 $attachement = "-----=".$limite."\n";
    204                 $attachement .= "Content-Type: ".$typemime."; name=\"".$nom."\"\n";
    205                 $attachement .= "Content-Transfer-Encoding: base64\n";
    206                 $attachement .= "Content-Disposition: attachment; filename=\"".$nom."\"\n\n";
    207                 $attachement .= $piecejointe;
    208                 $attachement .= "\n\n\n-----=".$limite."\n";
    209 
    210 
    211   $ret=false;
    212 
    213 ob_start();
    214 
     163    $headers.= 'Content-Type: multipart/alternative;'."\n";
     164    $headers.= '  boundary="---='.$limite.'";'."\n";
     165    $headers.= '  reply-type=original'."\n";
     166    $headers.= 'MIME-Version: 1.0'."\n";
     167    $headers.= 'X-Mailer: Piwigo Mailer'."\n";
     168    //Le message en texte simple pour les navigateurs qui n'acceptent pas le HTML
     169    $texte = "This is a multi-part message in MIME format.\n"; 
     170    $texte .= "-----=".$limite."\n";
     171    $texte .= "Ceci est un message est au format MIME.\n";
     172    $texte .= 'Content-Type: text/plain; charset="UTF-8"'."\n";
     173    $texte .= 'Content-Transfer-Encoding: 8bit'."\n\n"; 
     174    $texte .= $message_texte ;
     175    $texte .= "\n\n";           
     176    $texte .= "-----=".$limite."\n";
     177    $texte .= 'Content-Type: text/html; charset="UTF-8"'."\n";
     178    $texte .= 'Content-Transfer-Encoding: 8bit'."\n\n"; 
     179    $texte .= $message_html;
     180    $texte .= "\n\n";
     181    $attachement = "-----=".$limite."\n";
     182    $attachement .= "Content-Type: ".$typemime."; name=\"".$nom."\"\n";
     183    $attachement .= "Content-Transfer-Encoding: base64\n";
     184    $attachement .= "Content-Disposition: attachment; filename=\"".$nom."\"\n\n";
     185    $attachement .= $piecejointe;
     186    $attachement .= "\n\n\n-----=".$limite."\n";
     187    $ret=false;
     188    ob_start();
    215189    $ret= mail( $destinataire, $args['subject'], $texte.$attachement, $headers);
    216    $message =  ob_get_contents() ;
    217         //ob_flush();
    218    ob_end_clean();
    219    if (($message)<>"") {
    220    $erreur_message .=  $message ;
    221    $infos_message =  "-------------------";
    222    }
    223 
    224     return  $ret;
    225  
     190    $message =  ob_get_contents() ;
     191  //ob_flush();
     192  ob_end_clean();
     193  if (($message)<>"") {
     194    $erreur_message .=  $message ;
     195    $infos_message =  "-------------------";
     196  }
     197  return  $ret; 
    226198}
    227 
    228 
    229199?>
  • extensions/Mail_supervisor/include/save_info.php

    r4939 r9702  
    22//=======================================================================================
    33if (!defined('MAIL_SUPERV_PATH')) define('MAIL_SUPERV_PATH' , PHPWG_PLUGINS_PATH.basename(dirname(__FILE__)).'/');
    4 
    54switch (strtolower($info_ip))
    65 {
    7   case  'ajout' :
    8  
     6  case  'ajout' : 
    97 $ip_black=str_replace("*","%",$ip_black);
    10  
    11 
    128 if (!($ip_black == '')) {
    139   $query = "
     
    1713                ;";     
    1814        //==============================================================================               
    19         list($count) = mysql_fetch_row(pwg_query($query));
    20         //==============================================================================       
    21         $valeurs=array( 'NULL',
     15  list($count) = mysql_fetch_row(pwg_query($query));
     16  //==============================================================================     
     17  $valeurs=array( 'NULL',
    2218                            "'".$ip_black."'",
    23                                         "'".$pays."'",
    24                                         "'".$region."'",       
    25                                         "'".$ville."'",
    26                                         '"adresse"',
    27                                         '"fai" ',
    28                                         $count + 1
    29         );
     19                                                 "'".$pays."'",
     20                                                 "'".$region."'",       
     21                                                 "'".$ville."'",
     22                                                 '"adresse"',
     23                                                 '"fai" ',
     24                                                 $count + 1
     25                );
    3026        ajout_ligne(MAIL_BLACK_LISTE_TABLE,$superv_bl_champs, $valeurs,($count==0)) ;   
    3127 }
     
    3430 //================================================================================================
    3531  case 'raz':
    36         $ip_black=str_replace('*',"%",$ip_black);
     32    $ip_black=str_replace('*',"%",$ip_black);
    3733                $query = "DELETE FROM `".MAIL_BLACK_LISTE_TABLE."` WHERE `ip`  like '%".$ip_black."%' ";
    38                         pwg_query($query);
     34                         pwg_query($query);
     35   
     36    unset ($_SESSION['pwg_'.'action_spam']);
    3937   break;
    4038   
    41     default:
    42 
    43 
    44                                
     39    default:                           
    4540   break;
    4641   
     
    4843//================ Liste Black liste =================
    4944  $query = "
    50     SELECT *,  COUNT(`ip`) as total ,   `ip` as blacklist, `ip` as U_DELETE
    51     FROM ".MAIL_BLACK_LISTE_TABLE."
    52                 GROUP by ip
    53         ;";
     45     SELECT *,  COUNT(`ip`) as total ,  `ip` as blacklist, `ip` as U_DELETE
     46     FROM ".MAIL_BLACK_LISTE_TABLE."
     47     GROUP by ip
     48     ;";
    5449        $liste_bl = array();
    55     $result = pwg_query($query);
    56                 while ($row = mysql_fetch_array($result,MYSQL_ASSOC))
    57                         {
     50 $result = pwg_query($query);
     51                while ($row = mysql_fetch_array($result,MYSQL_ASSOC))   {
    5852                         array_push($liste_bl,$row);
    59                                 }
     53                                }         
    6054//================ Liste IP ==============             
    6155$req = mysql_query('SELECT count(distinct(`IP`)) FROM '.HISTORY_TABLE.'    ');
    6256$nbip =  array_pop(mysql_fetch_row($req)) ;
    6357
    64 
    65              $query = '
    66     SELECT DISTINCT     H.`id`,
    67         H.`date`,
    68         H.`time`,
    69         H.`user_id`,
    70         H.`IP`,
    71         COUNT(H.`IP`) as total 
    72     FROM '.HISTORY_TABLE.'  AS H
    73         WHERE  "'.$_SERVER['REMOTE_ADDR'].'"not LIKE H.`IP`
    74         ';//
    75         if (count($liste_bl)>0)
    76          {
    77         $query .= '
    78         AND  H.`IP` not IN (     SELECT `ip`
     58        $query = 'SELECT DISTINCT       H.`id`,
     59            H.`date`,
     60            H.`time`,
     61            H.`user_id`,
     62            H.`IP`,
     63            COUNT(H.`IP`) as total 
     64            FROM '.HISTORY_TABLE.'  AS H
     65            WHERE  "'.$ip.'"not LIKE H.`IP`     ';//
     66        if (count($liste_bl)>0){
     67        $query .= '     AND  H.`IP` not IN ( SELECT `ip`
    7968    FROM '.MAIL_BLACK_LISTE_TABLE.' ) ';
    8069        }
    81        
     70 
    8271        $query .= '     
    8372        GROUP by H.`IP`
    8473        ORDER by `id` DESC
    85         LIMIT '.(int)($params['per_page']*$params['start']).','.(int)$params['per_page'].'
    86        
     74        LIMIT '.(int)($params['per_page']*$params['start']).','.(int)$params['per_page'].'     
    8775        '   ;
     76
    8877        $result = pwg_query($query);
    8978        $liste_ip=array();
    90         while ($row = mysql_fetch_array($result,MYSQL_ASSOC))
    91                         {
    92                            array_push($liste_ip, $row);
     79        while ($row = mysql_fetch_array($result,MYSQL_ASSOC))   {
     80
     81                  array_push($liste_ip, $row);
    9382                                }
    94                                
    9583
    9684?>
  • extensions/Mail_supervisor/language/en_UK/description.txt

    r9208 r9702  
    1 This plugin limits mail emission within a defined period.
    2 Processes Warning messages of mail function (spam, bad recipient address syntax).
    3 Prevents mail emission if IP address is in the users blacklisting.
    4 Prevents connection to the site if IP address is in the users blacklisting.
    5 Checks if IP address is registered in a AntiSpam database.
     1Ce plugin limite l'envoie de mails par période paramétrable.
     2Traite les messages Warning de la fonction mail (spam, bad recipient address syntax).
     3Bloque l'émission des mails si l'adresse de IP est dans la liste des utilisateurs bloqués.
     4Empêche la connexion au site si l'adresse de IP est dans la liste des utilisateurs bloqués.
     5Test si l'adresse IP fait partie d'une base de données AntiSpammeur.
  • extensions/Mail_supervisor/language/fr_FR/description.txt

    r9208 r9702  
    1 Ce plugin limite l'envoi de mails par période paramétrable.
     1Ce plugin limite l'envoie de mails par période paramétrable.
    22Traite les messages Warning de la fonction mail (spam, bad recipient address syntax).
    3 Bloque l'émission des mails si l'adresse IP est dans la liste des utilisateurs bloqués.
    4 Empêche la connexion au site si l'adresse IP est dans la liste des utilisateurs bloqués.
    5 Teste si l'adresse IP fait partie d'une base de données AntiSpammeur.
     3Bloque l'émission des mails si l'adresse de IP est dans la liste des utilisateurs bloqués.
     4Empêche la connexion au site si l'adresse de IP est dans la liste des utilisateurs bloqués.
     5Test si l'adresse IP fait partie d'une base de données AntiSpammeur.
  • extensions/Mail_supervisor/language/fr_FR/help/plugin.lang.php

    r9397 r9702  
    77
    88//========================================================================================================
    9 $lang['Sv_Oversees_management_emails']='Supervise la gestion des mails et bloque l\' envoi des mails lors de la mise en quarantaine';   
    10 $lang['Sv_hlp_1_1']='Compte le nombre de mails envoyés par le site.';
    11 $lang['Sv_hlp_1_2']='Détecte les différents messages d\'alertes générés par la fonction mail[]';
    12 $lang['Sv_hlp_1_3']='Compte le nombre de mails considérés par le FAI comme spams.';
    13 $lang['Sv_hlp_1_4']='Mise en quarantaine si le nombre de mails envoyés est supérieur à la valeur maxi définie par période prédéterminée.';
    14 $lang['Sv_hlp_1_5']='Mise en quarantaine si le nombre de spams détectés est supérieur à la valeur maxi définie par période prédéterminée.';
    15 $lang['Sv_hlp_1_6']='Mise en quarantaine si détection de "TROP DE SPAMS" pour une période déterminée.';
     9$lang['Sv_Fonctionality']='Fonctionnalites';
     10
     11$lang['Sv_Oversees_management_emails']='Supervise la gestion des mails et bloque l\' envoie des mails lors de la mise en quarantaine'; 
     12$lang['Sv_hlp_1_1']='Compte le nombre de mails envoyes par le site.';
     13$lang['Sv_hlp_1_2']='Detecte les differents messages d\'alertes generes par la fonction mail[]';
     14$lang['Sv_hlp_1_3']='Compte le nombre de mails considere par le FAI comme spams.';
     15$lang['Sv_hlp_1_4']='Mise en quarantaine si le nombre de mails envoyes est superieur à la valeur maxi defini par periode predeterminee.';
     16$lang['Sv_hlp_1_5']='Mise en quarantaine si le nombre de spams detectes est superieur à la valeur maxi defini par periode predeterminee.';
     17$lang['Sv_hlp_1_6']='Mise en quarantaine si detection de "TROP DE SPAMS" pour une periode determinee.';
    1618//========================================================================================================
    1719$lang['Sv_Options']='Options';
    1820
    19 $lang['Sv_hlp_2_1']='Envoie une copie du mail au Webmestre.';
    20 $lang['Sv_hlp_2_2']='Modifie la structure des destinataires en copie carbone si défaut \'bad syntax\'';
    21 $lang['Sv_hlp_2_3']='Si la version Piwigo est inférieure à 2.0.5, rajoute un bloc texte dans l\'entête de mail. ';
     21$lang['Sv_hlp_2_1']='Envoie une copie du mail au Webmaster..';
     22$lang['Sv_hlp_2_2']='Modifie la structure des destnataires en copie carbonne si defaut \'bad syntax\'';
     23$lang['Sv_hlp_2_3']='Si la version piwigo est inferieur à 2.0.5, rajoute un bloc texte dans l\' entête de mail. ';
    2224
    2325//========================================================================================================
    2426$lang['Sv_Options']='Options';
    2527
    26 $lang['Sv_hlp_3_1']='Nombre d\'envois depuis la dernière remise à zéro.';
    27 $lang['Sv_hlp_3_2']='Date du premier envoi.';
    28 $lang['Sv_hlp_3_3']='Nombre d\'envois avant la mise en quarantaine.';
    29 $lang['Sv_hlp_3_4']='Durée pendant laquelle l\'envoi des mails est possible';
     28$lang['Sv_hlp_3_1']='Nombre d\' envoie depuis la dernière remise à zero.';
     29$lang['Sv_hlp_3_2']='Date du premier envoie.';
     30$lang['Sv_hlp_3_3']='Nombre d\' envois avant la mise en quarantaine.';
     31$lang['Sv_hlp_3_4']='Duree pendant laquelle l\'envoie des mails est possible';
    3032
    31 $lang['Sv_hlp_3_4_0']='<br />Valeurs acceptées : <br />
     33$lang['Sv_hlp_3_4_0']='<br />Valeurs acceptees: <br />
    3234  + n '.l10n('Week').'<br />
    3335  + n '.l10n('Day').'<br />
     
    3537  + n '.l10n('Minute').'<br />
    3638  + n '.l10n('Second').'<br />
    37 n étant le nombre de (semaine, jour, heure, minute, seconde) '
     39 n etant le nombre de (semaine,jour,heure,minute,seconde) '
    3840;
    3941
    40 $lang['Sv_hlp_3_5']='Durée restante avant la remise à zéro du compteur.';
     42$lang['Sv_hlp_3_5']='Duree restante avant la remise à zero du compteur.';
    4143
    42 $lang['Sv_state']='État';
     44$lang['Sv_state']='Etat';
    4345
    4446$lang['Sv_hlp_4_1']='Date limite de la mise en quarantaine.';
    45 $lang['Sv_hlp_4_2']='Durée restante avant l\'annulation de la mise en quarantaine.';
    46    
    47 $lang['Sv_last_message']='Dernier message renvoyé.';
    48 $lang['Sv_hlp_5_1']='Dernier message renvoyé par la fonction mail() en cas d\'erreur.';
     47$lang['Sv_hlp_4_2']='Duree restante avant l\' anulation de la mise en quarantaine.';
     48       
     49$lang['Sv_last_message']='Dernier message renvoye.';
     50$lang['Sv_hlp_5_1']='Dernier message renvoye par la fonction mail() en cas d\'erreur.';
    4951
    5052
    51 //======================================================================
    52 $lang['Sv_hlp_7_1']='Ce module permet de créer une liste noire contenant les adresses IP indésirables.<br />
    53           ' ;   
    54 $lang['Sv_hlp_7_1_1']='Option 1 Bloque l\'émission de mails si l\'adresse IP est dans la liste noire. <br />
    55           ' ;   
    56 $lang['Sv_hlp_7_1_2']='Option 2 Rejet de l\'adresse IP.<br />
    57           ' ;   
    58 $lang['Sv_hlp_7_1_3']='Option 3 À chaque nouvelle connexion, le module teste l\'adresses IP et la compare à une base de données de Spammeurs, et l\'insère automatiquement dans la liste noire si le test est positif.<br />
    59            Un compteur dans cette liste indique le nombre de tentatives de connexion.<br />
    60            Des informations sur le pays et la ville du FAI sont également stockées.<br />
    61           
    62                    ' ;   
    63 $lang['Sv_hlp_7_2']= 'Ajout manuel des adresses indésirables.<br />
    64           
    65                   Les jokers (*) pour remplacer un groupe d\'adresse  sont autorisés.<br />
    66                     Exemple : 94.102.63.* :
    67                   Exclusion de toutes les adresses IP de 94.102.63.0 à 94.102.63.255 <br />
    68                       Exemple : 94.102.*.13 :
    69                   Exclusion de toutes les adresses IP de 94.102.0.13 à 94.102.255.13 <br />
    70                  
    71         ' ;   
    72 $lang['Sv_hlp_7_3']= ' Cliquez ici pour vérifier si l\'adresse IP ou le nom de l\'utilisateur ou l\'adresse courriel introduit dans le champs texte est dans la base de donnée de stopforumspam.Les jokers ne sont pas admis. Pour plus de renseignements voir http://www.stopforumspam.com' ;   
     53//====================================================================== 
     54$lang['Sv_hlp_7_1']='Ce module permet de creer une liste noire contenant les adresses IP indesirables.<br />
     55          ' ;   
     56$lang['Sv_hlp_7_1_1']='Option 1 Bloque l\' emission de mail si l\' adresse IP est dans la liste noire. <br />
     57                  ' ;   
     58$lang['Sv_hlp_7_1_2']='Option 2 Rejet de l\' adresse IP .<br />
     59                  ' ;   
     60$lang['Sv_hlp_7_1_3']='Option 3 A chaque nouvelle connexion, le module teste l\'adresses IP et la compare à une base de donnees de Spammeurs, et l\' insere automatiquement dans la liste noire si le test est positif.<br />
     61                   Un compteur dans cette liste indique le nombre de tentative de connexion.<br />
     62                   Des informations sur le pays et la ville du FAI sont egalement stockees.<br />
     63                   
     64                                ' ;     
     65$lang['Sv_hlp_7_2']= 'Ajout manuel des adresses indesirables.<br />
     66                   
     67                                  Les jockers (*) pour remplacer un groupe d\'adresse  sont autorises.<br />
     68                                    Exemple : 94.102.63.* :
     69                                  Exclusion de toutes les adresses IP de 94.102.63.0 à 94.102.63.255 <br />
     70                                        Exemple : 94.102.*.13 :
     71                                  Exclusion de toutes les adresses IP de 94.102.0.13 à 94.102.255.13 <br />
     72                                 
     73                ' ;     
     74$lang['Sv_hlp_7_3']= ' Cliquez ici pour verifier si l\'adresse IP ou le nom de l\'utilisateur ou l\'adresse courriel introduit dans le champs texte est dans la base de donnee de stopforumspam.Les jockers ne sont pas admis. Pour plus de renseignements voir http://www.stopforumspam.com' ;
    7375
    74 $lang['Sv_hlp_7_4']= ' Si vous décidez de bloquer cette adresse, cliquez ici ou sur l\'icône \'ajout\' pour mettre à jour la liste noire.<BR />
    75    
    76 ' ;
     76$lang['Sv_hlp_7_4']= ' Si vous decidez de bloquer cette adresse cliquez ici où sur l\'icône \'ajout\' pour mettre à jour la liste noire .<BR />
     77       
     78' ;     
    7779?>
  • extensions/Mail_supervisor/language/fr_FR/plugin.lang.php

    r9208 r9702  
    55if( !isset($lang['Second'])) $lang['Second'] =   l10n('Seconde');
    66//=======================================================
     7
     8$lang['Sv_Are_you_sure'] =  'Etes-vous sûr' ;
     9$lang['Sv_no_verif'] =  'IP Non vérifié.' ;
     10$lang['Sv_delete'] =  'Supprimer' ;
    711$lang['Sv_Datas'] =  'Datas' ;
    812$lang['Sv_Group'] = $lang['Group'];
     
    2024$lang['Sv_Envoyer'] = 'Envoyer';
    2125$lang['Sv_Valider'] = 'Valider';
    22 $lang['Sv_version'] = ' Version :';
     26$lang['Sv_version'] = ' Version  :';
    2327
    2428$lang['Sv_fai'] = $lang['Sv_username'];
     
    2731$lang['Sv_no_mail_list'] = 'Bloque l\' émission de mail si l\' adresse IP est dans la liste noire.';
    2832$lang['Sv_no_connect'] = 'Empêche l\' adresse IP de se connecter au site.';
    29 $lang['Sv_set_auto'] = 'Enregistre automatiquement l\' adresse IP dans la liste noire si elle existe dans la base de données de "stopforumspam".';
    30 $lang['Sv_set_id'] = 'Lors de l\'enregistrement du nouvel utilisateur, vérifie que l\' adresse mail n\'est pas dans la base de données de "stopforumspam".';
     33$lang['Sv_set_auto'] = 'Compte le nombre de connexion dans la liste noire.';
     34$lang['Sv_set_id'] = 'Lors de l\'enregistrement du nouvel utilisateur, vérifie que l\' adresse mail n\'est pas dans la base de données de "stopforumspam" .';
    3135$lang['Sv_unset_black_list'] = 'Supprime de la liste noire';
    3236$lang['Sv_set_black_list'] = 'Mise sur la liste noire';
    33 $lang['Sv_is_a_spam'] = 'Spammeur détecté !';
    34 $lang['Sv_is_a_login_spam'] = ': Je suis désolé mais ce login est interdit !';
     37$lang['Sv_is_a_spam'] = 'Spammeur détecté!.';
     38$lang['Sv_is_a_login_spam'] = ': Je suis désolé mais ce login est interdit!.';
    3539$lang['Sv_Ajout'] = 'Ajouter à la liste noire.';
    3640
     
    4852$lang['Sv_mail_sent_to'] = 'Mail envoyé à %s.';
    4953$lang['Sv_mail_not_send'] = 'Le mail n\'a pas été envoyé.';
    50 $lang['Sv_message_to_send'] = 'Message à envoyer.';
     54$lang['Sv_message_to_send'] = 'Message a envoyer.';
    5155$lang['Sv_verifiez_les_destinataires']='Vérifiez les destinataires:';
    5256$lang['Sv_detection_de'] = 'Détection de :' ;
     
    5559$lang['Sv_Tab_help'] = 'Aide';
    5660
    57 $lang['Sv_Howto'] = 'Gestion des paramètres de surveillance d\'envoi des mails.';
     61$lang['Sv_Howto'] = 'Gestion des parametres de surveillance d\' envoie des mails.';
    5862$lang['Sv_admin_titre'] = 'Administration de '.$lang['Sv_supervisor'];
    5963$lang['Sv_admin_description'] = 'Dernier message renvoyé. ';
     
    6468$lang['Sv_check_header_text'] = 'Ajouter un bloc "texte" dans l\'entête du mail.';
    6569
    66 $lang['Sv_admin'] = 'Exclure l\'administrateur des envois.';
    67 $lang['Sv_guest'] = 'Exclure le guest des des envois.';
     70$lang['Sv_admin'] = 'Exclure l\'administrateur des envoies.';
     71$lang['Sv_guest'] = 'Exclure le guest des des envoies.';
    6872
    6973$lang['Sv_periode'] = 'Période';
  • extensions/Mail_supervisor/main.inc.php

    r8917 r9702  
    22/*
    33Plugin Name: Mail supervisor
    4 Version: 1.4.4 Beta
     4Version: auto
    55Description: Mail supervisor surveille l'envoie des mails.
    66Plugin URI: http://piwigo.org/ext/extension_view.php?eid=315
     
    99*/
    1010if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
    11 if (!defined('MAIL_SUPERV_DIR')) define('MAIL_SUPERV_DIR' , basename(dirname(__FILE__)));
     11if (!defined('mail_superv_DIR')) define('mail_superv_DIR' , basename(dirname(__FILE__)));
    1212if (!defined('MAIL_SUPERV_PATH')) define('MAIL_SUPERV_PATH' , PHPWG_PLUGINS_PATH.basename(dirname(__FILE__)).'/');
     13$MAIL_SUPERV_PATH_ABS=str_replace('\\','/',dirname(__FILE__) );
     14if (!defined('MAIL_SUPERV_PATH_ABS')) define(  'MAIL_SUPERV_PATH_ABS',   $MAIL_SUPERV_PATH_ABS."/");
     15global $conf,$mails_options ;
    1316include_once (MAIL_SUPERV_PATH.'include/constants.php');
    14 
    15 /* EVENT_HANDLER_PRIORITY_NEUTRAL  */
    16 
    17  global $conf ;
    18 add_event_handler('send_mail', 'clj_mail',EVENT_HANDLER_PRIORITY_NEUTRAL - 1 , 6);
    19 function clj_mail($result, $mailto, $subject, $content, $headers, $args)
    20 {
    21     global $conf, $user, $lang_info,  $conf_mail,$mails_options,$mails_donnees , $template,$page ,$erreur_message,$infos_message, $lang;
     17include_once(MAIL_SUPERV_PATH.'mail_super.inc.php');
     18$mail_supervisor = new mail_supervisor();
     19add_event_handler('get_admin_plugin_menu_links', array(&$mail_supervisor,'admin_menu')  );
     20
     21$mails_options = mail_supervisor::Get_Options($mails_options,"mail_superv");
     22/* EVENT_HANDLER_PRIORITY_NEUTRAL  */   
     23//
     24//
     25include_once (MAIL_SUPERV_PATH.'include/fonctions.php'); 
     26//===============loc_begin_index==============loc_after_page_header=============================================================
     27add_event_handler('loc_after_page_header',  array(&$mail_supervisor,'init')  );
     28add_event_handler('loc_begin_page_tail',  array(&$mail_supervisor,'affiche_message')  );
     29
     30//==========================================================================================
     31add_event_handler('send_mail', 'clj_mail',EVENT_HANDLER_PRIORITY_NEUTRAL - 10, 6);
     32function clj_mail($result, $mailto, $subject, $content, $headers, $args) {
     33    global $conf, $user, $lang_info; 
     34    global $conf_mail,$mails_options,$mails_donnees ;
     35    global  $template,$page ,$erreur_message,$infos_message, $lang;
     36    global $errors;
     37 
    2238        // lecture config table -------------
    23          include_once (MAIL_SUPERV_PATH.'include/fonctions.php');
    24      load_language('plugin.lang', MAIL_SUPERV_PATH);
    25          
    26          if (isset($_POST["Submit"]) )
    27          {
    28          if ($_POST["Submit"] != l10n('Sv_Envoyer') ) return true ;
    29          }
    30         $message ="";
    31         if (!isset($infos_message))
    32         {
    33         $infos_message = "";
    34         }
    35 if (!isset($erreur_message))
    36         {
    37         $erreur_message = '';
    38         }       
    39          $mails_options = explode("," , $conf['mail_superv']);
     39          include_once (MAIL_SUPERV_PATH.'include/fonctions.php');
     40   load_language('plugin.lang', MAIL_SUPERV_PATH);
     41         if (isset($_POST["Submit"]) ) {
     42            if ($_POST["Submit"] != l10n('Sv_Envoyer') ) return true ;
     43         } 
     44   // remove_event_handler('send_mail', 'pwg_send_mail');
     45     
     46           $message ="";
     47    if (!isset($infos_message)) {       $infos_message = "";    }
     48    if (!isset($erreur_message))        {       $erreur_message = '';   }       
     49   
     50   // $mails_options = explode("," , $conf['mail_superv']);
     51    $envoie_ok=true ;
    4052//======== verification si envoie de mail ou blocage connexion =====================
    41         if ($mails_options[no_mail_list]=='on' || $mails_options[no_connect] == 'on' )
    42         {
    43                 if (kill_list())
    44                  {
    45                   $erreur_message .= "<BR />".l10n('Sv_is_a_spam') ;
    46                  if ($mails_options[no_connect] == 'on' ){
    47                   if ($user['status'] == 'webmaster'  )
    48                         { 
     53
     54        if ($mails_options['no_mail_list']=='on' || $mails_options['no_connect'] == 'on' )      {
     55                if (kill_list()) {
     56      $nb_destinataires=0; ;
     57      $envoie_ok= false ;
     58      $erreur_message .= "<BR />".l10n('Sv_is_a_spam') ;
     59      $infos_message = l10n('Sv_mail_not_send')."<BR />";
     60                   if ($mails_options['no_connect'] == 'on' ){
     61                   if ($user['status'] == 'webmaster'  )                { 
    4962                          //---------- continuer si web master ----------
    50                         }else{
     63
     64                          }else{
    5165                                  if (!isset($_GET['admin'])) {
    5266                                                 die('Blacklist : <br />' .$erreur_message. '<br /> Hacking attempt!');
     
    5569                                                 die('blacklist Hacking attempt!');
    5670                                        }
    57                       return true;
     71                     
    5872                          }
    5973                         
    6074                        }
    61                        
    62                  }
     75
     76         return true;
     77                }
    6378        }
    64        
    65 
    6679        // lecture donnees       -------------
    67     $mails_donnees = Get_Datas();
     80 $mails_donnees = mail_supervisor::Get_Datas();
    6881 
    6982        $nb_mails         =     $mails_donnees['nb_mails'] ;
     
    91104       
    92105 
    93  if ( ( !$alerte  && !$alerte_spam  && !$alerte_mail ) )
    94         {
    95                  
    96   $nb_destinataires=0;
    97                 if ($mails_options[check_mailto] == 'on') {
    98                         if ($mailto == "" )     $mailto = $conf_mail['email_webmaster'];
    99                 }   
    100  if ($mailto<>"" )            $nb_destinataires +=1;
    101 
    102                 if (!empty($args['Bcc'])) { $nb_destinataires += count($args['Bcc']);   }
    103                 if (!empty($args['Cc']))  {     $nb_destinataires += count($args['Cc']);        }
     106    if ( ( !$alerte  && !$alerte_spam  && !$alerte_mail ) ) {           
     107            $nb_destinataires=0;
     108                    if ($mails_options['check_mailto'] == 'on') {
     109                            if ($mailto == "" ) $mailto = $conf_mail['email_webmaster'];
     110                    }   
     111            if ($mailto<>"" )            $nb_destinataires +=1;
     112                    if (!empty($args['Bcc'])) { $nb_destinataires += count($args['Bcc']);       }
     113                    if (!empty($args['Cc']))  { $nb_destinataires += count($args['Cc']);        }
    104114
    105115   
    106         $infos_message .= "<hr> Theme :" . ($args['theme'] ) ."<br />";
    107     $infos_message .="nombre de destinataire:".$nb_destinataires." <br />" ;
    108 
    109    //================= reecriture de l'entete ===============================
    110     $match=array("<",">");
    111     $string=array("&lt;","&gt;") ;     
     116                $infos_message .= "<hr> Theme :" . ($args['theme'] ) ."<br />";
     117            $infos_message .="nombre de destinataire:".$nb_destinataires." <br />" ;
     118
     119           //================= reecriture de l'entete ===============================
     120            $match=array("<",">");
     121            $string=array("&lt;","&gt;") ;     
    112122       
    113 if ( $nb_destinataires  == 1 && $mailto != "" )
    114         {   
    115     $infos_message .="--> Mailto: " . $mailto." \n" ;
     123            if ( $nb_destinataires  == 1 && $mailto != "" )
     124                    {   
     125                    $infos_message .="--> Mailto: " . $mailto." \n" ;
    116126   
    117                 if ($mailto != "" )
    118                   {
    119 
    120                  $mailto  = $mailto ." \n"   ;
    121                 $headers =  preg_replace('/.*Bcc(.*).\n/i', '', $headers);
    122                                 $headers =  preg_replace('/.*Cc(.*).\n/i', '', $headers);
     127                            if ($mailto != "" )
     128                                {
     129
     130                            $mailto  = $mailto ." \n"   ;
     131                            $headers =  preg_replace('/.*Bcc(.*).\n/i', '', $headers);
     132                                            $headers =  preg_replace('/.*Cc(.*).\n/i', '', $headers);
    123133               
    124134                       
    125                   }
    126      //=============================================================================
     135                                }
     136                    //=============================================================================
    127137             
    128138           
    129                 if (!empty($args['Bcc']) ) $infos_message .="Bcc: " . memo_var($args['Bcc']) ." \n";
    130                 if (!empty($args['Cc']) ) $infos_message .="Cc: " . memo_var($args['Cc'])." \n" ;
    131                 $infos_message .="Mailto: [" . $mailto . "]"." \n".$headers;             
     139                            if (!empty($args['Bcc']) ) $infos_message .="Bcc: " . mail_supervisor::Memo_Var($args['Bcc']) ." \n";
     140                            if (!empty($args['Cc']) ) $infos_message .="Cc: " . mail_supervisor::Memo_Var($args['Cc'])." \n" ;
     141                            $infos_message .="Mailto: [" . $mailto . "]"." \n".$headers;             
    132142         
    133         }else{
    134 //=== plusieurs destinataires ===========
    135 $cl_list_mail="";
    136 
    137   if ($mailto !="") $infos_message .="To: " . $mailto . " "." /n" ;     
    138         if (!empty($args['Cc'])) {
    139         $ret= corrige_header('Cc',$headers,$args,$cl_list_mail);
    140           $headers = $ret->headers;
    141           $infos_message .="Cc: " .  ( $ret->list_mail)."  <br />" ;
    142         }
    143         if (!empty($args['Bcc'])){
    144            $ret = corrige_header('Bcc',$headers,$args,$cl_list_mail);
     143                    }else{
     144                    //=== plusieurs destinataires ===========
     145                    $cl_list_mail="";
     146
     147                    if ($mailto !="") $infos_message .="To: " . $mailto . " "." /n" ;     
     148                    if (!empty($args['Cc'])) {
     149                    $ret= corrige_header('Cc',$headers,$args,$cl_list_mail);
     150                        $headers = $ret->headers;
     151                        $infos_message .="Cc: " .  ( $ret->list_mail)."  <br />" ;
     152                    }
     153                    if (!empty($args['Bcc'])){
     154                        $ret    = corrige_header('Bcc',$headers,$args,$cl_list_mail);
    145155         
    146            $headers = $ret->headers ;
    147            $infos_message .="Bcc: " . ( $ret->list_mail) ."  <br />";
    148         }
     156                        $headers = $ret->headers ;
     157                        $infos_message .="Bcc: " . ( $ret->list_mail) ."  <br />";
     158                    }
    149159     
    150         $infos_message .=  " " ;
    151 }
    152 // $infos_message .= $content ;
    153 //=============================================================================
    154 if ($mails_options[check_header_text]=='on')   {
    155 
    156         $texte = "This is a multi-part message in MIME format.\n";
    157        
    158         $texte .= "-----=".$conf_mail['boundary_key']."\n";
    159         $texte .= "Ceci est un message est au format MIME.\n";
    160         $texte .= 'Content-Type: text/plain; charset="UTF-8"'."\n";
    161         $texte .= 'Content-Transfer-Encoding: 8bit'."\n\n"; 
    162         $texte .= $mails_donnees['header_text']; // A voir texte brut...
    163            
    164                 $texte .= "\n\n";
    165        
    166                 $content =$texte .$content ;
    167 }
    168  
    169 $ret=false;
    170 
    171             //======== Non mise en quarantaine =============
    172                 ob_start();
    173                 $ret = false;
    174                  if ($nb_destinataires > 0) {
    175                  // corrige erreur 'mail dropped, bare LF found'
    176                  $content = str_replace("\n.", "\n..", $content);
    177                  $headers = str_replace("\n.", "\n..", $headers);
    178                  $subject = str_replace("\n.", "\n..", $subject);
    179                  $mailto = str_replace("\n.", "\n..", $mailto);
    180              $ret = mail($mailto, $subject, $content, $headers);
    181        
    182                         }else{
    183                            $message .= l10n('Sv_no_receiver_available');
    184                         }
    185                         $message .= ob_get_contents();
    186             ob_end_clean();
    187                         $mails_donnees['message']=$message;     
    188                         Gestion_erreurs($message,$ret,$nb_destinataires,$headers,$mailto);
    189                
    190        
    191        
    192         } else {
    193 
    194         //================== Est en quarantaine =======================
    195                 $erreur_message .=      l10n('Sv_To_day_is')."<br />";
    196                         if ($alerte_spam ) {
    197                         $type="Spams";
    198                                
    199                                 $d1=$mails_donnees['nb_spams'] . '  \\  ' . $mails_donnees['nb_spams_maxi'];
    200                                 $d2=$mails_donnees['nb_spams'];
    201                                 $d3= $mails_donnees['rest_spam'];
    202                                 $d4=time()+$d3 ;
    203                         }
    204  
    205                         if ($alerte_mail) {
    206                         $type="Mails";
    207                        
    208                                 $d1=$mails_donnees['nb_mails']. '  \\  ' . $mails_donnees['nb_mails_maxi'];;
    209                                 $d2=$mails_donnees['date_mail'];
    210                                 $d3= $mails_donnees['rest_mail'];
    211                                 $d4=time()+$d3 ;
    212                                
    213                                
    214                         }
    215                         if ($alerte) {
     160                    $infos_message .=  " " ;
     161            }
     162            // $infos_message .= $content ;
     163            //=============================================================================
     164            if ($mails_options['check_header_text']=='on')   {
     165              $texte = "This is a multi-part message in MIME format.\n";       
     166              $texte .= "-----=".$conf_mail['boundary_key']."\n";
     167              $texte .= "Ceci est un message est au format MIME.\n";
     168              $texte .= 'Content-Type: text/plain; charset="UTF-8"'."\n";
     169              $texte .= 'Content-Transfer-Encoding: 8bit'."\n\n"; 
     170              $texte .= $mails_donnees['header_text']; // A voir texte brut...     
     171              $texte .= "\n\n";         
     172              $content =$texte .$content ;
     173            }
     174 
     175            $ret=false;
     176                //======== Non mise en quarantaine =============
     177                    ob_start();
     178                    $ret = false;
     179                      if ($nb_destinataires > 0) {
     180                         // corrige erreur 'mail dropped, bare LF found'
     181                         $content = str_replace("\n.", "\n..", $content);
     182                         $headers = str_replace("\n.", "\n..", $headers);
     183                         $subject = str_replace("\n.", "\n..", $subject);
     184                         $mailto = str_replace("\n.", "\n..", $mailto);
     185                if( $envoie_ok)  $ret = mail($mailto, $subject, $content, $headers);
     186       
     187                          }else{
     188                               $message .= l10n('Sv_no_receiver_available');
     189                          }
     190                            $message .= ob_get_contents();
     191                ob_end_clean();
     192                            $mails_donnees['message']=$message;
     193                            Gestion_erreurs($message,$ret,$nb_destinataires,$headers,$mailto);
     194            } else {
     195                    //================== Est en quarantaine =======================     
     196                        $erreur_message .=      l10n('Sv_To_day_is')."<br />";
     197                            if ($alerte_spam ) {
     198                                $type="Spams";                         
     199                                        $d1=$mails_donnees['nb_spams'] . '  \\  ' . $mails_donnees['nb_spams_maxi'];
     200                                        $d2=$mails_donnees['nb_spams'];
     201                                        $d3= $mails_donnees['rest_spam'];
     202                                        $d4=time()+$d3 ;
     203                            } 
     204                            if ($alerte_mail) {
     205                    $type="Mails";                     
     206                    $d1=$mails_donnees['nb_mails']. '  \\  ' . $mails_donnees['nb_mails_maxi'];;
     207                    $d2=$mails_donnees['date_mail'];
     208                    $d3= $mails_donnees['rest_mail'];
     209                    $d4=time()+$d3 ;
     210                            }
     211                            if ($alerte) {
    216212                        $type="Spams(Quarantaine)";
    217                                 $d1=$mails_donnees['nb_spams'] . '  \\  ' . $mails_donnees['nb_spams_maxi'];
    218                                 $d2=$mails_donnees['date_quarantaine'];
    219                                 $d3= $mails_donnees['reste'];
    220                                 $d4=time()+$d3 ;
    221                         }
    222 
    223 
    224 $d2=date(l10n('Sv_formatdate'),$d2);
    225 $d3=int_to_heure($d3) ;
    226 $d4=date(l10n('Sv_formatdate'),$d4);
    227 
    228         if ($alerte_mail) {
    229               $erreur_message .='<br />'.sprintf(l10n('Sv_alerte_mail %s %s %s %s %s'),$type,$d1,$d2,$d3,$d4).'<br />';
    230                 }else{
    231                            $erreur_message .='<br />'.sprintf(l10n('Sv_mise_en_quarantaine %s %s %s %s %s'),$type,$d1,$d2,$d3,$d4).'<br />';
    232 
    233                 }
    234  $infos_message .= l10n('Sv_mail_not_send');
    235  
    236  }                     
    237  sauve_donnees();
    238  return true ;
     213                                    $d1=$mails_donnees['nb_spams'] . '  \\  ' . $mails_donnees['nb_spams_maxi'];
     214                                    $d2=$mails_donnees['date_quarantaine'];
     215                                    $d3= $mails_donnees['reste'];
     216                                    $d4=time()+$d3 ;
     217                            }
     218            $d2=date(l10n('Sv_formatdate'),$d2);
     219            $d3=int_to_heure($d3) ;
     220            $d4=date(l10n('Sv_formatdate'),$d4);
     221            if ($alerte_mail) {
     222                    $erreur_message .='<br />'.sprintf(l10n('Sv_alerte_mail %s %s %s %s %s'),$type,$d1,$d2,$d3,$d4).'<br />';
     223            }else{
     224                        $erreur_message .='<br />'.sprintf(l10n('Sv_mise_en_quarantaine %s %s %s %s %s'),$type,$d1,$d2,$d3,$d4).'<br />';
     225            }
     226            $infos_message .= l10n('Sv_mail_not_send');
     227            }                   
     228    mail_supervisor::sauve_donnees();
     229    mail_supervisor::affiche_message();
     230    return true ;
    239231}
    240232//===========================================================================================   
    241 function Gestion_erreurs($message,$ret,$nb_destinataires,$headers,$mailto)
    242 {                       
     233function Gestion_erreurs($message,$ret,$nb_destinataires,$headers,$mailto){                     
    243234         global $conf, $user,  $conf_mail,$mails_options,$mails_donnees , $template,$page ,$infos_message,$erreur_message,$args,$lang, $lang_info;
    244 
    245          
    246          
    247     $match=array("<",">");
     235     $match=array("<",">");
    248236    $string=array("&lt;","&gt;") ;       
    249237//Warning: mail() has been disabled for security reasons
     
    266254        $headers ,
    267255        $nb_destinataires );
    268        //=============== La fonction mail   retourneeune erreur =========================               
    269 
    270                                
     256       //=============== La fonction mail retourne une erreur =========================         
    271257                                }       
    272258                               
     
    288274                                                $mails_donnees['date_quarantaine']= time()  ;   
    289275                                                $mails_donnees['quarantaine']= true    ;       
    290                                                 $infos_message .=memo_var($mails_donnees);
     276                                                $infos_message .= mail_supervisor::Memo_Var($mails_donnees);
    291277                                        }
    292 
    293278                        }
    294279 $ret=true;
    295  return $ret ;
    296  
     280 return $ret ;
    297281}
    298 
    299 //==========================================================================================
    300 add_event_handler('get_admin_plugin_menu_links', 'admin_menu');
    301 function admin_menu($menu)
    302 {
    303     array_push($menu, array('NAME' => 'Mail_Superv',
    304       'URL' => get_admin_plugin_menu_link(MAIL_SUPERV_PATH . 'admin/mail_superv_admin.php')));
    305     return $menu;
    306 }
    307 //==========================================================================================
    308 add_event_handler('loc_after_page_header','affiche_spam' );//
    309 function affiche_spam ()
    310 
    311 {
    312 include_once (MAIL_SUPERV_PATH.'include/fonctions.php');
    313 
    314   affiche_message();
    315    
    316 }
    317     include_once (MAIL_SUPERV_PATH.'include/fonctions.php');
    318         $mails_options = explode("," , $conf['mail_superv']);
    319 
    320 //==========================================================================================
    321 if ($mails_options[set_id]=='on'  ) {
    322  add_event_handler('register_user_check', 'Test_spam_g', EVENT_HANDLER_PRIORITY_NEUTRAL +2  , 2);
    323  }
    324 function Test_spam_g ($err, $user)
    325 {
    326 
    327 if (count($err)!=0 ) return $err ;
    328 if ( !isset($_POST['submit_add']) && !isset($_POST['submit'])  ) return $err ;
    329 //Liableelard
    330 include_once (MAIL_SUPERV_PATH.'include/fonctions.php');
    331 
    332 if ( isset($_POST['submit'])) {
    333         $mail  =  $_POST['mail_address'] ;
    334         $user_name = $_POST['login'] ;
    335 }else{
    336         $mail  = $user['email'];
    337         $user_name = $user['username'];
    338 }
    339  $user_name =""; // suppression du test sur user name.
    340  $ip='0';
    341  
    342                 if (test_spam($ip,$user_name ,$mail ))
    343                  {
    344                  //if (test_spam($ip,$user_name ,"" )) {
    345                  // $err[] = $user_name . " ". l10n('Sv_is_a_login_spam')   ;
    346                 // }else                 
    347                     $err[] = $user_name . " : " .$mail . " ". l10n('Sv_is_a_spam')   ;
    348                  }
    349                  
    350 return $err ;
    351 }
    352 
    353 
    354282?>
  • extensions/Mail_supervisor/maintain.inc.php

    r7050 r9702  
    2121// | USA.                                                                  |
    2222// +-----------------------------------------------------------------------+
    23 if  (!defined('PHPWG_ROOT_PATH')) 
    24 {
    25   die('Hacking attempt!');
    26 }
     23if  (!defined('PHPWG_ROOT_PATH')) {  die('Hacking attempt!');}
    2724if (!defined('MAIL_SUPERV_PATH')) define('MAIL_SUPERV_PATH' , PHPWG_PLUGINS_PATH.basename(dirname(__FILE__)).'/');
    2825 include_once (MAIL_SUPERV_PATH.'include/constants.php');
    29 
    30 
    31 function plugin_install()
    32 {
    33 global $conf ;
    34  if ( !isset($conf['mail_superv']) )
    35  {
     26 
     27function plugin_install(){
     28  global $conf ;
     29   if ( !isset($conf['mail_superv']) ){
    3630    plugin_uninstall() ;
    37     $query = '
    38     INSERT INTO '.CONFIG_TABLE.' (param, value, comment)
    39     VALUES ("mail_superv","off,off,off,off,off,on,127.0.0.1,on ,?? ,?? ","Parametres du plugin Mail superviseur")
    40     ;';
     31    $my_para['check_mailto']="on";
     32    $my_para['check_header_carbon']="on";
     33    $my_para['check_header_text']="on";
     34    $my_para['no_mail_list']="on";
     35    $my_para['no_connect']="off";       // empeche l'ip de se connecter au site.
     36    $my_para['set_auto']="on";          // Test a l'ouverture et enregistrement
     37    $my_para['ip']="127.0.0.1";         // dernièrre adresse IP
     38    $my_para['set_id']="on";              // enregistrment nouvel 
     39    $mails_values=  addslashes(serialize($my_para));
     40    $query = 'INSERT INTO '.CONFIG_TABLE.' (param, value, comment)
     41    VALUES ("mail_superv", "'.$mails_values.'" ,"Parametres du plugin Mail superviseur");';
    4142    pwg_query($query);
    42         //==================================================================
    43        
    44  }
    45 
     43  }
    4644}
    47 
    48 
    49 
    50 function plugin_uninstall()
    51 {
    52 
     45function plugin_uninstall(){
    5346    $query = '
    5447      DELETE FROM '.CONFIG_TABLE.'
     
    5851    $query = 'DROP TABLE IF EXISTS  '.MAIL_BLACK_LISTE_TABLE.';';
    5952    pwg_query( $query ); 
    60     $query = 'DROP TABLE IF EXISTS  '.MAIL_SUPERV_TABLE.';';
    61     pwg_query( $query);
    62    
    63  
     53    $query = 'DROP TABLE IF EXISTS  '.mail_superv_TABLE.';';
     54    pwg_query( $query); 
    6455}
    6556
    66 function plugin_activate()
    67 {
     57function plugin_activate(){
    6858include_once (MAIL_SUPERV_PATH.'include/fonctions.php');
    6959 verif_base() ;
    7060}
    7161
    72 function plugin_deactivate()
    73 {
     62function plugin_deactivate(){
    7463
    7564}
Note: See TracChangeset for help on using the changeset viewer.