Subversion Repositories Applications.wikini

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
64 aurelien 1
<?php
2
// declare(encoding='UTF-8');
3
/**
4
 * Classe d'exemple de service web du projet eFlore
5
 * Source des données : {NOM_DU_PROJET} {ADRESSE_WEB_DONNEES_DU_PROJET}
6
 * Paramètres du service :
7
 *  - param1 : explication de l'utilisation du param1
8
 *  - param2 : explication de l'utilisation du param2
9
 * Exemple :
10
 * http://localhost/{CODE_DU_PROJET}/services/0.1/Exemple?param1=val1&param2=val2
11
 *
12
 * @category	php 5.2
13
 * @package		lion1906
14
 * @author		{PRENOM} {NOM}<{PRENOM}@tela-botanica.org>
15
 * @copyright	Copyright (c) 2011, Tela Botanica (accueil@tela-botanica.org)
16
 * @license		http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
17
 * @license		http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
18
 * @version		$Id$
19
 */
20
class Exemple extends Service {
21
 
22
	public function consulter($ressources, $parametres) {
23
		$verifOk = $this->verifierParametres($parametres);
24
		if ($verifOk) {
25
			// Débuter ici le code du service
26
			$wiki = Registre::get('wikiApi');
27
			$wiki->setPageCourrante($ressources[0]);
28
			$page = $wiki->LoadPage($ressources[0]);
29
			$retour = $wiki->Format($page["body"], "wakka");
30
			return $retour;
31
		} else {
32
			RestServeur::envoyerEnteteStatutHttp(RestServeur::HTTP_CODE_MAUVAISE_REQUETE);
33
 
34
		}
35
	}
36
 
37
	private function verifierParametres($parametres) {
38
		$ok = true;
39
		extract($parametres);
40
		if (isset($param1) && !preg_match('/^val1$/', $param1)) {
41
			$message = "La valeur du param1 n'est pas bonne. Seul 'val1' est accepté.";
42
			$this->ajouterMessage($message);
43
			$ok = false;
44
		}
45
		if (isset($param1) && !preg_match('/^val1$/', $param2)) {
46
			$message = "La valeur du param2 n'est pas bonne Seul 'val2' est accepté.";
47
			$this->ajouterMessage($message);
48
			$ok = false;
49
		}
50
		return $ok;
51
	}
52
}
53
?>