source: pmb4.2/trunk/fuentes/pmb/dsi_auto.php @ 828

Last change on this file since 828 was 815, checked in by jrpelegrina, 4 years ago

Initial release of pmb 4.2

  • Property svn:executable set to *
File size: 4.2 KB
Line 
1<?php
2// +-------------------------------------------------+
3// © 2002-2004 PMB Services / www.sigb.net pmb@sigb.net et contributeurs (voir www.sigb.net)
4// +-------------------------------------------------+
5// $Id: dsi_auto.php,v 1.9 2015-04-03 11:16:23 jpermanne Exp $
6
7// définition du minimum nécéssaire
8$base_path=".";                           
9$base_auth = ""; 
10$base_title = "\$msg[dsi_menu_title]";
11$base_noheader=1;
12$base_nosession=1;
13$base_nocheck = 1 ;
14require_once ("$base_path/includes/init.inc.php"); 
15
16if (!$user) $user=$argv[1];
17if (!$password) $password=$argv[2];
18if (!$database) $database=$argv[3];
19
20$include_path = $base_path."/includes" ;
21require_once("$include_path/db_param.inc.php");
22require_once("$include_path/mysql_connect.inc.php");
23$dbh = connection_mysql();
24// on checke si l'utilisateur existe et si le mot de passe est OK
25$query = "SELECT count(1) FROM users WHERE username='$user' AND pwd=password('$password') ";
26$result = pmb_mysql_query($query, $dbh);
27$valid_user = pmb_mysql_result($result, 0, 0);
28if (!$valid_user) die("Interdit : utilisateur invalide ");
29
30if (!$dsi_auto) die("DSI Auto pas activée sur base $database (user=$user) Version noyau: $pmb_bdd_version ");
31
32
33        /* param par défaut */ 
34        $requete_param = "SELECT * FROM users WHERE username='$user' LIMIT 1 ";
35        $res_param = pmb_mysql_query($requete_param, $dbh);
36        $field_values = pmb_mysql_fetch_row( $res_param );
37        $array_values = pmb_mysql_fetch_array( $res_param );
38        $i = 0;
39        while ($i < pmb_mysql_num_fields($res_param)) {
40                $field = pmb_mysql_field_name($res_param, $i) ;
41                $field_deb = substr($field,0,6);
42                switch ($field_deb) {
43                        case "deflt_" :
44                                global $$field;
45                                $$field=$field_values[$i];
46                                break;
47                        case "deflt2" :
48                                global $$field;
49                                $$field=$field_values[$i];
50                                break;
51                        case "param_" :
52                                global $$field;
53                                $$field=$field_values[$i];
54                                break ;
55                        case "value_" :
56                                global $$field;
57                                $$field=$field_values[$i];
58                                break ;
59                        default :
60                                break ;
61                        }
62                $i++;
63                }
64        $requete_nom = "SELECT nom, prenom, user_email, userid, username, user_lang  FROM users WHERE username='$user' ";
65        $res_nom = pmb_mysql_query($requete_nom, $dbh);
66        @$param_nom = pmb_mysql_fetch_object( $res_nom );
67        $lang = $param_nom->user_lang ;
68        $PMBusernom=$param_nom->nom ;
69        $PMBuserprenom=$param_nom->prenom ;
70        $PMBuseremail=$param_nom->user_email ; 
71        // pour que l'id user soit dispo partout
72        define('SESSuserid'     , $param_nom->userid);
73        $PMBuserid = $param_nom->userid;
74        $PMBusername = $param_nom->username;
75       
76        $messages = new XMLlist("$include_path/messages/$lang.xml", 0);
77        $messages->analyser();
78        $msg = $messages->table;
79
80
81
82include_once("$class_path/bannette.class.php");
83include_once("$class_path/equation.class.php");
84include_once("$class_path/classements.class.php");
85require_once("$class_path/docs_location.class.php");
86include_once("$class_path/rss_flux.class.php");
87require_once("./dsi/func_abo.inc.php");
88require_once("./dsi/func_pro.inc.php");
89require_once("./dsi/func_common.inc.php");
90require_once("./dsi/func_clas.inc.php");
91require_once("./dsi/func_equ.inc.php");
92require_once("./dsi/func_diff.inc.php");
93require_once("./dsi/func_rss.inc.php");
94
95$action_diff_aff = "<h1>".$msg[dsi_dif_auto_titre]."</h1>" ;
96
97// récupérer les bannettes à diffuser
98
99
100$requete = "SELECT id_bannette, proprio_bannette FROM bannettes ";
101$requete .= " WHERE (DATE_ADD(date_last_envoi, INTERVAL periodicite DAY) <= sysdate()) and bannette_auto=1 " ;
102$res = pmb_mysql_query($requete, $dbh);
103
104while(($bann=pmb_mysql_fetch_object($res))) {
105        $liste_bannette[]=$bann->id_bannette ;
106        }
107pmb_mysql_free_result($res);
108
109if (!$liste_bannette) $liste_bannette = array() ;
110
111for ($i=0 ; $i < sizeof($liste_bannette) ; $i++) {
112        $bannette = new bannette($liste_bannette[$i]) ;
113
114        $action_diff_aff .= $msg['dsi_dif_vidage'].": ".$bannette->nom_bannette."<br />" ; 
115        if(!$bannette->limite_type) $action_diff_aff .= $bannette->vider();
116        $action_diff_aff .= $msg['dsi_dif_remplissage'].": ".$bannette->nom_bannette ; 
117        $action_diff_aff .= $bannette->remplir();
118        $action_diff_aff .= $bannette->purger();
119        $action_diff_aff .= "<strong>".$msg['dsi_dif_diffusion'].": ".$bannette->nom_bannette."</strong><br />" ; 
120        $action_diff_aff .= $bannette->diffuser();
121        }
122
123print $action_diff_aff ;
124// deconnection MYSql
125pmb_mysql_close($dbh);
Note: See TracBrowser for help on using the repository browser.