Subversion Repositories eFlore/Applications.cel

Rev

Rev 754 | Rev 974 | 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 //

// in utf8
// out utf8

/**
 * 
 * Liste des utilisateurs du cel, par défaut les 50 premiers
 * ou bien commencant par la chaine fournie en paramètre
 * 
 **/ 
class InventoryUserList extends Cel {

    function getElement($uid){
        
        session_start();
        $this->controleUtilisateur($uid[0]);

        $requete_utilisateurs ='SELECT DISTINCT courriel FROM cel_utilisateurs' ;
        $condition = $this->construireRequeteCondition($uid); 
        $requete_utilisateurs .= $condition;
        $requete_utilisateurs .= ' LIMIT 0,50';
                            
        $utilisateurs = $this->executerRequete($requete_utilisateurs);
    
        $liste_utilisateurs = array();
        if(!$utilisateurs) {
                
        } else {
                foreach($utilisateurs as $utilisateur) {
                        $liste_utilisateurs[] = $utilisateur['courriel'];
                }
        }
                
        usort($liste_utilisateurs,'trierUtilisateurs');
            
        $output = json_encode($liste_utilisateurs);
        print($output);
                
        return true;    
    }
    
    private function construireRequeteCondition($params) {
        
        $condition = '';
        
        if(isset($params[1]) && $params[1] != null && $params[1] != '*') {
                $condition .= ' WHERE courriel LIKE '.$this->proteger($params[1].'%');
        } 
        
        return $condition;
    }
}

function trierUtilisateurs($val1, $val2) {
        
        if(strstr($val1,'@')) {
            
            if(strstr($val2,'@')) { 
                return strcmp($val1,$val2);
            }
            else
            {
                return -1 ;
            }
        } 
        else
        {
            if(strstr($val2,'@')) { 
                return 1 ;
            }
            else
            {
                return strcmp($val1,$val2) ;
            }
        }
        
    }


/* +--Fin du code ---------------------------------------------------------------------------------------+
* $Log$
* Revision 1.3  2008-01-30 08:57:28  ddelon
* fin mise en place mygwt
*
* Revision 1.2  2007-05-22 12:54:09  ddelon
* Securisation acces utilisateur
*
*
* 
*/
?>