Subversion Repositories eFlore/Applications.cel

Rev

Rev 754 | Rev 887 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
416 aurelien 1
<?php
850 aurelien 2
// ATTENTION ! Classe compatible uniquement avec nouveau format de bdd du cel //
3
 
416 aurelien 4
// in utf8
5
// out utf8
6
 
754 aurelien 7
/**
8
 *
9
 * Liste des utilisateurs du cel, par défaut les 50 premiers
10
 * ou bien commencant par la chaine fournie en paramètre
11
 *
12
 **/
13
class InventoryUserList extends Cel {
416 aurelien 14
 
15
    function getElement($uid){
16
 
754 aurelien 17
        session_start();
18
        $this->controleUtilisateur($uid[0]);
416 aurelien 19
 
850 aurelien 20
        $requete_utilisateurs ='SELECT DISTINCT courriel FROM cel_utilisateurs' ;
754 aurelien 21
        $condition = $this->construireRequeteCondition($uid);
22
        $requete_utilisateurs .= $condition;
23
        $requete_utilisateurs .= ' LIMIT 0,50';
416 aurelien 24
 
754 aurelien 25
        $utilisateurs = $this->executerRequete($requete_utilisateurs);
416 aurelien 26
 
754 aurelien 27
    	$liste_utilisateurs = array();
28
        if(!$utilisateurs) {
29
 
30
        } else {
31
        	foreach($utilisateurs as $utilisateur) {
850 aurelien 32
        		$liste_utilisateurs[] = $utilisateur['courriel'];
754 aurelien 33
        	}
34
        }
416 aurelien 35
 
754 aurelien 36
        usort($liste_utilisateurs,'trierUtilisateurs');
416 aurelien 37
 
754 aurelien 38
        $output = json_encode($liste_utilisateurs);
39
        print($output);
416 aurelien 40
 
754 aurelien 41
        return true;
416 aurelien 42
    }
754 aurelien 43
 
44
    private function construireRequeteCondition($params) {
45
 
46
    	$condition = '';
47
 
48
    	if(isset($params[1]) && $params[1] != null && $params[1] != '*') {
850 aurelien 49
        	$condition .= ' WHERE courriel LIKE '.$this->proteger($params[1].'%');
754 aurelien 50
        }
51
 
52
        return $condition;
53
    }
416 aurelien 54
}
55
 
56
function trierUtilisateurs($val1, $val2) {
57
 
58
        if(strstr($val1,'@')) {
59
 
60
            if(strstr($val2,'@')) {
61
                return strcmp($val1,$val2);
62
            }
63
            else
64
            {
65
                return -1 ;
66
            }
67
        }
68
        else
69
        {
70
            if(strstr($val2,'@')) {
71
                return 1 ;
72
            }
73
            else
74
            {
75
                return strcmp($val1,$val2) ;
76
            }
77
        }
78
 
79
    }
80
 
81
 
82
/* +--Fin du code ---------------------------------------------------------------------------------------+
83
* $Log$
84
* Revision 1.3  2008-01-30 08:57:28  ddelon
85
* fin mise en place mygwt
86
*
87
* Revision 1.2  2007-05-22 12:54:09  ddelon
88
* Securisation acces utilisateur
89
*
90
*
91
*
92
*/
850 aurelien 93
?>