Subversion Repositories eFlore/Applications.coel

Rev

Rev 1513 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
61 jpm 1
package org.tela_botanica.client.modeles;
2
 
3
import java.util.Iterator;
4
import java.util.Set;
5
 
6
import com.google.gwt.json.client.JSONObject;
7
 
69 jpm 8
public class Utilisateur extends aDonnee {
61 jpm 9
 
748 jpm 10
	private static final long serialVersionUID = -4016615552202089985L;
1906 mathias 11
 
12
	// Jeton encodé en base64 passé de manière automatique aux services dans un header
13
	private static String jeton = "";
14
	// Durée de vie du jeton en secondes (sert au rafraîchissement automatique)
15
	private static int duree = 0;
748 jpm 16
 
17
	public static final String PREFIXE = "cp";
1173 jpm 18
	public static String[] champsObligatoires = {"cp_id_personne"};
748 jpm 19
 
766 jpm 20
	public Utilisateur() {
769 jpm 21
		initialiserUtilisateur(null, false);
766 jpm 22
	}
769 jpm 23
 
132 jpm 24
	public Utilisateur(String id, boolean identifie) {
769 jpm 25
		initialiserUtilisateur(id, identifie);
61 jpm 26
	}
769 jpm 27
 
61 jpm 28
	public Utilisateur(JSONObject utilisateur) {
29
		// l'objet JSON est une table de hachage
30
		Set<String> im = utilisateur.keySet();
31
 
32
		// Parcourt pour chaque clé
33
		for (Iterator<String> it = im.iterator(); it.hasNext();) {
34
			// Si elle est associée à une valeur, nous l'ajoutons
35
			String cle = it.next();
36
			// Suppression de l'abréviation du champ. Inutile dans le contexte d'un objet
748 jpm 37
			String cleObjet = cle.replaceFirst("^"+PREFIXE+"_", "");
38
			// Valeur est vide par défaut
39
			String valeur = "";
61 jpm 40
			if (utilisateur.get(cle).isString() != null) {
748 jpm 41
				valeur = utilisateur.get(cle).isString().stringValue();
61 jpm 42
				this.set(cleObjet, valeur);
43
			} else {
44
				this.set(cleObjet, valeur);
45
			}
46
		}
47
	}
48
 
748 jpm 49
	@Override
50
	protected String getPrefixe() {
51
		return PREFIXE;
52
	}
1173 jpm 53
 
54
	protected String[] getChampsObligatoires()	{
55
		return champsObligatoires;
56
	}
132 jpm 57
 
769 jpm 58
	private void initialiserUtilisateur(String id, boolean etreIdentifie) {
59
		setId(id);
60
		setIdentification(etreIdentifie);
61 jpm 61
	}
62
 
132 jpm 63
 
912 jpm 64
	// ID
61 jpm 65
	/**
119 jpm 66
	 * Retourne l'id de l'utilisateur ou l'identifiant de session si la personne n'est pas identifiée.
67
	 * @return String id de l'utilisateur
68
	 */
69
	public String getId() {
769 jpm 70
		return renvoyerValeurCorrecte("id_personne");
119 jpm 71
	}
769 jpm 72
	public void setId(String id) {
73
		set("id_personne", id);
74
	}
75
 
912 jpm 76
	// NOM COMPLET
132 jpm 77
	/**
78
	 * Retourne le nom complet et formaté de l'utilisateur
79
	 * @return String nom complet
80
	 */
81
	public String getNomComplet() {
769 jpm 82
		return renvoyerValeurCorrecte("fmt_nom_complet");
132 jpm 83
	}
896 gduche 84
 
769 jpm 85
	public void setNomComplet(String nom_complet) {
86
		set("fmt_nom_complet", nom_complet);
87
	}
132 jpm 88
 
912 jpm 89
	// PRÉNOM
132 jpm 90
	/**
91
	 * Retourne le prénom de l'utilisateur
92
	 * @return String prénom
93
	 */
94
	public String getPrenom() {
769 jpm 95
		return renvoyerValeurCorrecte("prenom");
132 jpm 96
	}
769 jpm 97
	public void setPrenom(String prenom) {
98
		set("prenom", prenom);
99
	}
119 jpm 100
 
912 jpm 101
	// NOM
119 jpm 102
	/**
132 jpm 103
	 * Retourne le nom de l'utilisateur
104
	 * @return String nom
105
	 */
106
	public String getNom() {
769 jpm 107
		return renvoyerValeurCorrecte("nom");
132 jpm 108
	}
769 jpm 109
	public void setNom(String nom) {
110
		set("nom", nom);
111
	}
132 jpm 112
 
912 jpm 113
	// LOGIN
132 jpm 114
	/**
66 jpm 115
	 * Retourne le login de l'utilisateur ou l'identifiant de session si la personne n'est pas identifiée.
64 jpm 116
	 * @return String login
117
	 */
118
	public String getLogin() {
769 jpm 119
		return renvoyerValeurCorrecte("login");
64 jpm 120
	}
769 jpm 121
	public void setLogin(String l) {
122
		set("login", l);
123
	}
124
 
912 jpm 125
	// MOT DE PASSE
64 jpm 126
	/**
127
	 * Retourne le mot de passe de l'utilisateur
128
	 * @return String mot de passe
129
	 */
130
	public String getMotDePasse() {
769 jpm 131
		return renvoyerValeurCorrecte("mot_de_passe");
64 jpm 132
	}
769 jpm 133
	public void setMotDePasse(String mdp) {
134
		set("mot_de_passe", mdp);
135
	}
64 jpm 136
 
912 jpm 137
	// PARAMÈTRE
138
	public String getParametre() {
139
		String xml = renvoyerValeurCorrecte("parametre");
140
		if (xml.equals("")) {
141
			xml = "<?xml version='1.0' encoding='UTF-8'?>\n<parametres>\n</parametres>";
142
		}
143
		return xml;
144
	}
145
	public void setParametre(String param) {
146
		set("parametre", param);
147
	}
1906 mathias 148
 
149
	public static String getJeton() {
150
		return Utilisateur.jeton;
151
	}
152
 
153
	public static void setJeton(String jeton) {
154
		Utilisateur.jeton = jeton;
155
	}
156
 
157
	public static int getDureeJeton() {
158
		return Utilisateur.duree;
159
	}
160
 
161
	public static void setDureeJeton(int duree) {
162
		Utilisateur.duree = duree;
163
	}
912 jpm 164
 
165
	// +---------------------------------------------------------------------------------------------------------------+
166
	// IDENTIFIÉ
64 jpm 167
	/**
61 jpm 168
	 * Retourne vrai si utilisateur est identifié.
169
	 * @return boolean
170
	 */
171
	public boolean isIdentifie() {
1329 cyprien 172
		if (get("identifie").equals(true))	{
896 gduche 173
			return true;
174
		}	else	{
175
			return false;
176
		}
61 jpm 177
	}
896 gduche 178
 
769 jpm 179
	public void setIdentification(Boolean bool) {
180
		set("identifie", bool);
181
	}
1369 cyprien 182
 
1329 cyprien 183
	public boolean avoirLicenceAcceptee() {
184
		if (getLicence().equals("1"))	{
185
			return true;
186
		}	else	{
187
			return false;
188
		}
189
	}
190
 
912 jpm 191
	// LICENCE ACCEPTÉE
896 gduche 192
	public void setLicence(String licence)	{
193
		this.set("licenceAcceptee", licence);
194
	}
195
 
196
	public String getLicence()	{
197
		if (this.get("licenceAcceptee") != null)	{
198
			return this.get("licenceAcceptee");
199
		} else {
200
			return "";
201
		}
202
	}
769 jpm 203
}