autocomplete improvements: can find pierre-yves when looking for yves
[platal.git] / modules / stats.php
index fbfb2b4..591d18b 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /***************************************************************************
- *  Copyright (C) 2003-2006 Polytechnique.org                              *
+ *  Copyright (C) 2003-2007 Polytechnique.org                              *
  *  http://opensource.polytechnique.org/                                   *
  *                                                                         *
  *  This program is free software; you can redistribute it and/or modify   *
@@ -50,24 +50,20 @@ class StatsModule extends PLModule
     function handler_stats(&$page)
     {
         $page->changeTpl('stats/index.tpl');
-        return PL_OK;
     }
 
     function handler_evolution(&$page, $jours = 365)
     {
         $page->changeTpl('stats/evolution_inscrits.tpl');
         $page->assign('jours', $jours);
-        return PL_OK;
     }
 
     function handler_graph_evo(&$page, $jours = 365)
     {
-        global $globals;
-
         define('DUREEJOUR',24*3600);
 
         //recupere le nombre d'inscriptions par jour sur la plage concernée
-        $res = $globals->xdb->iterRow(
+        $res = XDB::iterRow(
                 "SELECT  IF( date_ins>DATE_SUB(NOW(),INTERVAL $jours DAY),
                              TO_DAYS(date_ins)-TO_DAYS(NOW()),
                             ".(-($jours+1)).") AS jour,
@@ -127,14 +123,12 @@ EOF2;
 
     function handler_graph(&$page, $promo = null)
     {
-        global $globals;
-
         if ($promo == 'all') {
             // date de départ
             $depart = 1920;
 
             //recupere le nombre d'inscriptions par jour sur la plage concernée
-            $res = $globals->xdb->iterRow(
+            $res = XDB::iterRow(
                     "SELECT  promo, SUM(perms IN ('admin', 'user')) / COUNT(*) * 100
                        FROM  auth_user_md5
                       WHERE  promo >= $depart AND deces = 0
@@ -181,7 +175,7 @@ EOF2;
             //nombre de jours sur le graph
             $jours = 365;
             define('DUREEJOUR',24*3600);
-            $res = $globals->xdb->query("SELECT min(TO_DAYS(date_ins)-TO_DAYS(now()))
+            $res = XDB::query("SELECT min(TO_DAYS(date_ins)-TO_DAYS(now()))
                                            FROM auth_user_md5
                                           WHERE promo = {?}
                                                 AND perms IN ('admin', 'user')",
@@ -189,7 +183,7 @@ EOF2;
             $jours = -$res->fetchOneCell();
 
             //recupere le nombre d'inscriptions par jour sur la plage concernée
-            $res = $globals->xdb->iterRow(
+            $res = XDB::iterRow(
                     "SELECT  IF( date_ins>DATE_SUB(NOW(),INTERVAL $jours DAY),
                                  TO_DAYS(date_ins)-TO_DAYS(NOW()),
                                 ".(-($jours+1)).") AS jour,
@@ -250,11 +244,9 @@ EOF2;
 
     function handler_promos(&$page, $promo = null)
     {
-        global $globals;
-
         $page->changeTpl('stats/nb_by_promo.tpl');
 
-        $res = $globals->xdb->iterRow(
+        $res = XDB::iterRow(
                 "SELECT  promo,COUNT(*)
                    FROM  auth_user_md5
                   WHERE  promo > 1900 AND perms IN ('admin','user')
@@ -274,37 +266,36 @@ EOF2;
         $page->assign('min', $min-$min % 10);
         $page->assign('max', $max+10-$max%10);
         $page->assign('promo', $promo);
-
-        return PL_OK;
     }
 
     function handler_coupures(&$page, $cp_id = null)
     {
-        global $globals;
-
         $page->changeTpl('stats/coupure.tpl');
 
         if (!is_null($cp_id)) {
-            $res = $globals->xdb->query("SELECT  UNIX_TIMESTAMP(debut) AS debut,
-                                                 TIME_FORMAT(duree,'%kh%i') AS duree,
-                                                 resume, description, services
-                                           FROM  coupures
-                                          WHERE  id = {?}", $cp_id);
+            $res = XDB::query("SELECT  debut,
+                                       TIME_FORMAT(duree,'%kh%i') AS duree,
+                                       resume, description, services
+                                 FROM  coupures
+                                WHERE  id = {?}", $cp_id);
             $cp  = $res->fetchOneAssoc();
         }
 
-        if($cp) {
+        if(@$cp) {
             $cp['lg_services'] = serv_to_str($cp['services']);
             $page->assign_by_ref('cp',$cp);
         } else {
             $beginning_date = date("Ymd", time() - 3600*24*21) . "000000";
-            $sql = "SELECT  id, UNIX_TIMESTAMP(debut) AS debut, resume, services
+            $sql = "SELECT  id, debut, resume, services
                       FROM  coupures where debut > '$beginning_date' order by debut desc";
-            $page->assign('coupures', $globals->xdb->iterator($sql));
+            $page->assign('coupures', XDB::iterator($sql));
+            $res = XDB::iterator("SELECT  host, text
+                                    FROM  mx_watch
+                                   WHERE  state != 'ok'");
+            $page->assign('mxs', $res);
         }
-
-        return PL_OK;
     }
 }
 
+// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
 ?>