3,11 → 3,13 |
import org.tela_botanica.del.client.cache.CacheClient; |
import org.tela_botanica.del.client.i18n.I18n; |
import org.tela_botanica.del.client.modeles.Utilisateur; |
import org.tela_botanica.del.client.services.rest.UtilisateurService; |
import org.tela_botanica.del.client.services.rest.UtilisateurServiceConcret; |
import org.tela_botanica.del.client.services.rest.async.UtilisateurCallback; |
import com.google.gwt.event.dom.client.ClickEvent; |
import com.google.gwt.event.dom.client.ClickHandler; |
import com.google.gwt.event.dom.client.HasClickHandlers; |
import com.google.gwt.user.client.ui.HasText; |
import com.google.gwt.user.client.ui.HasWidgets; |
import com.google.gwt.user.client.ui.IsWidget; |
|
20,21 → 22,22 |
public void basculerAffichageFormulaire(); |
public void basculerModeConnecte(Utilisateur utilisateur); |
public HasClickHandlers getBoutonOK(); |
public String getLogin(); |
public String getMotdepasse(); |
public HasText getLogin(); |
public HasText getMotdepasse(); |
public void afficherErreur(); |
public void masquerErreur(); |
public void viderFormulaire(); |
public void setErreur(String texte); |
public void setErreur(String idTexte); |
public String getErreur(); |
} |
|
private Vue vue; |
private Utilisateur utilisateur; |
private UtilisateurServiceConcret utilisateurService; |
private UtilisateurService utilisateurService; |
|
public FormulaireIdentificationPresenteur(Vue vue) { |
public FormulaireIdentificationPresenteur(Vue vue, UtilisateurService utilisateurService) { |
this.vue = vue; |
utilisateurService = new UtilisateurServiceConcret(); |
this.utilisateurService = utilisateurService; |
utilisateurService.obtenirUtilisateur(new UtilisateurCallback() { |
@Override |
public void surRetourUtilisateur(Utilisateur utilisateur) { |
63,28 → 66,13 |
vue.getBoutonOK().addClickHandler(new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
String login = vue.getLogin(); |
String motdepasse = vue.getMotdepasse(); |
String login = vue.getLogin().getText(); |
String motdepasse = vue.getMotdepasse().getText(); |
|
if (login.equals("") || motdepasse.equals("")) { |
vue.setErreur(I18n.getMessages().saisirLogin()); |
vue.afficherErreur(); |
gererErreur("saisirLogin"); |
} else { |
utilisateurService.connecterUtilisateur(login, motdepasse, new UtilisateurCallback() { |
@Override |
public void surRetourUtilisateur(Utilisateur utilisateur) { |
CacheClient.getInstance().setUtilisateur(utilisateur); |
if (utilisateur.isIdentifie()) { |
vue.masquerErreur(); |
rafraichir(); |
vue.basculerAffichageFormulaire(); |
vue.viderFormulaire(); |
} else { |
vue.setErreur(I18n.getMessages().identificationRefus()); |
vue.afficherErreur(); |
} |
} |
}); |
connecterUtilisateur(login, motdepasse); |
} |
} |
}); |
93,18 → 81,46 |
@Override |
public void onClick(ClickEvent event) { |
Utilisateur utilisateur = CacheClient.getInstance().getUtilisateur(); |
utilisateurService.deconnecterUtilisateur(utilisateur.getCourriel(), new UtilisateurCallback() { |
@Override |
public void surRetourUtilisateur(Utilisateur utilisateur) { |
CacheClient.getInstance().setUtilisateur(utilisateur); |
rafraichir(); |
} |
}); |
deconnecterUtilisateur(utilisateur.getCourriel()); |
|
} |
}); |
} |
|
public void gererErreur(String erreur) { |
vue.setErreur(erreur); |
vue.afficherErreur(); |
} |
|
public void connecterUtilisateur(String login, String motdepasse) { |
|
utilisateurService.connecterUtilisateur(login, motdepasse, new UtilisateurCallback() { |
@Override |
public void surRetourUtilisateur(Utilisateur utilisateur) { |
CacheClient.getInstance().setUtilisateur(utilisateur); |
if (utilisateur.isIdentifie()) { |
vue.masquerErreur(); |
rafraichir(); |
vue.basculerAffichageFormulaire(); |
vue.viderFormulaire(); |
} else { |
vue.setErreur("identificationRefus"); |
vue.afficherErreur(); |
} |
} |
}); |
} |
|
public void deconnecterUtilisateur(String courriel) { |
utilisateurService.deconnecterUtilisateur(courriel, new UtilisateurCallback() { |
@Override |
public void surRetourUtilisateur(Utilisateur utilisateur) { |
CacheClient.getInstance().setUtilisateur(utilisateur); |
rafraichir(); |
} |
}); |
} |
|
public void go(HasWidgets composite) { |
vue.ajouterVue(composite); |
} |