10,7 → 10,9 |
import org.tela_botanica.del.client.composants.validation.ValidateurChampTexteNonNul; |
import org.tela_botanica.del.client.config.Config; |
import org.tela_botanica.del.client.modeles.Commentaire; |
import org.tela_botanica.del.client.modeles.Contributeur; |
import org.tela_botanica.del.client.modeles.PropositionDetermination; |
import org.tela_botanica.del.client.modeles.Utilisateur; |
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel; |
import org.tela_botanica.del.client.navigation.evenement.ajoutdetermination.EvenementAjoutDetermination; |
import org.tela_botanica.del.client.utils.UtilitairesAutoCompletionService; |
26,15 → 28,20 |
public class FormulairePropositionPresenteur extends Presenteur { |
|
public interface Vue extends IsWidget { |
public HasText getNomPrenom(); |
public HasText getObjetNom(); |
public HasText getObjetPrenom(); |
public HasWidgets getPropositionTaxon(); |
public HasText getCommentaires(); |
public HasClickHandlers getBoutonValidationProposition(); |
public void afficherStyleErreur(String styleErreur); |
public void supprimerStyleErreur(String styleErreur); |
public void afficherNomPrenomEtDesactiver(String nomPrenomFormate); |
public String getEmailAuteur(); |
public void afficherNomPrenomEtDesactiver(String nom, String prenom); |
public String getCourriel(); |
public void afficherEmailEtDesactiver(String courriel); |
public String getNom(); |
public String getPrenom(); |
public void afficherStyleErreurNom(String styleErreur); |
public void supprimerStyleErreurNom(String styleErreur); |
public void afficherStyleErreurPrenom(String styleErreur); |
public void supprimerStyleErreurPrenom(String styleErreur); |
} |
|
private Vue vue; |
49,9 → 56,10 |
} |
|
private void remplirAvecInfosUtilisateur() { |
if(CacheClient.getInstance().getUtilisateur().estIdentifie()) { |
vue.afficherNomPrenomEtDesactiver(CacheClient.getInstance().getUtilisateur().getNomPrenomFormate()); |
vue.afficherEmailEtDesactiver(CacheClient.getInstance().getUtilisateur().getCourriel()); |
Utilisateur utilisateur = CacheClient.getInstance().getUtilisateur(); |
if(utilisateur.estIdentifie()) { |
vue.afficherNomPrenomEtDesactiver(utilisateur.getNom(), utilisateur.getPrenom()); |
vue.afficherEmailEtDesactiver(utilisateur.getCourriel()); |
} |
} |
|
95,20 → 103,34 |
|
private boolean validerSaisieProposition() { |
|
ValidateurChampTexteNonNul validateurTaxon = new ValidateurChampTexteNonNul(vue.getNomPrenom()) { |
ValidateurChampTexteNonNul validateurNom = new ValidateurChampTexteNonNul(vue.getObjetNom()) { |
@Override |
public void afficherStyleErreur(String styleErreur) { |
vue.afficherStyleErreur(styleErreur); |
vue.afficherStyleErreurNom(styleErreur); |
} |
|
@Override |
public void supprimerStyleErreur(String styleErreur) { |
vue.supprimerStyleErreur(styleErreur); |
vue.supprimerStyleErreurNom(styleErreur); |
} |
}; |
boolean taxonSaisi = validateurTaxon.valider(); |
|
ValidateurChampTexteNonNul validateurPrenom = new ValidateurChampTexteNonNul(vue.getObjetPrenom()) { |
@Override |
public void afficherStyleErreur(String styleErreur) { |
vue.afficherStyleErreurPrenom(styleErreur); |
} |
|
@Override |
public void supprimerStyleErreur(String styleErreur) { |
vue.supprimerStyleErreurPrenom(styleErreur); |
} |
}; |
|
boolean nomSaisi = validateurNom.valider(); |
boolean prenomSaisi = validateurPrenom.valider(); |
|
return taxonSaisi; |
return nomSaisi && prenomSaisi; |
} |
|
private PropositionDetermination collecterValeursSaisieProposition() { |
115,20 → 137,17 |
PropositionDetermination propositionAjoutee = new PropositionDetermination(); |
propositionAjoutee.setId(CacheClient.getInstance().getImageCourante().getIdImage()); |
|
String auteur = vue.getNomPrenom().getText(); |
Contributeur contributeur = new Contributeur(vue.getNom(), vue.getPrenom(), vue.getCourriel()); |
propositionAjoutee.setContributeur(contributeur); |
propositionAjoutee.setDate(new Date()); |
propositionAjoutee.setEspece(autoCompletionNomTaxonsPresenteur.getValeur()); |
|
if (vue.getCommentaires().getText() != "") { |
String contenuCommentaire = vue.getCommentaires().getText(); |
Commentaire comm = new Commentaire(auteur, new Date(), contenuCommentaire); |
Commentaire comm = new Commentaire(contributeur, new Date(), contenuCommentaire); |
propositionAjoutee.ajouterCommentaire(comm); |
} |
|
String emailAuteur = vue.getEmailAuteur(); |
propositionAjoutee.setAuteur(auteur); |
propositionAjoutee.setEmailAuteur(emailAuteur); |
propositionAjoutee.setDate(new Date()); |
|
propositionAjoutee.setEspece(autoCompletionNomTaxonsPresenteur.getValeur()); |
|
return propositionAjoutee; |
} |
} |