source: extensions/Mail_supervisor/include/save_info.php @ 4156

Last change on this file since 4156 was 4156, checked in by cljosse, 14 years ago

[mail_supervisor] update design black list

File size: 3.3 KB
Line 
1<?php
2
3
4//=======================================================================================
5
6
7if (!defined('MAIL_SUPERV_PATH')) define('MAIL_SUPERV_PATH' , PHPWG_PLUGINS_PATH.basename(dirname(__FILE__)).'/');
8
9//include_once( PHPWG_ROOT_PATH.'include/common.inc.php' );
10include_once (MAIL_SUPERV_PATH.'include/constants.php'); 
11include_once (MAIL_SUPERV_PATH.'include/fonctions.php'); 
12
13    $info_ip = (isset($info_ip)) ? $info_ip : '' ;
14    $info_ip = (isset($_POST['info1'])) ? $_POST['info1'] : $info_ip ;
15    $info_ip = (isset($_POST['info'])) ? $_POST['info'] : $info_ip ;
16    $info_ip .= ":";
17 
18   $val=explode(":",$info_ip);
19   $info_ip = trim($val[0]) ;
20   $ip_black = trim($val[1]) ;
21 
22  if (isset($_POST['ip_black']))
23   $ip_black = ($ip_black == "" ) ? $_POST['ip_black'] : $ip_black ;
24global $n ;
25
26
27 
28switch ($info_ip)
29 {
30
31  case 'ajout':
32  $n +=1;
33//echo " |$n] ". (( isset($_POST['info']) ) ? " POST  :".$_POST['info'] : "" ).(( isset($_POST['info1']) ) ? " POST   1 :".$_POST['info1'] : "" )."|";   
34 
35 if (!($ip_black == '')) {
36    create_table(MAIL_BLACK_LISTE_TABLE,$superv_bl_champs,$superv_bl_type) ;
37        ajust_table(MAIL_BLACK_LISTE_TABLE,$superv_bl_champs,$superv_bl_type)  ;
38   $query = "
39                SELECT COUNT(`id`) as total
40                FROM `".MAIL_BLACK_LISTE_TABLE."`
41                    WHERE ip = '".$ip_black."'
42                ;";     
43
44               
45//==============================================================================               
46list($count) = mysql_fetch_row(pwg_query($query));
47//==============================================================================               
48        $valeurs=array( 'NULL',
49                            "'".$ip_black."'",
50                                        '"pays"',
51                                        '"region"',             
52                                        '"ville"',     
53                                        '"adresse"',
54                                        '"fai" ',
55                                        $count + 1
56        );
57        ajout_ligne(MAIL_BLACK_LISTE_TABLE,$superv_bl_champs, $valeurs,($count==0)) ;   
58 }
59 
60 break;
61 //================================================================================================
62  case 'raz':
63        $ip_black=str_replace('*',"%",$ip_black);
64                $query = "DELETE FROM `".MAIL_BLACK_LISTE_TABLE."` WHERE `ip` like '%".$ip_black."%'  ";
65                        pwg_query($query);
66   break;
67   
68    default:
69
70
71                               
72   break;
73   
74  } 
75//================ Liste Black liste =================
76  create_table(MAIL_BLACK_LISTE_TABLE,$superv_bl_champs,$superv_bl_type) ;
77
78  $query = "
79    SELECT *,  COUNT(`ip`) as total ,   `ip` as blacklist, `ip` as U_DELETE
80 
81    FROM ".MAIL_BLACK_LISTE_TABLE."
82                GROUP by ip
83        ;";
84        $liste_bl = array();
85    $result = pwg_query($query);
86                while ($row = mysql_fetch_array($result,MYSQL_ASSOC))
87                        {
88                         array_push($liste_bl,$row);
89                                }
90//================ Liste IP ==============                     
91             $query = '
92    SELECT DISTINCT     H.`id`,
93        H.`date`,
94        H.`time`,
95        H.`user_id`,
96        H.`IP`,
97        COUNT(H.`IP`) as total 
98    FROM '.HISTORY_TABLE.'  AS H
99        WHERE H.`IP` not LIKE "'.$_SERVER['REMOTE_ADDR'].'"
100        ';//
101        if (count($liste_bl)>0)
102         {
103        $query .= '
104        AND  H.`IP` not IN (     SELECT `ip`
105    FROM '.MAIL_BLACK_LISTE_TABLE.' ) ';
106        }
107       
108        $query .= '
109       
110        GROUP by H.`IP` ;
111       
112        ;'  ;//
113        $result = pwg_query($query);
114        $liste_ip=array();
115        while ($row = mysql_fetch_array($result,MYSQL_ASSOC))
116                        {
117                           array_push($liste_ip, $row);
118                                }
119                               
120
121
122
123
124
125
126?>
Note: See TracBrowser for help on using the repository browser.