Subversion Repositories eFlore/Applications.del

Rev

Rev 536 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 536 Rev 549
Line 1... Line 1...
1
package org.tela_botanica.del.client.composants.identification;
1
package org.tela_botanica.del.client.composants.identification;
Line 2... Line 2...
2
 
2
 
3
import org.tela_botanica.del.client.cache.CacheClient;
3
import org.tela_botanica.del.client.cache.CacheClient;
4
import org.tela_botanica.del.client.i18n.I18n;
4
import org.tela_botanica.del.client.i18n.I18n;
-
 
5
import org.tela_botanica.del.client.modeles.Utilisateur;
5
import org.tela_botanica.del.client.modeles.Utilisateur;
6
import org.tela_botanica.del.client.services.rest.UtilisateurService;
6
import org.tela_botanica.del.client.services.rest.UtilisateurServiceConcret;
7
import org.tela_botanica.del.client.services.rest.UtilisateurServiceConcret;
7
import org.tela_botanica.del.client.services.rest.async.UtilisateurCallback;
8
import org.tela_botanica.del.client.services.rest.async.UtilisateurCallback;
8
import com.google.gwt.event.dom.client.ClickEvent;
9
import com.google.gwt.event.dom.client.ClickEvent;
9
import com.google.gwt.event.dom.client.ClickHandler;
10
import com.google.gwt.event.dom.client.ClickHandler;
-
 
11
import com.google.gwt.event.dom.client.HasClickHandlers;
10
import com.google.gwt.event.dom.client.HasClickHandlers;
12
import com.google.gwt.user.client.ui.HasText;
11
import com.google.gwt.user.client.ui.HasWidgets;
13
import com.google.gwt.user.client.ui.HasWidgets;
Line 12... Line 14...
12
import com.google.gwt.user.client.ui.IsWidget;
14
import com.google.gwt.user.client.ui.IsWidget;
Line 18... Line 20...
18
		public HasClickHandlers getSeConnecter();
20
		public HasClickHandlers getSeConnecter();
19
		public HasClickHandlers getSeDeconnecter();
21
		public HasClickHandlers getSeDeconnecter();
20
		public void basculerAffichageFormulaire();
22
		public void basculerAffichageFormulaire();
21
		public void basculerModeConnecte(Utilisateur utilisateur);
23
		public void basculerModeConnecte(Utilisateur utilisateur);
22
		public HasClickHandlers getBoutonOK();
24
		public HasClickHandlers getBoutonOK();
23
		public String getLogin();
25
		public HasText getLogin();
24
		public String getMotdepasse();
26
		public HasText getMotdepasse();
25
		public void afficherErreur();
27
		public void afficherErreur();
26
		public void masquerErreur();
28
		public void masquerErreur();
27
		public void viderFormulaire();
29
		public void viderFormulaire();
28
		public void setErreur(String texte);
30
		public void setErreur(String idTexte);
-
 
31
		public String getErreur();
29
	}
32
	}
Line 30... Line 33...
30
	
33
	
31
	private Vue vue;
34
	private Vue vue;
32
	private Utilisateur utilisateur;
35
	private Utilisateur utilisateur;
Line 33... Line 36...
33
	private UtilisateurServiceConcret utilisateurService;
36
	private UtilisateurService utilisateurService;
34
	
37
	
