Subversion Repositories Sites.obs-saisons.fr

Rev

Rev 91 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
31 aurelien 1
<?php
2
// declare(encoding='UTF-8');
3
/**
4
 * Modèle d'accès à la base de données de saisies pour le module espece.
5
 *
6
 * @package ODS_saisie
7
 * @category    php 5.2
8
 * @author      Aurélien Peronnet <aurelien@tela-botanica.org>
9
 * @copyright   2010 Tela-Botanica
10
 * @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
11
 * @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
12
 * @version SVN: $Id: StationDao.php 154 2010-09-13 12:15:11Z aurelien $
13
 *
14
 */
15
class EspeceDao extends Dao {
16
 
17
	const SERVICE_ESPECE = 'OdsEspece';
18
 
19
	const METHODE_ESPECES_STATION = 'EspecesPourStation';
20
	const METHODE_ESPECES_TYPE = 'EspecesParType';
287 aurelien 21
	const METHODE_ESPECES_TYPE_ADMIN = 'EspecesParTypeAdmin';
31 aurelien 22
	const METHODE_INFOS_ESPECE = 'Espece';
23
 
24
    /**
25
     * Retourne l'ensemble des especes.
26
     *
27
     * @return array un tableau contenant les informations sur les especes.
28
     */
29
    public function getListeEspeces() {
30
 
31
		$url = $this->url_jrest.self::SERVICE_ESPECE."/*/";
32
        $json = $this->envoyerRequeteConsultation($url);
33
        $donnees = json_decode($json, true);
34
 
35
        return $donnees;
36
	}
37
 
38
	/**
39
     * Retourne l'ensemble des especes présentes dans une station.
40
     *
41
     * @param integer l'id de de la station.
42
     * @return array un tableau contenant les informations sur les especes de cette station.
43
     */
44
    public function getListeEspecesPourStation($id_station) {
45
 
46
		$url = $this->url_jrest.self::SERVICE_ESPECE.'/'.self::METHODE_ESPECES_STATION.'/'.$id_station;
47
        $json = $this->envoyerRequeteConsultation($url);
48
        $donnees = json_decode($json, true);
49
 
50
        return $donnees;
51
	}
52
 
53
	/**
54
     * Retourne l'ensemble des especes présentes organisées hierarchiquement par type.
287 aurelien 55
     * Mais seulement sur les espèces actives
31 aurelien 56
     *
57
     * @return array un tableau contenant les informations sur les especes.
58
     */
59
    public function getListeEspecesParType() {
60
 
61
    	$url = $this->url_jrest.self::SERVICE_ESPECE.'/'.self::METHODE_ESPECES_TYPE.'/';
62
        $json = $this->envoyerRequeteConsultation($url);
63
        $donnees = json_decode($json, true);
64
        return $donnees;
65
	}
287 aurelien 66
 
67
	/**
68
	* Retourne l'ensemble des especes présentes organisées hierarchiquement par type,
69
	* ce qui comprend également les espèces inactives
70
	*
71
	* @return array un tableau contenant les informations sur les especes.
72
	*/
73
	public function getListeEspecesAdminParType() {
74
 
75
		$url = $this->url_jrest.self::SERVICE_ESPECE.'/'.self::METHODE_ESPECES_TYPE_ADMIN.'/';
76
		$json = $this->envoyerRequeteConsultation($url);
77
		$donnees = json_decode($json, true);
78
		return $donnees;
79
	}
31 aurelien 80
 
81
	public function getInformationsEspece($id_espece) {
82
 
83
		$url = $this->url_jrest.self::SERVICE_ESPECE.'/'.self::METHODE_INFOS_ESPECE.'/'.$id_espece;
84
        $json = $this->envoyerRequeteConsultation($url);
85
        $donnees = json_decode($json, true);
86
        return $donnees;
87
	}
34 aurelien 88
 
89
	public function ajouterEspeceDansStation($valeurs_espece_station_verifiees) {
90
 
91
		$donnees = $valeurs_espece_station_verifiees;
92
		$donnees['id_participant'] = AppControleur::getIdUtilisateur();
93
 
94
        $url = $this->url_jrest.self::SERVICE_ESPECE."/";
95
 
96
        $json = $this->envoyerRequeteAjout($url, $donnees);
97
 
98
        $donnees = json_decode($json, true);
99
 
100
		if (true) {
101
             //TODO: verifier ajout
102
        }
103
 
104
		return true;
105
	}
287 aurelien 106
 
107
	public function modifierEspece($id_espece, $valeurs_espece) {
108
		$url = $this->url_jrest.self::SERVICE_ESPECE."/".$id_espece;
109
		$json = $this->envoyerRequeteModif($url, $valeurs_espece);
110
		$donnees = json_decode($json, true);
111
		return ($donnees == 'ok');
112
	}
31 aurelien 113
}
91 aurelien 114
?>