Subversion Repositories Sites.obs-saisons.fr

Rev

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

<?php

class OdsIndividu extends JRestService {

        /**
     * Méthode appelée avec une requête de type GET.
     *
     */
    function getElement($param = array()) {
        
        $donnees_test = $this->retournerDonneesTest();
                
        if($param[0] == "*") { 
                $info = $donnees_test;
        } else if(is_numeric($param[0])) {
            $info = $donnees_test[$param[0]];
        }
       
        // Envoi sur la sortie standard
        $this->envoyer($info);
    }
   
    /**
     * Méthode appelée pour ajouter un élément.
     */
    public function createElement($params) {
        // Identification de l'utilisateur
        list($id_utilisateur, $id_session) = $this->getIdentification($params);
   
        // Contrôle du non détournement de l'utilisateur
        if ($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'utilisateur
        list($id_utilisateur, $id_session) = $this->getIdentification($params);
       
        // Contrôle du non détournement de l'utilisateur
        if ($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'url
        if (!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'utilisateur     
            if ($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 retournerDonneesTest() {
                        
                return array(
                        '1' => 
                                        array(
                                        'id' => '1',
                                        'nom' => 'Individu 1',
                                        'nom_scientifique' => 'Acer monspessulanum',
                                                'nom_vernaculaire' => 'Erable de Montpellier',
                                                'description' => 'Quel bel individu!'
                                ),
                        '2' => 
                                 array(
                                        'id' => '2',
                                        'nom' => 'Individu 2',
                                        'nom_scientifique' => 'Acer monspessulanum',
                                                'nom_vernaculaire' => 'Erable de Montpellier',
                                                'description' => 'Quel bel individu!'
                                ),
                                
                        '3' => 
                                array(
                                        'id' => '3',
                                        'nom' => 'Individu 3',
                                        'nom_scientifique' => 'Acer monspessulanum',
                                                'nom_vernaculaire' => 'Erable de Montpellier',
                                                'description' => 'Quel bel individu!'
                                ),
                        '4' => 
                                        array(
                                        'id' => '4',
                                        'nom' => 'Individu 4',
                                        'nom_scientifique' => 'Acer monspessulanum',
                                                'nom_vernaculaire' => 'Erable de Montpellier',
                                                'description' => 'Quel bel individu!'
                                ),
                        '5' => 
                                        array(
                                        'id' => '5',
                                        'nom' => 'Individu 5',
                                        'nom_scientifique' => 'Acer monspessulanum',
                                                'nom_vernaculaire' => 'Erable de Montpellier',
                                                'description' => 'Quel bel individu!'
                                ),
                        '6' => 
                                        array(
                                        'id' => '6',
                                        'nom' => 'Individu 6',
                                        'nom_scientifique' => 'Acer monspessulanum',
                                                'nom_vernaculaire' => 'Erable de Montpellier',
                                                'description' => 'Quel bel individu!'
                                )
                        );
    }
}
?>