Subversion Repositories eFlore/Applications.cel

Rev

Rev 2910 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2910 Rev 3001
Line 5... Line 5...
5
 * Encodage en entrée : utf8
5
 * Encodage en entrée : utf8
6
 * Encodage en sortie : utf8
6
 * Encodage en sortie : utf8
7
 *
7
 *
8
 * Cas d'utilisation :
8
 * Cas d'utilisation :
9
 * /CelStatistique/TypeDeGraph : retourne le graphique demandé
9
 * /CelStatistique/TypeDeGraph : retourne le graphique demandé
10
 * Paramêtres :
-
 
11
 * serveur=[0-9] : retourne le graphique demandé sur le serveur numéro 0 à 9 (voir http://code.google.com/intl/fr/apis/chart/docs/making_charts.html#enhancements )
-
 
12
 *
10
 *
13
 * @internal   Mininum PHP version : 5.2
11
 * @internal   Mininum PHP version : 5.2
14
 * @category   CEL
12
 * @category   CEL
15
 * @package    Services
13
 * @package    Services
16
 * @subpackage Statistiques
14
 * @subpackage Statistiques
Line 27... Line 25...
27
	/**
25
	/**
28
	 * Méthode appelée avec une requête de type GET.
26
	 * Méthode appelée avec une requête de type GET.
29
	 */
27
	 */
30
	public function getElement($param) {
28
	public function getElement($param) {
31
		$graph = null;
29
		$graph = null;
32
		$serveur = '';
-
 
Line 33... Line 30...
33
 
30
 
34
		if (isset($param[0])) {
31
		if (isset($param[0])) {
35
			$graph_demande = array_shift($param);
32
			$graph_demande = array_shift($param);
36
			$methode = 'get'.$graph_demande;
33
			$methode = 'get'.$graph_demande;
Line 42... Line 39...
42
		} else {
39
		} else {
43
			$this->messages[] = "Le premier paramêtre du service CEL Statistique doit correspondre au type de graphique.";
40
			$this->messages[] = "Le premier paramêtre du service CEL Statistique doit correspondre au type de graphique.";
44
		}
41
		}
Line 45... Line 42...
45
 
42
 
46
		if (!is_null($graph)) {
-
 
47
			$serveur = (isset($_GET['serveur']) && preg_match('/^[0-9]$/', $_GET['serveur'])) ? $_GET['serveur'].'.' : '';
43
		if (!is_null($graph)) {
48
			$url = "http://{$serveur}chart.apis.google.com/chart";
44
			$url = "http://chart.apis.google.com/chart";
49
			$contexte = stream_context_create(
45
			$contexte = stream_context_create(
50
				array('http' => array(
46
				array('http' => array(
51
      				'method' => 'POST',
47
      				'method' => 'POST',
52
      				'content' => http_build_query($graph),
48
      				'content' => http_build_query($graph),
Line 557... Line 553...
557
		$titre = "Nombre d'observations|avec indications géographiques";
553
		$titre = "Nombre d'observations|avec indications géographiques";
558
		$valeurs = implode(',', $donnees['valeurs']);
554
		$valeurs = implode(',', $donnees['valeurs']);
559
		$etiquettes = implode('|', $donnees['etiquettes']);
555
		$etiquettes = implode('|', $donnees['etiquettes']);
560
		$legendes = implode('|', $donnees['legendes']);
556
		$legendes = implode('|', $donnees['legendes']);
Line 561... Line 557...
561
 
557
 
562
		// Construire les paramêtres du graph
558
		// Construire les paramètres du graphe
563
		$graph = array('cht' => 'rs',
559
		$graph = array('cht' => 'rs',
564
			'chtt'	=> $titre,
560
			'chtt'	=> $titre,
565
			'chs'	=> '600x300',
561
			'chs'	=> '600x300',
566
			'chco'	=> 'FFFFFF',
562
			'chco'	=> 'FFFFFF',