source: extensions/Mail_supervisor/admin/mail_superv_admin.php @ 4054

Last change on this file since 4054 was 4054, checked in by cljosse, 15 years ago

[mail_supervisor] new gestion of copy carbon

File size: 12.3 KB
Line 
1<?php
2// +-----------------------------------------------------------------------+
3// | Piwigo - a PHP based picture gallery                                  |
4// +-----------------------------------------------------------------------+
5// | Copyright(C) 2008-2009 Piwigo Team                  http://piwigo.org |
6// | Copyright(C) 2003-2008 PhpWebGallery Team    http://phpwebgallery.net |
7// | Copyright(C) 2002-2003 Pierrick LE GALL   http://le-gall.net/pierrick |
8// +-----------------------------------------------------------------------+
9// | This program is free software; you can redistribute it and/or modify  |
10// | it under the terms of the GNU General Public License as published by  |
11// | the Free Software Foundation                                          |
12// |                                                                       |
13// | This program is distributed in the hope that it will be useful, but   |
14// | WITHOUT ANY WARRANTY; without even the implied warranty of            |
15// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU      |
16// | General Public License for more details.                              |
17// |                                                                       |
18// | You should have received a copy of the GNU General Public License     |
19// | along with this program; if not, write to the Free Software           |
20// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, |
21// | USA.                                                                  |
22// +-----------------------------------------------------------------------+
23
24if ( !defined('PHPWG_ROOT_PATH')) 
25{
26  die('Hacking attempt!');
27}
28if (!defined('MAIL_SUPERV_DIR')) define('MAIL_SUPERV_DIR' , basename(dirname(__FILE__)));
29if (!defined('MAIL_SUPERV_PATH')) define('MAIL_SUPERV_PATH' , PHPWG_PLUGINS_PATH.basename(dirname(__FILE__)).'/');
30
31
32
33
34
35// +-----------------------------------------------------------------------+
36// | Check Access and exit when user status is not ok                      |
37// +-----------------------------------------------------------------------+
38check_status(ACCESS_ADMINISTRATOR);
39
40global $user, $lang, $conf, $errors,$mails_données;
41global $args, $conf_mail,$infos_message,$erreur_message ;
42
43include_once (PHPWG_ROOT_PATH.'admin/include/tabsheet.class.php');
44include_once(PHPWG_ROOT_PATH.'admin/include/functions.php');
45
46
47include_once (MAIL_SUPERV_PATH.'include/constants.php'); 
48include_once (MAIL_SUPERV_PATH.'include/fonctions.php'); 
49
50$my_base_url = get_admin_plugin_menu_link(__FILE__);
51
52
53
54 load_language('plugin.lang', MAIL_SUPERV_PATH);
55 
56$mails_options = explode("," , $conf['mail_superv']);
57$mails_données=Get_Datas();
58
59        if (!isset($_GET['tab']))
60        $page['tab'] = 'mail_superv_admin';
61else
62  $page['tab'] = $_GET['tab'];
63
64$tabsheet = new tabsheet();
65$tabsheet->add('mail_superv_admin',
66               l10n('Tab_set'),
67               $my_base_url.'&amp;tab=mail_superv_admin');
68$tabsheet->add('mail_superv_test',
69               l10n('Tab_test'),
70               $my_base_url.'&amp;tab=mail_superv_test');
71$tabsheet->add('mail_superv_help',
72               l10n('Tab_help'),
73               $my_base_url.'&amp;tab=mail_superv_help');
74$tabsheet->select($page['tab']);
75$tabsheet->assign();
76
77$page['global'] = array();
78$error = array();
79
80vérif_base();
81
82$aff_nb=true;
83
84
85// *************************************************************************
86// |                          Sélection de l'onglet                        |
87// *************************************************************************
88
89                $modif=false ;
90//================================================================================
91switch ($page['tab'])
92 {
93   
94// *************************************************************************
95//                         initialisation                                  |
96// *************************************************************************
97  case 'mail_superv_admin':
98
99//=============================================================
100if ( isset($_POST['refresh']) ) {
101         
102 
103        }
104
105if ( isset($_POST['raz']) ) {
106        $mails_données['date_quarantaine']=time();
107        $mails_données['nb_mails'] = 0  ;
108        $mails_données['nb_spams'] = 0  ;
109        $mails_données['date_mail'] = time();
110        $mails_données['date_spam'] = time();
111       
112        $mails_données['reste'] = 0;
113       
114        $mails_données['quarantaine']=false;
115       
116     sauve_données();
117         array_push($page['infos'], l10n('save_config'));
118        }
119       
120if ( isset($_POST['submit']) )
121{
122//Options
123  $mails_options[0] = isset($_POST['check_mailto']) ? $_POST['check_mailto'] : '' ;
124  $mails_options[1] = isset($_POST['check_header_carbon']) ? $_POST['check_header_carbon'] : '' ;
125  $mails_options[2] = isset($_POST['check_header_text']) ? $_POST['check_header_text'] : '' ;
126  $mails_options[3] = isset($_POST['mail_superv_admin']) ? $_POST['mail_superv_admin'] : '' ;
127  $mails_options[4] = isset($_POST['superv_guest']) ? $_POST['superv_guest'] : '' ;
128 
129//données 
130$mails_données['nb_mails_maxi'] = isset($_POST['nb_mails_maxi']) ? $_POST['nb_mails_maxi'] :  $mails_données['nb_mails_maxi']  ;
131$mails_données['nb_mails_periode'] = isset($_POST['nb_mails_periode']) ? $_POST['nb_mails_periode'] :  $mails_données['nb_mails_periode']  ;
132$mails_données['nb_spams_maxi'] = isset($_POST['nb_spams_maxi']) ? $_POST['nb_spams_maxi'] :  $mails_données['nb_spams_maxi']  ;
133$mails_données['nb_spams_periode'] = isset($_POST['nb_spams_periode']) ? $_POST['nb_spams_periode'] :  $mails_données['nb_spams_periode']  ;
134$mails_données['quarantaine_periode'] = isset($_POST['quarantaine_periode']) ? $_POST['quarantaine_periode'] :  $mails_données['quarantaine_periode']  ;
135
136$mails_données['message'] = isset($_POST['content']) ? $_POST['content'] :  $mails_données['message']  ;
137$mails_données['header_text'] = isset($_POST['header_text']) ? $_POST['header_text'] :  $mails_données['header_text']  ;
138  //===========================================================================================================
139         sauve_options();
140
141   //==============================================================================================
142         sauve_données();
143         
144   //===========================================================================================================
145
146array_push($page['infos'], l10n('save_config'));
147
148}
149
150$mails_données = Get_Datas() ;
151
152        $rest_mail= $mails_données['rest_mail'];       
153        $rest_spam= $mails_données['rest_spam'];       
154    $reste= $mails_données['reste'];   
155
156$quarantaine= $mails_données['quarantaine'];   
157
158       
159
160$template->assign(
161                                        array(
162   'check_mailto' => $mails_options[0] == 'on' ? 'checked="checked"' : '' ,
163   'check_header_carbons' => $mails_options[1] == 'on' ? 'checked="checked"' : '' ,
164   'check_header_text' => $mails_options[2] == 'on' ? 'checked="checked"' : '' ,
165   'free_admin' => $mails_options[3] == 'on' ? 'checked="checked"' : '' ,
166   'free_guest' => $mails_options[4] == 'on' ? 'checked="checked"' : '' ,
167   
168        'nb_mails' => $mails_données['nb_mails'] ,
169        'date_mail' => "'".date(l10n('formatdate'),$mails_données['date_mail'])."'" ,
170        'nb_mails_maxi' => $mails_données['nb_mails_maxi'] ,   
171        'nb_mails_periode' => "'".$mails_données['nb_mails_periode']."'" ,     
172        'time_mails_reste' => "'".int_to_heure( $rest_mail )."'" ,     
173       
174        'nb_spams' => $mails_données['nb_spams'] ,
175        'date_spam' => "'".date(l10n('formatdate'),$mails_données['date_spam'])."'" ,
176        'nb_spams_maxi' => $mails_données['nb_spams_maxi'] ,   
177         'nb_spams_periode' => "'".$mails_données['nb_spams_periode']."'" ,
178         'time_spams_reste' => "'".int_to_heure($rest_spam)."'" ,       
179         
180         'quarantaine' => $mails_données['quarantaine'] ,
181        'date_quarantaine' => "'".date(l10n('formatdate'),$mails_données['date_quarantaine'])."'" ,
182        'quarantaine_periode' => "'".$mails_données['quarantaine_periode']."'" ,
183     'reste' => "'".int_to_heure($reste)."'",
184 
185    'message' => $mails_données['message'] ,
186        'header_text' => "'".$mails_données['header_text']."'" ,
187       
188
189       
190                                                )
191                                );     
192
193        $template->set_filenames(array('plugin_admin_content' => realpath(MAIL_SUPERV_PATH . 'admin/mail_superv_admin.tpl')));
194                $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');
195               
196 break; 
197 
198 
199// *************************************************************************
200//                        TEST                                             |
201// *************************************************************************
202 
203   case 'mail_superv_test':
204   
205   $mails_données = Get_Datas() ;
206   
207        $group_id = isset($_POST['group']) ? $_POST['group'] :  '-1'  ;
208        if ($group_id >= 0) {
209      $query = '
210                SELECT
211                name
212                FROM '.GROUPS_TABLE.'
213                WHERE id = '.$group_id.'
214                ;';
215                list($group_name) = mysql_fetch_row(pwg_query($query));
216                }       else {
217                                $group_name="";         
218                }               
219//================================================
220
221
222       
223if ( isset($_POST['test_envoie']) ) {
224       
225                $mails_données['message_test'] = isset($_POST['content']) ? $_POST['content'] :  $mails_données['message_test']  ;
226                $message=$mails_données['message_test'];
227                sauve_données();
228                test_envoie($message,$group_name,$group_id);   
229                $mails_données = Get_Datas() ;
230               
231  } 
232
233  $groups[-1] = '---------';
234
235  $query = '
236    SELECT id, name
237                FROM '.GROUPS_TABLE.'
238                ORDER BY name ASC
239                ;';
240
241  $result = pwg_query($query);
242//----------------------------------------------------------------     
243  while ($row = mysql_fetch_array($result))
244  {
245    $groups[$row['id']] = $row['name'];
246  }
247 //---------------------------------------------------------------
248
249  $template->assign(
250        'Group',
251                array(
252                        'group_options'=> $groups,
253                        'selected' => $group_id 
254                        )
255                );
256//=================================================================
257$destinataires= implode("<br />",get_liste($group_id));
258  $template->assign(
259                                        array(
260                                'Groupe'     => $groups,
261                        'message_test' => $mails_données['message_test'] ,
262                                'liste' => $destinataires ,
263
264                                                )
265                                );     
266                               
267        $template->set_filenames(array('plugin_admin_content' => realpath(MAIL_SUPERV_PATH . 'admin/mail_superv_test.tpl')));
268                $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');
269   break;
270// *************************************************************************
271//                      AIDE                                               |
272// *************************************************************************   
273     case 'mail_superv_help':
274
275          $aff_nb=false;
276          $smile_bonjour=MAIL_SUPERV_PATH."smilies/bonjour.gif" ; 
277      $template->assign(
278                                        array(
279                                        'smile_bonjour' => $smile_bonjour ,
280                                        )
281                        );             
282         
283                $template->set_filenames(array('plugin_admin_content' => realpath(MAIL_SUPERV_PATH . 'admin/mail_superv_help.tpl')));
284                $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');
285   break; 
286 //====================================================================
287
288 
289 }
290//================================================================================
291        if  ( $mails_données['reste'] < 0 ) {
292            $mails_données['quarantaine'] =false ;
293            $mails_données['date_quarantaine']= time()  ;       
294                $mails_données['nb_spams'] = 0 ;
295            $modif == true ;
296        }
297         
298         
299        $rest_mail =    $mails_données['rest_mail'] ;
300        if ($rest_mail <=0 || $mails_données['nb_mails'] ==0 ){
301           $mails_données['nb_mails'] =0 ;
302           $mails_données['date_mail'] = time();
303           $modif = true ;
304        }
305       
306        $rest_spam =    $mails_données['rest_spam'] ;
307
308        if ($rest_spam <=0 || $mails_données['nb_spams'] ==0 ){
309           $mails_données['nb_spams'] =0 ;
310           $mails_données['date_spam'] = time();
311           $modif = true ;
312        }
313        if ( $modif == true )   { 
314                                sauve_données();
315                                $modif = false ;
316                }
317                if (!isset($infos_message)){
318                  $infos_message = "";
319                } 
320                if ($aff_nb == true) {
321                 $infos_message .= 'Mails    : '.$mails_données['nb_mails']. '  \\  ' . $mails_données['nb_mails_maxi'];
322                 $infos_message .= "\n".'Spams : '.$mails_données['nb_spams']. '  \\  ' . $mails_données['nb_spams_maxi'];
323                }
324                if  ($infos_message != "") 
325                 array_push($page['infos'], $infos_message);
326                 
327                if (!isset($erreur_message)){
328                  $erreur_message = "";
329                }               
330                if  ($erreur_message != "") 
331                 array_push($page['errors'], $erreur_message);           
332                 
333//========================================================================     
334                 
335?>
Note: See TracBrowser for help on using the repository browser.