| Line 45... |
Line 45... |
| 45 |
private static $tri_type = '';
|
45 |
private static $tri_type = '';
|
| Line 46... |
Line 46... |
| 46 |
|
46 |
|
| 47 |
public function __construct($config = null) {
|
47 |
public function __construct($config = null) {
|
| 48 |
$this->config = is_null($config) ? Config::get($this->serviceNom) : $config;
|
48 |
$this->config = is_null($config) ? Config::get($this->serviceNom) : $config;
|
| 49 |
}
|
49 |
}
|
| 50 |
|
50 |
|
| 51 |
public function consulter($ressources, $parametres) {
|
51 |
public function consulter($ressources, $parametres) {
|
| 52 |
$this->ressources = $ressources;
|
52 |
$this->ressources = $ressources;
|
| 53 |
$this->parametres = $parametres;
|
53 |
$this->parametres = $parametres;
|
| Line 59... |
Line 59... |
| 59 |
$resultats = '';
|
59 |
$resultats = '';
|
| 60 |
foreach ($this->table_version as $version) {
|
60 |
foreach ($this->table_version as $version) {
|
| 61 |
$this->table = $version; //on stocke le nom de la table correspondant à la version du projet en cours
|
61 |
$this->table = $version; //on stocke le nom de la table correspondant à la version du projet en cours
|
| 62 |
$this->recupererNomChamp($this->table); //on récupère les noms des champs disponibles (Ds Commun.php)
|
62 |
$this->recupererNomChamp($this->table); //on récupère les noms des champs disponibles (Ds Commun.php)
|
| 63 |
$this->traiterRessources(); //dans CommunNomsTaxons.php
|
63 |
$this->traiterRessources(); //dans CommunNomsTaxons.php
|
| 64 |
$requete = $this->assemblerLaRequete();
|
64 |
$requete = $this->assemblerLaRequete();// dans Noms ou Taxons...
|
| 65 |
$resultat = $this->getBdd()->recupererTous($requete);
|
65 |
$resultat = $this->getBdd()->recupererTous($requete);
|
| 66 |
$versionResultat = $this->traiterResultat($resultat, $version, $requete);
|
66 |
$versionResultat = $this->traiterResultat($resultat, $version, $requete);
|
| 67 |
if (count($this->table_version) > 1) {
|
67 |
if (count($this->table_version) > 1) {
|
| 68 |
$resultats[$version] = $versionResultat;
|
68 |
$resultats[$version] = $versionResultat;
|
| 69 |
} else {
|
69 |
} else {
|
| Line 76... |
Line 76... |
| 76 |
|
76 |
|
| 77 |
private function chargerNomDuService() {
|
77 |
private function chargerNomDuService() {
|
| 78 |
$this->serviceNom = get_class($this);
|
78 |
$this->serviceNom = get_class($this);
|
| Line 79... |
Line 79... |
| 79 |
}
|
79 |
}
|
| 80 |
|
80 |
|
| 81 |
public function traiterResultat($resultat, $version) {
|
81 |
public function traiterResultat($resultat, $version) {
|
| 82 |
$versionResultat = null;
|
82 |
$versionResultat = null;
|
| 83 |
if ($resultat == '') {
|
83 |
if ($resultat == '') {
|
| 84 |
//cas ou la requete comporte des erreurs
|
84 |
//cas ou la requete comporte des erreurs
|
| Line 220... |
Line 220... |
| 220 |
$this->limite_requete['limite'] = $valeur;
|
220 |
$this->limite_requete['limite'] = $valeur;
|
| 221 |
} else {
|
221 |
} else {
|
| 222 |
$e = "Erreur : valeur erronnée pour le paramètre navigation.limite.";
|
222 |
$e = "Erreur : valeur erronnée pour le paramètre navigation.limite.";
|
| 223 |
throw new Exception($e, RestServeur::HTTP_CODE_MAUVAISE_REQUETE);
|
223 |
throw new Exception($e, RestServeur::HTTP_CODE_MAUVAISE_REQUETE);
|
| 224 |
}
|
224 |
}
|
| 225 |
}
|
225 |
}
|
| 226 |
}
|
226 |
}
|
| 227 |
|
227 |
|
| 228 |
public function definirNavigationDepart($valeur){
|
228 |
public function definirNavigationDepart($valeur){
|
| 229 |
if (isset($this->parametres['navigation.depart'])) {
|
229 |
if (isset($this->parametres['navigation.depart'])) {
|
| 230 |
if(preg_match('/^([0-9]+)$/', $valeur)){
|
230 |
if(preg_match('/^([0-9]+)$/', $valeur)){
|
| 231 |
$this->limite_requete['depart'] = $valeur;
|
231 |
$this->limite_requete['depart'] = $valeur;
|
| 232 |
} else {
|
232 |
} else {
|
| Line 321... |
Line 321... |
| 321 |
if ($dureecache == null || !is_numeric($dureecache) || $dureecache < 0) {
|
321 |
if ($dureecache == null || !is_numeric($dureecache) || $dureecache < 0) {
|
| 322 |
$dureecache = 0;
|
322 |
$dureecache = 0;
|
| 323 |
}
|
323 |
}
|
| 324 |
return (int) $dureecache;
|
324 |
return (int) $dureecache;
|
| 325 |
}
|
325 |
}
|
| 326 |
|
326 |
|
| 327 |
public function ajouterHref($service, $val) {
|
327 |
public function ajouterHref($service, $val) {
|
| 328 |
// http://tela-botanica.org/service:eflore:0.1/[projet]/[version_projet]/[service]/[ressource]:[valeur]
|
328 |
// http://tela-botanica.org/service:eflore:0.1/[projet]/[version_projet]/[service]/[ressource]:[valeur]
|
| 329 |
if ($this->version_projet == '+') {
|
329 |
if ($this->version_projet == '+') {
|
| 330 |
$url = Config::get('url_service_base').Config::get('nom_projet').'/'.$service.'/'.$val;
|
330 |
$url = Config::get('url_service_base').Config::get('nom_projet').'/'.$service.'/'.$val;
|
| 331 |
} else {
|
331 |
} else {
|