<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2009 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
function handlers()
{
return array(
- 'stats' => $this->make_hook('stats', AUTH_COOKIE),
- 'stats/evolution' => $this->make_hook('evolution', AUTH_COOKIE),
- 'stats/graph' => $this->make_hook('graph', AUTH_COOKIE),
- 'stats/graph/evolution'
- => $this->make_hook('graph_evo', AUTH_COOKIE),
- 'stats/promos' => $this->make_hook('promos', AUTH_COOKIE),
-
- 'stats/coupures' => $this->make_hook('coupures', AUTH_PUBLIC),
+ 'stats' => $this->make_hook('stats', AUTH_COOKIE),
+ 'stats/evolution' => $this->make_hook('evolution', AUTH_COOKIE),
+ 'stats/graph' => $this->make_hook('graph', AUTH_COOKIE),
+ 'stats/graph/evolution' => $this->make_hook('graph_evo', AUTH_COOKIE),
+ 'stats/promos' => $this->make_hook('promos', AUTH_COOKIE),
+
+ 'stats/coupures' => $this->make_hook('coupures', AUTH_PUBLIC),
);
}
TO_DAYS(date_ins)-TO_DAYS(NOW()),
".(-($jours+1)).") AS jour,
COUNT(user_id) AS nb
- FROM auth_user_md5
- WHERE perms IN ('admin','user')
+ FROM auth_user_md5
+ WHERE perms IN ('admin','user') AND deces = 0
GROUP BY jour");
//genere des donnees compatibles avec GNUPLOT
// la première ligne contient le total des inscrits avant la date de départ (J - $jours)
list(,$init_nb) = $res->next();
- $total = $init_nb;
-
- list($numjour, $nb) = $res->next();
+ $total = $init_nb;
+ $numjour = - $jours - 1;
for ($i = -$jours; $i<=0; $i++) {
if ($numjour<$i) {
header( "Content-type: image/png");
$delt = ($total - $init_nb)/10;
+ $delt = $delt ? $delt : 5;
$ymin = round($init_nb - $delt,0);
$ymax = round($total + $delt,0);
{
if ($promo == 'all') {
// date de départ
- $depart = 1920;
+ $depart = 1930;
//recupere le nombre d'inscriptions par jour sur la plage concernée
$res = XDB::iterRow(
set xr [$depart:$fin]
set yr [0:100]
-set title "Nombre d'inscrits par promotion depuis $depart."
+set title "Proportion d'inscrits par promotion depuis $depart, en %."
plot "-" using 1:2 title 'inscrits' with boxes;
{$inscrits}
//nombre de jours sur le graph
$jours = 365;
define('DUREEJOUR',24*3600);
- $res = XDB::query("SELECT min(TO_DAYS(date_ins)-TO_DAYS(now()))
- FROM auth_user_md5
- WHERE promo = {?}
- AND perms IN ('admin', 'user')",
- $promo);
+ $res = XDB::query(
+ "SELECT min(TO_DAYS(date_ins)-TO_DAYS(now()))
+ FROM auth_user_md5
+ WHERE promo = {?} AND perms IN ('admin', 'user') AND deces = 0",
+ $promo);
$jours = -$res->fetchOneCell();
//recupere le nombre d'inscriptions par jour sur la plage concernée
TO_DAYS(date_ins)-TO_DAYS(NOW()),
".(-($jours+1)).") AS jour,
COUNT(user_id) AS nb
- FROM auth_user_md5
- WHERE promo = {?} AND perms IN ('admin','user')
+ FROM auth_user_md5
+ WHERE promo = {?} AND perms IN ('admin','user') AND deces = 0
GROUP BY jour", $promo);
//genere des donnees compatibles avec GNUPLOT
$res = XDB::iterRow(
"SELECT promo,COUNT(*)
FROM auth_user_md5
- WHERE promo > 1900 AND perms IN ('admin','user')
+ WHERE promo > 1900 AND perms IN ('admin','user') AND deces = 0
GROUP BY promo
ORDER BY promo");
$max=0; $min=3000;