Subversion Repositories Applications.annuaire

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
257 aurelien 1
<?php
293 jpm 2
// declare(encoding='UTF-8');
257 aurelien 3
/**
293 jpm 4
 * Service fournissant le nom de visiteur journalier sur le
5
 * site tela-botanica.org grâce aux stats de Google Analytics.
6
 *
7
 * @category	php 5.2
8
 * @package		Annuaire::Services
9
 * @author		Grégoire DUCHÉ <gregoire@tela-botanica.org>
10
 * @author		Jean-Pascal MILCENT <jpm@tela-botanica.org>
11
 * @copyright	Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
12
 * @license		http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
13
 * @license		http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
14
 * @version		$Id$
257 aurelien 15
 */
16
class TelaUtilisateurs extends JRestService {
17
 
18
	/**
19
	 * Méthode appelée quand aucun paramêtre n'est passée dans l'url et avec une requête de type GET.
20
	 */
21
	public function getRessource() {
22
		$this->getElement(array());
23
	}
24
 
293 jpm 25
	/**
26
	 * Utilise l'API google pour donner le nombre de visiteurs
27
	 * et compte le nombre d'inscrits.
28
	 */
257 aurelien 29
	public function getElement($params = array())	{
30
		// Utilisation du fichier de configuration pour récupérer les identifiants de google analytics
31
		$email_google = $this->config['google']['email_google'];
32
		$password_google = $this->config['google']['password_google'];
33
		$id_site_google = $this->config['google']['id_site_google'];
34
 
35
		$ga = new GoogleAnalyticsAPI($email_google, $password_google, $id_site_google, date('Y-m-d', time() - 60 * 600), date('Y-m-d', time()));
36
 
37
		$id_annuaire = Config::get('annuaire_defaut');
293 jpm 38
		if (isset($uid[0])) {
257 aurelien 39
			$id_annuaire = $uid[0];
40
		}
41
 
42
	    $controleur = new AnnuaireControleur();
43
		$nb_inscrits = $controleur->chargerNombreAnnuaireListeInscrits($id_annuaire);
44
 
45
		$info[] = $nb_inscrits;
46
		$info[] = $ga->getMetric('visitors');
47
 
48
		$this->envoyer($info);
49
	}
50
}
51
?>