Rev 2618 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
/**
David Delon david.delon@clapas.net 2007
*/
/*
* LoginDialog.java (DialogBox)
*
* Cas d'utilisation :
* Dialogue de validation de l'identification utilisateur
*
* 1 : L'utilisateur saisit son identifiant (e-mail) et son mot de passe
* 2 : Le dialogue controle aupres du systeme distant la validite des informations saisies
* 3 : Le dialogue transmet au systeme local les informations d'identification
* 3a : Le dialogue informe l'utilisateur que les elements d'identification ne sont pas valide : retour au point 1, ou passe au point 4.
* 4 : Cloture du dialogue
* 5 : Appel du dialogue d'importation
*/
package org.tela_botanica.client.vues;
// TODO : controle de forme sur saisie (regex integree) ...
import org.tela_botanica.client.CarnetEnLigneMediateur;
import org.tela_botanica.client.i18n.Msg;
import com.google.gwt.user.client.ui.DialogBox;
import com.google.gwt.user.client.ui.KeyboardListener;
import com.google.gwt.user.client.ui.Label;
import com.gwtext.client.core.EventObject;
import com.gwtext.client.core.Position;
import com.gwtext.client.widgets.Button;
import com.gwtext.client.widgets.Panel;
import com.gwtext.client.widgets.event.ButtonListenerAdapter;
import com.gwtext.client.widgets.event.KeyListener;
import com.gwtext.client.widgets.form.FormPanel;
import com.gwtext.client.widgets.form.TextField;
public class FormulaireDeConnexionVue extends DialogBox {
/**
* Médiateur associé à la vue
*/
private CarnetEnLigneMediateur carnetEnLigneMediateur = null ;
/**
* email saisi
*/
private TextField ident=null;
/**
* mot de passe saisi
*/
private TextField motDePasse=null;
private Label saisieInvalide = null ;
public FormulaireDeConnexionVue(CarnetEnLigneMediateur cm) {
carnetEnLigneMediateur=cm;
setStyleName("popup_connexion");
Panel panneauPrincipalDialogue=new Panel();
FormPanel panneauFormulaire = new FormPanel(Position.RIGHT);
panneauFormulaire.setTitle(Msg.get("connexion"));
panneauFormulaire.setWidth(350);
panneauFormulaire.setLabelWidth(100);
ident = new TextField(Msg.get("mail"), "ident", 200);
ident.setAllowBlank(false);
ident.setInvalidText(Msg.get("mail-vide-incorrect"));
ident.setTabIndex(800);
panneauFormulaire.add(ident);
// Mot de passe
motDePasse = new TextField(Msg.get("mot-de-passe"), "motDePasse", 200);
motDePasse.setAllowBlank(false);
ident.setInvalidText(Msg.get("mot-de-passe-vide-incorrect"));
motDePasse.setPassword(true);
motDePasse.setTabIndex(801);
panneauFormulaire.add(motDePasse);
Button boutonOK = new Button(Msg.get("ok"));
boutonOK.setTabIndex(802);
panneauFormulaire.addButton(boutonOK);
Button boutonAnnuler = new Button(Msg.get("annuler"));
boutonAnnuler.setTabIndex(803);
panneauFormulaire.addButton(boutonAnnuler);
// Click sur bouton de validation
boutonOK.addListener(
new ButtonListenerAdapter() {
@Override
public void onClick(Button button, EventObject e) {
carnetEnLigneMediateur.connecterUtilisateur(ident.getText(),motDePasse.getText());
}
}
);
// Click sur bouton d'annulation
boutonAnnuler.addListener(
new ButtonListenerAdapter() {
@Override
public void onClick(Button button, EventObject e) {
cacher();
}
}
);
// gestion de la touche entrée
ident.addKeyListener(EventObject.ENTER, new KeyListener() {
@Override
public void onKey(int key, EventObject e) {
carnetEnLigneMediateur.connecterUtilisateur(ident.getText(),motDePasse.getText());
}
});
// Mot de passe
motDePasse.addKeyListener(EventObject.ENTER, new KeyListener() {
@Override
public void onKey(int key, EventObject e) {
carnetEnLigneMediateur.connecterUtilisateur(ident.getText(),motDePasse.getText());
}
});
saisieInvalide = new Label("");
saisieInvalide.setStyleName("saisie_invalide_invisible");
panneauFormulaire.add(saisieInvalide);
panneauPrincipalDialogue.add(panneauFormulaire);
setWidget(panneauPrincipalDialogue);
}
/*
* On sort sur touche echappement
*/
@Override
public boolean onKeyDownPreview(char key, int modifiers) {
switch (key) {
case KeyboardListener.KEY_ESCAPE:
hide();
break;
}
return true;
}
public void afficherMessageAlerte() {
saisieInvalide.setText(Msg.get("identifiant-mot-de-passe-invalide"));
saisieInvalide.setStyleName("saisie_invalide");
}
public void cacher() {
saisieInvalide.setText("");
saisieInvalide.setStyleName("saisie_invalide_invisible");
hide();
}
}
/* +--Fin du code ---------------------------------------------------------------------------------------+
* $Log$
* Revision 1.1 2008-11-13 11:27:05 ddelon
* Reecriture gwt-ext
*
* Revision 1.1 2008-06-09 14:19:37 ddelon
* Initialisation observation
*
* Revision 1.10 2007-09-17 19:25:34 ddelon
* Documentation
*
* Revision 1.9 2007-05-21 21:03:44 ddelon
* nettoyage de code
*
* Revision 1.8 2007-05-21 18:14:06 ddelon
* Gestion importation releve locaux
*
* Revision 1.7 2007-05-21 11:47:30 ddelon
* meta cvs
*
* Revision 1.6 2007-05-21 11:39:48 ddelon
* meta cvs
*
* Revision 1.5 2007-05-21 11:39:12 ddelon
* meta cvs
*
* Revision 1.4 2007-05-21 11:37:35 ddelon
* meta cvs
*
* Revision 1.3 2007-05-21 11:36:51 ddelon
* meta cvs
*
*/