207 |
aurelien |
1 |
<?php
|
|
|
2 |
|
|
|
3 |
class OdsUtilisateur extends JRestService {
|
|
|
4 |
|
|
|
5 |
/**
|
|
|
6 |
* Méthode appelée avec une requête de type GET.
|
|
|
7 |
*
|
|
|
8 |
*/
|
|
|
9 |
function getElement($param = array()) {
|
|
|
10 |
|
210 |
aurelien |
11 |
$chaine_utilisateur = $param[0];
|
|
|
12 |
|
230 |
aurelien |
13 |
$liste_utilisateurs = $this->getListeUtilisateur($chaine_utilisateur,0,20);
|
210 |
aurelien |
14 |
$liste_utilisateurs_formatee = $this->formaterListeUtilisateursPourEnvoi($liste_utilisateurs);
|
|
|
15 |
|
|
|
16 |
$this->envoyer($liste_utilisateurs_formatee);
|
207 |
aurelien |
17 |
}
|
210 |
aurelien |
18 |
|
230 |
aurelien |
19 |
function getListeUtilisateurFormateeId() {
|
210 |
aurelien |
20 |
|
230 |
aurelien |
21 |
$liste_utilisateurs = $this->getListeUtilisateur('');
|
|
|
22 |
$liste_utilisateurs_formatee = $this->formaterListeUtilisateursParId($liste_utilisateurs);
|
|
|
23 |
|
|
|
24 |
return $liste_utilisateurs_formatee;
|
|
|
25 |
}
|
|
|
26 |
|
|
|
27 |
function getListeUtilisateur($pseudo, $start = false, $limite = false) {
|
|
|
28 |
|
210 |
aurelien |
29 |
$requete_selection_liste = 'SELECT * '.
|
289 |
aurelien |
30 |
'FROM drupal_users '.
|
210 |
aurelien |
31 |
'WHERE name LIKE "'.$pseudo.'%" '.
|
246 |
aurelien |
32 |
'ORDER BY uid ';
|
230 |
aurelien |
33 |
|
|
|
34 |
|
|
|
35 |
if($start && $limite) {
|
|
|
36 |
$requete_selection_liste != 'LIMIT '.$start.', '.$limite;
|
|
|
37 |
}
|
210 |
aurelien |
38 |
|
|
|
39 |
$liste_utilisateurs = $this->executerRequete($requete_selection_liste);
|
|
|
40 |
|
|
|
41 |
return $liste_utilisateurs;
|
|
|
42 |
}
|
|
|
43 |
|
246 |
aurelien |
44 |
function getListeUtilisateurAvecInfosComplementairesFormateeId() {
|
|
|
45 |
|
|
|
46 |
$liste_utilisateurs = $this->getListeUtilisateur('');
|
|
|
47 |
$liste_utilisateurs_formatee = $this->formaterListeUtilisateursAvecInfosComplementairesParId($liste_utilisateurs);
|
|
|
48 |
|
|
|
49 |
return $liste_utilisateurs_formatee;
|
|
|
50 |
}
|
|
|
51 |
|
|
|
52 |
function formaterListeUtilisateursAvecInfosComplementairesParId($liste_utilisateurs) {
|
|
|
53 |
|
|
|
54 |
$liste_utilisateurs_formatee = array();
|
|
|
55 |
|
289 |
aurelien |
56 |
$requete_infos_complementaires = 'SELECT * FROM drupal_profile_values '.
|
|
|
57 |
'LEFT JOIN drupal_profile_fields ON '.
|
|
|
58 |
'drupal_profile_fields.fid = drupal_profile_values.fid ';
|
246 |
aurelien |
59 |
|
|
|
60 |
$liste_infos_complementaires = $this->executerRequete($requete_infos_complementaires);
|
|
|
61 |
$liste_infos_complementaires_formatee = array();
|
|
|
62 |
|
|
|
63 |
if(is_array($liste_infos_complementaires)) {
|
|
|
64 |
foreach($liste_infos_complementaires as &$infos_complementaires) {
|
|
|
65 |
$liste_infos_complementaires_formatee[$infos_complementaires['uid']][] = $infos_complementaires;
|
|
|
66 |
}
|
|
|
67 |
}
|
250 |
aurelien |
68 |
|
246 |
aurelien |
69 |
if (is_array($liste_utilisateurs)) {
|
250 |
aurelien |
70 |
foreach ($liste_utilisateurs as $utilisateur) {
|
246 |
aurelien |
71 |
if (isset($liste_infos_complementaires_formatee[$utilisateur['uid']])) {
|
250 |
aurelien |
72 |
$liste_utilisateurs_formatee[$utilisateur['uid']] = $utilisateur;
|
|
|
73 |
foreach ($liste_infos_complementaires_formatee[$utilisateur['uid']] as &$infos_complementaires_formatee_utilisateur) {
|
|
|
74 |
$liste_utilisateurs_formatee[$utilisateur['uid']][$infos_complementaires_formatee_utilisateur['name']] = $infos_complementaires_formatee_utilisateur['value'];
|
|
|
75 |
}
|
270 |
aurelien |
76 |
} else {
|
|
|
77 |
$liste_utilisateurs_formatee[$utilisateur['uid']] = $utilisateur;
|
246 |
aurelien |
78 |
}
|
|
|
79 |
}
|
250 |
aurelien |
80 |
}
|
246 |
aurelien |
81 |
return $liste_utilisateurs_formatee;
|
|
|
82 |
}
|
|
|
83 |
|
230 |
aurelien |
84 |
function formaterListeUtilisateursParId($liste_utilisateurs) {
|
|
|
85 |
|
|
|
86 |
$liste_utilisateurs_formatee = array();
|
|
|
87 |
|
244 |
aurelien |
88 |
if(is_array($liste_utilisateurs)) {
|
|
|
89 |
|
|
|
90 |
foreach($liste_utilisateurs as $utilisateur) {
|
|
|
91 |
$liste_utilisateurs_formatee[$utilisateur['uid']] = $utilisateur;
|
|
|
92 |
}
|
230 |
aurelien |
93 |
}
|
|
|
94 |
|
|
|
95 |
return $liste_utilisateurs_formatee;
|
|
|
96 |
}
|
|
|
97 |
|
210 |
aurelien |
98 |
function formaterListeUtilisateursPourEnvoi($liste_utilisateurs) {
|
|
|
99 |
|
|
|
100 |
$liste_utilisateurs_formatee = array();
|
|
|
101 |
|
|
|
102 |
foreach($liste_utilisateurs as $utilisateur) {
|
|
|
103 |
$liste_utilisateurs_formatee[] = array('nom' => $utilisateur['name'], 'id' => $utilisateur['uid']);
|
|
|
104 |
}
|
|
|
105 |
|
|
|
106 |
return $liste_utilisateurs_formatee;
|
|
|
107 |
}
|
207 |
aurelien |
108 |
|
|
|
109 |
}
|
|
|
110 |
|
|
|
111 |
?>
|