Subversion Repositories Sites.obs-saisons.fr

Rev

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

Rev Author Line No. Line
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 * '.
246 aurelien 30
    								'FROM ods_redesign.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
 
56
    	$requete_infos_complementaires = 'SELECT * FROM ods_redesign.drupal_profile_values '.
57
    								'LEFT JOIN ods_redesign.drupal_profile_fields ON '.
58
    								'ods_redesign.drupal_profile_fields.fid = ods_redesign.drupal_profile_values.fid ';
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
    	}
68
 
69
    	if (is_array($liste_utilisateurs)) {
70
	    	foreach ($liste_utilisateurs as &$utilisateur) {
71
	    		if (isset($liste_infos_complementaires_formatee[$utilisateur['uid']])) {
72
	    			foreach ($liste_infos_complementaires_formatee[$utilisateur['uid']] as &$infos_complementaires_formatee) {
73
	    				$utilisateur[$infos_complementaires_formatee['title']] = $infos_complementaires_formatee['value'];
74
	    			}
75
	    		}
76
	    		$liste_utilisateurs_formatee[$utilisateur['uid']] = $utilisateur;
77
	    	}
78
    	}
79
 
80
    	return $liste_utilisateurs_formatee;
81
    }
82
 
230 aurelien 83
    function formaterListeUtilisateursParId($liste_utilisateurs) {
84
 
85
    	$liste_utilisateurs_formatee = array();
86
 
244 aurelien 87
    	if(is_array($liste_utilisateurs)) {
88
 
89
	    	foreach($liste_utilisateurs as $utilisateur) {
90
	    		$liste_utilisateurs_formatee[$utilisateur['uid']] = $utilisateur;
91
	    	}
230 aurelien 92
    	}
93
 
94
    	return $liste_utilisateurs_formatee;
95
    }
96
 
210 aurelien 97
    function formaterListeUtilisateursPourEnvoi($liste_utilisateurs) {
98
 
99
    	$liste_utilisateurs_formatee = array();
100
 
101
    	foreach($liste_utilisateurs as $utilisateur) {
102
    		$liste_utilisateurs_formatee[] = array('nom' => $utilisateur['name'], 'id' => $utilisateur['uid']);
103
    	}
104
 
105
    	return $liste_utilisateurs_formatee;
106
    }
207 aurelien 107
 
108
}
109
 
110
?>