Rev 46 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?phpclass OdsObservation extends JRestService {const PREFIXE = 'get';/*** Méthode appelée avec une requête de type GET.**/function getElement($param = array()) {$type = $param[0];if ($type == '*' || is_numeric($type)) {$info = $this->getElementParDefaut($param);} else {$methode = self::PREFIXE.$type;if (method_exists($this, $methode)) {array_shift($param);$info = $this->$methode($param);} else {$this->messages[] = "Le type d'information demandé '$type' n'est pas disponible.";}}// Envoi sur la sortie standard$this->envoyer($info);}/*** Méthode appelée pour ajouter un élément.*/public function createElement($params) {// Identification de l'utilisateurlist($id_utilisateur, $id_session) = $this->getIdentification($params);// Contrôle du non détournement de l'utilisateurif ($this->etreAutorise($id_utilisateur)) {try {} catch (PDOException $e) {$this->messages[] = sprintf($this->getTxt('sql_erreur'), $e->getFile(), $e->getLine(), $e->getMessage(), $requete);}}$this->envoyer((string) $id_personne);}/*** Méthode appelée pour mettre à jour un élément*/public function updateElement($uid, $params) {//Mise à jour de la personne// Identification de l'utilisateurlist($id_utilisateur, $id_session) = $this->getIdentification($params);// Contrôle du non détournement de l'utilisateurif ($this->etreAutorise($id_utilisateur)) {try {} catch (PDOException $e) {$messages[] = sprintf($this->getTxt('sql_erreur'), $e->getFile(), $e->getLine(), $e->getMessage(), $requete);}}$this->envoyer();}/*** Méthode appelée pour supprimer un élément*/public function deleteElement($uid) {// Vérification de la présence des id passés par l'urlif (!isset($uid[0]) || !isset($uid[1])) {$this->messages[] = "Identifiant d'utilisateur ou de personne manquant. Vous ne devriez pas avoir accès à ce service.";} else {list($id_utilisateur, $id_session) = $this->getIdentification($uid[0]);// Contrôle du non détournement de l'utilisateurif ($this->etreAutorise($id_utilisateur)) {// Récupération des id passés par l'url$identifiants = explode(',', rtrim($uid[1], ','));if (count($identifiants) == 0) {$this->messages[] = "Aucun enregistrement n'a été supprimé.";} else {foreach ($identifiants as $id_personne) {try {} catch (PDOException $e) {$this->messages[] = sprintf($this->getTxt('sql_erreur'), $e->getFile(), $e->getLine(), $e->getMessage(), $requete);}}}}}// Envoie sur la sortie standard$this->envoyer();}private function getElementParDefaut($params) {}private function getObservationsPourStation($params) {$id_station = $param[0];$annee = $param[1];return ;}private function getObservationsPourIndividu($params) {$id_individu = $param[0];$annee = $param[1];return array('1' => '01/01/2010','2' => '13/01/2010','3' => '06/02/2010','4' => '08/05/2010','5' => '09/07/2010','6' => '08/08/2010','7' => '25/10/2010',);}}?>