Rev 2078 | Blame | Compare with Previous | Last modification | View Log | RSS feed
package org.tela_botanica.del.client.modeles;
import java.util.HashMap;
import org.tela_botanica.del.client.cache.CacheClient;
import org.tela_botanica.del.client.i18n.I18n;
import com.google.gwt.core.shared.GWT;
public class Utilisateur {
private String nom = "";
private String prenom = "";
private String courriel = "";
private String id = "0";
private String sessionId = "";
private String adminNiveau = "0";
private boolean identifie = false;
private HashMap<String, String> preferences = null;
// TODO: avoir une liste d'activités avec des types différents
private ActiviteUtilisateur activiteUtilisateur = new ActiviteUtilisateur();
// Jeton encodé en base64 passé de manière automatique aux services dans un header
private static String jeton = "";
// Durée de vie du jeton en secondes (sert au rafraîchissement automatique)
private static int duree = 0;
public Utilisateur(String sessionId, String id) {
this.id = id;
this.sessionId = sessionId;
}
public Utilisateur(String sessionId, String id, String prenom, String nom, String courriel, String adminNiveau) {
this(sessionId, id);
this.prenom = prenom;
this.nom = nom;
this.courriel = courriel;
this.adminNiveau = adminNiveau;
identifie = true;
}
public String getNom() {
return nom;
}
public void setNom(String nom) {
this.nom = nom;
}
public String getPrenom() {
return prenom;
}
public void setPrenom(String prenom) {
this.prenom = prenom;
}
public String getCourriel() {
return courriel;
}
public void setCourriel(String courriel) {
this.courriel = courriel;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public boolean estIdentifie() {
return identifie;
}
public void setIdentifie(boolean identifie) {
this.identifie = identifie;
}
public String getNomPrenomFormate() {
return identifie ? prenom+" "+nom : I18n.getVocabulary().anonyme();
}
public HashMap<String, String> getPreferences() {
return preferences;
}
public void setPreferences(HashMap<String, String> preferences) {
this.preferences = preferences;
}
public boolean etreValidateur() {
return etreAdmin() || this.adminNiveau.equals("1");
}
public boolean etreAdmin() {
return this.adminNiveau.equals("2");
}
public String toString() {
String utilisateur = id + "\n" + nom + "\n" + prenom + "\n" + courriel + "\n" +
sessionId + "\n" + adminNiveau + "\n";
return utilisateur;
}
public void setActivite(ActiviteUtilisateur activite) {
this.activiteUtilisateur = activite;
}
public ActiviteUtilisateur getActivite() {
return this.activiteUtilisateur;
}
public static String getJeton() {
return Utilisateur.jeton;
}
public static void setJeton(String jeton) {
Utilisateur.jeton = jeton;
}
public static int getDureeJeton() {
return Utilisateur.duree;
}
public static void setDureeJeton(int duree) {
Utilisateur.duree = duree;
}
}