35
	public FormulaireIdentificationPresenteur(Vue vue) {
38
	public FormulaireIdentificationPresenteur(Vue vue, UtilisateurService utilisateurService) {
36
		this.vue = vue;
39
		this.vue = vue;
37
		utilisateurService = new UtilisateurServiceConcret();
40
		this.utilisateurService = utilisateurService;
38
		utilisateurService.obtenirUtilisateur(new UtilisateurCallback() {
41
		utilisateurService.obtenirUtilisateur(new UtilisateurCallback() {
39
			@Override
42
			@Override
40
			public void surRetourUtilisateur(Utilisateur utilisateur) {
43
			public void surRetourUtilisateur(Utilisateur utilisateur) {
Line 61... Line 64...
61
		});
64
		});
Line 62... Line 65...
62
		
65
		
63
		vue.getBoutonOK().addClickHandler(new ClickHandler() {
66
		vue.getBoutonOK().addClickHandler(new ClickHandler() {
64
			@Override
67
			@Override
65
			public void onClick(ClickEvent event) {
68
			public void onClick(ClickEvent event) {
66
				String login = vue.getLogin(); 
69
				String login = vue.getLogin().getText(); 
Line 67... Line 70...
67
				String motdepasse = vue.getMotdepasse();
70
				String motdepasse = vue.getMotdepasse().getText();
68
				
71
				
69
				if (login.equals("") || motdepasse.equals("")) {
-
 
70
					vue.setErreur(I18n.getMessages().saisirLogin());
72
				if (login.equals("") || motdepasse.equals("")) {
71
					vue.afficherErreur();
-
 
72
				} else {
-
 
73
					utilisateurService.connecterUtilisateur(login, motdepasse, new UtilisateurCallback() {
-
 
74
						@Override
-
 
75
						public void surRetourUtilisateur(Utilisateur utilisateur) {
73
					gererErreur("saisirLogin");
76
							CacheClient.getInstance().setUtilisateur(utilisateur);
-
 
77
							if (utilisateur.isIdentifie()) {
-
 
78
								vue.masquerErreur();
-
 
79
								rafraichir();
-
 
80
								vue.basculerAffichageFormulaire();
-
 
81
								vue.viderFormulaire();
-
 
82
							} else {
-
 
83
								vue.setErreur(I18n.getMessages().identificationRefus());
-
 
84
								vue.afficherErreur();
-
 
85
							} 	
-
 
86
						}
74
				} else {
87
					});
75
					connecterUtilisateur(login, motdepasse);
88
				}
76
				}
Line 89... Line 77...
89
			}
77
			}
90
		});
78
		});
91
		
79
		
92
		vue.getSeDeconnecter().addClickHandler(new ClickHandler() {
80
		vue.getSeDeconnecter().addClickHandler(new ClickHandler() {
93
			@Override
-
 
94
			public void onClick(ClickEvent event) {
-
 
95
				Utilisateur utilisateur = CacheClient.getInstance().getUtilisateur();
81
			@Override
96
				utilisateurService.deconnecterUtilisateur(utilisateur.getCourriel(), new UtilisateurCallback() {
-
 
97
					@Override
-
 
98
					public void surRetourUtilisateur(Utilisateur utilisateur) {
-
 
99
						CacheClient.getInstance().setUtilisateur(utilisateur);
-
 
Line 100... Line 82...
100
						rafraichir();
82
			public void onClick(ClickEvent event) {
101
					}
83
				Utilisateur utilisateur = CacheClient.getInstance().getUtilisateur();
102
				});
84
				deconnecterUtilisateur(utilisateur.getCourriel());
Line -... Line 85...
-
 
85
				
-
 
86
			}
-
 
87
		});
-
 
88
	}
-
 
89
	
-
 
90
	public void gererErreur(String erreur) {
-
 
91
		vue.setErreur(erreur);
-
 
92
		vue.afficherErreur();
-
 
93
	}
-
 
94
	
-
 
95
	public void connecterUtilisateur(String login, String motdepasse) {
-
 
96
 
-
 
97
		utilisateurService.connecterUtilisateur(login, motdepasse, new UtilisateurCallback() {
-
 
98
			@Override
-
 
99
			public void surRetourUtilisateur(Utilisateur utilisateur) {
-
 
100
				CacheClient.getInstance().setUtilisateur(utilisateur);
-
 
101
				if (utilisateur.isIdentifie()) {
-
 
102
					vue.masquerErreur();
-
 
103
					rafraichir();
-
 
104
					vue.basculerAffichageFormulaire();
-
 
105
					vue.viderFormulaire();
-
 
106
				} else {
-
 
107
					vue.setErreur("identificationRefus");
-
 
108
					vue.afficherErreur();
-
 
109
				} 	
-
 
110
			}
-
 
111
		});
-
 
112
	}
-
 
113
	
-
 
114
	public void deconnecterUtilisateur(String courriel) {
-
 
115
		utilisateurService.deconnecterUtilisateur(courriel, new UtilisateurCallback() {
-
 
116
			@Override
-
 
117
			public void surRetourUtilisateur(Utilisateur utilisateur) {
-
 
118
				CacheClient.getInstance().setUtilisateur(utilisateur);
103
				
119
				rafraichir();
104
			}
120
			}
105
		});
121
		});
106
	}
122
	}