* @author Aurelien Peronnet * @copyright 2010 Tela-Botanica * @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL * @version SVN: * @link /doc/jrest/ */ /** * CRUD observation * * in=utf8 * out=utf8 * **/ class Inventory extends Cel { // TODO: faire un descriptif du service function getRessource(){ } function getElement($uid){ // Controle detournement utilisateur $this->controleUtilisateur($uid[0]); $value=array(); if(!isset($uid[0])) { return; } $parametres_recherche = array(array('ce_utilisateur',$uid[0]),array('ordre',$uid[1])); $chercheur_observations = new RechercheObservation($this->config); $retour_recherche = $chercheur_observations->rechercherObservations($uid[0], $parametres_recherche, 0, 1); $observation = array(); if(is_array($retour_recherche) && count($retour_recherche) > 0) { $observation = $retour_recherche[0]; } $observation = $this->formaterObservationVersTableauSequentiel(&$observation); $output = json_encode($observation); $this->envoyerJson($output); return true; } private function formaterObservationVersTableauSequentiel($observation) { if ($observation['date_observation']!="0000-00-00 00:00:00") { list($year,$month,$day)= explode('-',$observation['date_observation']); list($day)= explode(' ',$day); $observation['date_observation']=$day."/".$month."/".$year; } $observation = array($observation['nom_sel'], $observation['nom_sel_nn'], $observation['nom_ret'], $observation['nom_ret_nn'], $observation['nt'], $observation['famille'], $observation['zone_geo'], $observation['ce_zone_geo'], $observation['ordre'], $observation['date_observation'], $observation['lieudit'], $observation['station'], $observation['milieu'], $observation['commentaire'], $observation['latitude'], $observation['longitude']); return $observation; } function updateElement($uid,$pairs) { // Controle detournement utilisateur $this->controleUtilisateur($uid[0]); if (!isset($uid[1])) { //TODO: envoyer un message d'erreur return; } $uid[1] = rtrim($uid[1],','); $gestionnaire_observation = new GestionObservation($this->config); $modification_observation = $gestionnaire_observation->modifierObservation($uid[0],$uid[1],$pairs); return true; } function createElement($pairs){ // Controle detournement utilisateur $this->controleUtilisateur($pairs['ce_utilisateur']); $gestionnaire_observation = new GestionObservation($this->config); $gestionnaire_observation->ajouterObservation($pairs['ce_utilisateur'], $pairs); return true; } /** * Supprime une observation * * uid[0] : utilisateur obligatoire * uid[1] : ordres de l'observation à supprimer */ function deleteElement($uid){ // Controle detournement utilisateur $this->controleUtilisateur($uid[0]); if (!isset($uid[1])) { //TODO: envoyer un message d'erreur return; } $uid[1] = rtrim($uid[1],','); $gestionnaire_observation = new GestionObservation($this->config); $suppression_observation = $gestionnaire_observation->supprimerObservation($uid[0],$uid[1]); if ($suppression_observation) { echo "OK"; } exit() ; } } /* +--Fin du code ---------------------------------------------------------------------------------------+ * $Log$ * Revision 1.11 2008-11-13 11:29:12 ddelon * Reecriture gwt-ext * * Revision 1.10 2008-01-30 08:57:28 ddelon * fin mise en place mygwt * * Revision 1.9 2007-05-22 12:54:09 ddelon * Securisation acces utilisateur * */ ?>