Subversion Repositories Sites.obs-saisons.fr

Compare Revisions

Ignore whitespace Rev 91 → Rev 92

/trunk/applications/jrest/services/OdsEvenement.php
1,6 → 1,6
<?php
 
class OdsEvenement extends GestionTriple {
class OdsEvenement extends OdsTriple {
 
const PREFIXE = 'get';
/trunk/applications/jrest/services/OdsObservation.php
1,6 → 1,6
<?php
 
class OdsObservation extends GestionTriple {
class OdsObservation extends OdsTriple {
 
const PREFIXE = 'get';
const ABBR_LISTE_EVENEMENTS = 'evenement';
/trunk/applications/jrest/services/OdsTriple.php
New file
0,0 → 1,120
<?php
 
class OdsTriple extends JRestService {
/**
* Méthode appelée avec une requête de type GET.
*
*/
function getElement($param = array()) {
$abreviation_demandee = $param[0];
$abreviation = $this->transformerParametreEnAbreviation($abreviation_demandee);
$info = $this->obtenirValeursListeParAbreviation($abreviation);
$info = $this->formaterListeTripleEnTableauCleValeur($info);
// Envoi sur la sortie standard
$this->envoyer($info);
}
private function transformerParametreEnAbreviation($parametre) {
$parametre_tirets_supprimes = str_replace('-', ' ', $parametre);
$parametre_mots_majuscules = ucwords($parametre_tirets_supprimes);
$abreviation = str_replace(' ', '',$parametre_tirets_supprimes);
return $abreviation;
}
private function formaterListeTripleEnTableauCleValeur($info) {
$tableau_cle_valeur = array();
foreach($info as $id_triple => $triple) {
$tableau_cle_valeur[$id_triple] = $triple['ot_valeur'];
}
return $tableau_cle_valeur;
}
protected function obtenirValeursListeParId($id_liste) {
$requete = 'SELECT * FROM ods_triple WHERE ot_ce_parent ='.$this->proteger($id_liste);
$resultat = $this->executerRequete($requete);
return $resultat;
}
protected function obtenirValeursListeParAbreviation($abreviation_triple) {
$requete = 'SELECT * FROM ods_triples WHERE ot_ce_parent = (SELECT ot_id_triple FROM ods_triples WHERE ot_cle ='.$this->proteger($abreviation_triple).')';
$resultat = $this->executerRequete($requete);
return $this->grouperResultat($resultat);
}
protected function obtenirValeurTripleParId($id_triple) {
$requete = 'SELECT * FROM ods_triples WHERE ot_id_triple = '.$this->proteger($id_triple);
$resultat = $this->executerRequete($requete);
return $resultat[0]['ot_valeur'];
}
protected function obtenirValeurTripleParAbreviation($abreviation_triple) {
$requete = 'SELECT * FROM ods_triples WHERE ot_cle = '.$this->proteger($abreviation_triple);
$resultat = $this->executerRequete($requete);
return $resultat[0]['ot_valeur'];
}
private function grouperResultat($tableau_resultat_requete_triple) {
$tableau_resultat_requete_triple_ordonne = array();
foreach($tableau_resultat_requete_triple as $valeur_triple) {
$tableau_resultat_requete_triple_ordonne[$valeur_triple['ot_id_triple']] = $valeur_triple;
}
return $tableau_resultat_requete_triple_ordonne;
}
protected function renvoyerInformationStadeAPartirChaineTriple($stade_observation_complet) {
$infos_stades = split('_',$stade_observation_complet);
$titre_numero_stade = array('nom','abreviation','numero');
if($this->estUnEvenementAvecDesSousStades($stade_observation_complet)) {
$titre_numero_stade['nom'] = $infos_stades[1];
$titre_numero_stade['numero'] = $infos_stades[3];
$titre_numero_stade['abreviation'] = $infos_stades[1];
} else {
$titre_numero_stade['nom'] = $infos_stades[1].' '.$infos_stades[2];
$titre_numero_stade['abreviation'] = $infos_stades[1].'_'.$infos_stades[2];
$titre_numero_stade['numero'] = '';
}
return $titre_numero_stade;
}
protected function estUnEvenementAvecDesSousStades($evenement) {
$infos_stades = split('_',$evenement);
if(count($infos_stades) <= 3) {
return false;
}
return true;
}
}
 
?>
/trunk/applications/jrest/services/OdsStation.php
1,6 → 1,6
<?php
 
class OdsStation extends GestionTriple {
class OdsStation extends OdsTriple {
 
/**
* Méthode appelée avec une requête de type GET.
192,7 → 192,8
'nom' => $station['os_nom'],
'id_commune' => $station['os_ce_commune'],
'commune' => $this->obtenirInformationsCommuneParCodeInsee($station['os_ce_commune']),
'milieu' => $this->obtenirInformationsMilieuParAbreviation($station['os_milieu']),
'id_milieu' => $station['os_ce_environnement'],
'milieu' => $this->obtenirInformationsMilieuParId($station['os_ce_environnement']),
'latitude' => $station['os_latitude'],
'longitude' => $station['os_longitude'],
'altitude' => $station['os_altitude'],
222,11 → 223,9
return $infos_commune;
}
private function obtenirInformationsMilieuParAbreviation($abreviation_milieu) {
private function obtenirInformationsMilieuParId($id_milieu) {
return '';
$informations_milieu = $this->obtenirValeurTripleParAbreviation($abreviation_milieu);
$informations_milieu = $this->obtenirValeurTripleParId($id_milieu);
return $informations_milieu;
}
/trunk/applications/jrest/services/OdsEspece.php
1,6 → 1,6
<?php
 
class OdsEspece extends GestionTriple {
class OdsEspece extends OdsTriple {
 
const PREFIXE = 'get';
const ABBR_LISTE_TYPE_ESPECE = 'type_espece';