* @license GPL v3 * @license CECILL v2 * @version $Id$ * @copyright © 2010, Jean-Pascal MILCENT */ class Stats extends WidgetCommun { const SERVICE_DEFAUT = 'defaut'; /** * Méthode appelée avec une requête de type GET. */ public function executer() { $retour = null; extract($this->parametres); if (!isset($mode)) { $mode = self::SERVICE_DEFAUT; } $methode = $this->traiterNomMethodeExecuter($mode); if (method_exists($this, $methode)) { $retour = $this->$methode(); } else { $this->messages[] = "Ce type de carte '$methode' n'est pas disponible."; } if (is_null($retour)) { $info = 'Un problème est survenu : '.print_r($this->messages, true); $this->envoyer($info); } else { $squelette = dirname(__FILE__).DIRECTORY_SEPARATOR.'squelettes'.DIRECTORY_SEPARATOR.$retour['squelette'].'.tpl.html'; $html = $this->traiterSquelettePhp($squelette, $retour['donnees']); $this->envoyer($html); } } /** * Stats par défaut */ public function executerDefaut() { $widget = null; $widget['donnees']['url_service'] = sprintf($this->config['chemins']['baseURLServicesCelTpl'], 'CelStatistique'); $widget['squelette'] = 'stats'; return $widget; } public function executerUtilisateur() { $widget = null; if ($this->authentifierUtilisateur()) { $widget['donnees']['url_service'] = sprintf($this->config['chemins']['baseURLServicesCelTpl'], 'CelStatistique'); $widget['donnees']['utilisateur'] = $this->getAuthIdentifiant(); $widget['squelette'] = 'stats_utilisateur'; } return $widget; } }