Subversion Repositories eFlore/Applications.cel

Rev

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

<?php
// ATTENTION ! Classe compatible uniquement avec nouveau format de bdd du cel //

/**
 * @author Aurélien Peronnet <aurelien@tela-botanica.org>
 * @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
 * @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
 * @version $Id$
 * @copyright © 2010, Aurélien Peronnet
*/

/**
 * InventoryImageCount.php  
 * 
 * in : utf8
 * out : utf8
 * Cas d'utilisation :
 * Service recherche du nombre a partir de divers critères
 * 
 * 2: Le service recherche le nombre d'images correspondant aux critères demandés
 * 3: Le service renvoie le nombre calculé
 */ 
 class InventoryImageCount extends Cel {

        /**
         * renvoie le nombre d'images correspondant aux criteres 
         * uid[0] : utilisateur obligatoire
         * uid[1] : critères de filtrage de la forme critère1=valeur1;critère2=valeur2
         */
        function getElement($uid)
        {
                //TODO : remplacer le contenu du $uid[1] par le tableau $_GET;

                // Controle detournement utilisateur
            session_start();
                $this->controleUtilisateur($uid[0]);
                
                $chercheur_images = new RechercheImage($this->config);

                $numero_page = 0;
                $taille_page = 50;
                $criteres = array();

                if(isset($uid[1]))
                {
                        $criteres = $chercheur_images->parserRequeteCriteres($uid[1]) ;
                }

                $retour = $chercheur_images->compterImages($uid[0], $criteres);

                $retour_encode = json_encode($retour) ;
                $retour_encode = $this->nettoyerCaracteresNuls($retour_encode);

                header("content-type: application/json") ;
                print $retour_encode ;
                exit() ;
        }
        
        private function nettoyerCaracteresNuls($chaine) {
                return str_replace('\u0000','',$chaine);        
        }
}
?>