Subversion Repositories eFlore/Applications.cel

Rev

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

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