Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 689 → Rev 690

/trunk/src/org/tela_botanica/del/client/composants/formulaires/formulairecommentaire/FormulaireCommentaireVue.ui.xml
9,16 → 9,28
<g:Label text="{constants.ajouterCommentaire}" styleName="titre"/>
<g:Label text="{constants.infoProposerDetermination}" styleName="petit"/>
<g:HTML><br /></g:HTML>
<g:HorizontalPanel>
<g:VerticalPanel styleName="{style.colonneGauche}">
<g:HTMLPanel>
<g:HTMLPanel styleName="{style.colonneGauche}">
<g:Label text="{constants.vous}" styleName="sousTitre"/>
<g:Label text="{constants.infoVous}" styleName="petit" />
<g:TextBox ui:field="nomPrenom" />
<g:HTMLPanel styleName="{style.zoneNom}">
<g:Label text="{constants.nom}" styleName="petit" />
<g:TextBox ui:field="nom"/>
</g:HTMLPanel>
<g:HTMLPanel styleName="{style.zonePrenom}">
<g:Label text="{constants.prenom}" styleName="petit" />
<g:TextBox ui:field="prenom"/>
</g:HTMLPanel>
<g:HTMLPanel styleName="{style.zoneEmail}">
<g:Label text="Votre adresse email : " styleName="petit" />
<g:TextBox ui:field="courriel" />
</g:HTMLPanel>
<g:HTML><br /></g:HTML>
<g:Label text="{constants.commentaire}" styleName="sousTitre"/>
<g:TextArea ui:field="commentaire" styleName="{style.commentaire}" />
</g:VerticalPanel>
</g:HorizontalPanel>
</g:HTMLPanel>
</g:HTMLPanel>
<g:Button text="{constants.boutonProposer}" ui:field="boutonValidationCommentaire" styleName="{style.boutonProposer} arrondi"/>
</g:VerticalPanel>
</ui:UiBinder>
/trunk/src/org/tela_botanica/del/client/composants/formulaires/formulairecommentaire/FormulaireCommentairePresenteur.java
6,8 → 6,10
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
import org.tela_botanica.del.client.composants.validation.ValidateurChampTexteNonNul;
import org.tela_botanica.del.client.modeles.Commentaire;
import org.tela_botanica.del.client.modeles.Contributeur;
import org.tela_botanica.del.client.modeles.Observation;
import org.tela_botanica.del.client.modeles.PossesseurDeCommentaires;
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.ajoutcommentaire.EvenementAjoutCommentaire;
 
28,17 → 30,34
private PossesseurDeCommentaires possesseurDeCommentaires;
 
public interface Vue extends IsWidget {
public abstract HasText getNomPrenom();
 
public HasText getNomObjet();
public HasText getPrenomObjet();
public String getNom();
public String getPrenom();
public String getCourriel();
public abstract HasText getCommentaire();
 
public abstract HasClickHandlers getBoutonValidationCommentaire();
 
public void afficherStyleErreur(String styleErreur);
public void afficherStyleErreurNom(String styleErreur);
 
public void supprimerStyleErreur(String styleErreur);
public void supprimerStyleErreurNom(String styleErreur);
public void afficherStyleErreurPrenom(String styleErreur);
 
void afficherNomPrenomEtDesactiver(String nomPrenomFormate);
public void supprimerStyleErreurPrenom(String styleErreur);
 
public void afficherStyleErreurCommentaire(String styleErreur);
 
public void supprimerStyleErreurCommentaire(String styleErreur);
void afficherNomPrenomEtDesactiver(String nom, String prenom, String courriel);
}
 
private Vue vue;
60,8 → 79,9
}
 
private void remplirAvecInfosUtilisateur() {
if (CacheClient.getInstance().getUtilisateur().estIdentifie()) {
vue.afficherNomPrenomEtDesactiver(CacheClient.getInstance().getUtilisateur().getNomPrenomFormate());
Utilisateur utilisateur = CacheClient.getInstance().getUtilisateur();
if (utilisateur.estIdentifie()) {
vue.afficherNomPrenomEtDesactiver(utilisateur.getNom(), utilisateur.getPrenom(), utilisateur.getCourriel());
}
}
 
83,9 → 103,9
public void surValidationCommentaire() {
String texteCommentaire = vue.getCommentaire().getText();
String nomPrenom = vue.getNomPrenom().getText();
 
Commentaire commentaire = new Commentaire(nomPrenom, new Date(), texteCommentaire);
Contributeur contributeur = new Contributeur(vue.getNom(), vue.getPrenom(), vue.getCourriel());
Commentaire commentaire = new Commentaire(contributeur, new Date(), texteCommentaire);
 
if (observation != null) {
observation.getInterventionsForum().add(commentaire);
98,18 → 118,18
 
private boolean validerNomPrenom() {
 
ValidateurChampTexteNonNul validateurTaxon = new ValidateurChampTexteNonNul(vue.getNomPrenom()) {
ValidateurChampTexteNonNul validateurNom = new ValidateurChampTexteNonNul(vue.getNomObjet()) {
@Override
public void afficherStyleErreur(String styleErreur) {
vue.afficherStyleErreur(styleErreur);
vue.afficherStyleErreurNom(styleErreur);
}
 
@Override
public void supprimerStyleErreur(String styleErreur) {
vue.supprimerStyleErreur(styleErreur);
vue.supprimerStyleErreurNom(styleErreur);
}
};
return validateurTaxon.valider();
return validateurNom.valider();
}
 
private boolean validerCommentaire() {
117,12 → 137,12
ValidateurChampTexteNonNul validateurCommentaire = new ValidateurChampTexteNonNul(vue.getCommentaire()) {
@Override
public void afficherStyleErreur(String styleErreur) {
vue.afficherStyleErreur(styleErreur);
vue.afficherStyleErreurCommentaire(styleErreur);
}
 
@Override
public void supprimerStyleErreur(String styleErreur) {
vue.supprimerStyleErreur(styleErreur);
vue.supprimerStyleErreurCommentaire(styleErreur);
}
};
return validateurCommentaire.valider();
/trunk/src/org/tela_botanica/del/client/composants/formulaires/formulairecommentaire/FormulaireCommentaireVue.java
5,6 → 5,7
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.HasText;
import com.google.gwt.user.client.ui.TextArea;
import com.google.gwt.user.client.ui.TextBox;
import com.google.gwt.user.client.ui.Widget;
11,14 → 12,14
 
public class FormulaireCommentaireVue extends Composite implements FormulaireCommentairePresenteur.Vue {
@UiField(provided = true)
public TextBox nomPrenom = new TextBox();
@UiField
public TextBox nom, prenom, courriel;
 
@UiField(provided = true)
public TextArea commentaire = new TextArea();
@UiField
public TextArea commentaire;
 
@UiField(provided = true)
public Button boutonValidationCommentaire = new Button();
@UiField
public Button boutonValidationCommentaire;
 
interface FormulairePropositionUIiBinder extends UiBinder<Widget, FormulaireCommentaireVue> {
};
30,9 → 31,14
}
 
@Override
public TextBox getNomPrenom() {
return nomPrenom;
public String getNom() {
return nom.getText();
}
@Override
public String getPrenom() {
return nom.getText();
}
 
@Override
public TextArea getCommentaire() {
45,20 → 51,61
}
@Override
public void afficherStyleErreur(String styleErreur) {
nomPrenom.addStyleName(styleErreur);
public void afficherStyleErreurCommentaire(String styleErreur) {
commentaire.addStyleName(styleErreur);
}
 
@Override
public void supprimerStyleErreur(String styleErreur) {
nomPrenom.removeStyleName(styleErreur);
public void supprimerStyleErreurCommentaire(String styleErreur) {
commentaire.removeStyleName(styleErreur);
}
@Override
public void afficherNomPrenomEtDesactiver(String nomPrenomFormate) {
nomPrenom.setText(nomPrenomFormate);
nomPrenom.setEnabled(false);
public void afficherStyleErreurNom(String styleErreur) {
nom.addStyleName(styleErreur);
}
 
@Override
public void supprimerStyleErreurNom(String styleErreur) {
nom.removeStyleName(styleErreur);
}
@Override
public void afficherStyleErreurPrenom(String styleErreur) {
prenom.addStyleName(styleErreur);
}
 
@Override
public void supprimerStyleErreurPrenom(String styleErreur) {
prenom.removeStyleName(styleErreur);
}
@Override
public void afficherNomPrenomEtDesactiver(String nom, String prenom, String courriel) {
this.nom.setText(nom);
this.nom.setEnabled(false);
this.prenom.setText(prenom);
this.prenom.setEnabled(false);
this.courriel.setText(courriel);
this.courriel.setEnabled(false);
}
 
@Override
public HasText getNomObjet() {
return nom;
}
@Override
public HasText getPrenomObjet() {
return prenom;
}
 
@Override
public String getCourriel() {
return courriel.getText();
}
}
/trunk/src/org/tela_botanica/del/client/composants/formulaires/formulairecommentaire/formulaireCommentaire.css
49,4 → 49,21
padding: 5px;
padding-left: 25px;
cursor: pointer
}
 
 
.zoneNom {
width:30%;
float:left;
margin-right:5px;
}
 
.zonePrenom {
width:30%;
float:left;
}
 
.zoneEmail {
clear:left;
padding-top:5px;
}
/trunk/src/org/tela_botanica/del/client/composants/formulaires/formulaireproposition/formulaireProposition.css
7,6 → 7,7
width: 370px;
margin: 0 auto;
margin-top: 5%;
padding-bottom:50px;
}
 
.boutonProposer:hover {
51,4 → 52,20
padding: 5px;
padding-left: 25px;
cursor: pointer
}
 
.zoneNom {
width:30%;
float:left;
margin-right:5px;
}
 
.zonePrenom {
width:30%;
float:left;
}
 
.zoneEmail {
clear:left;
padding-top:5px;
}
/trunk/src/org/tela_botanica/del/client/composants/formulaires/formulaireproposition/FormulairePropositionVue.ui.xml
6,15 → 6,25
<ui:with field="constants" type="org.tela_botanica.del.client.i18n.Vocabulary"/>
<ui:style src="formulaireProposition.css" />
<g:VerticalPanel styleName="{style.formulaireProposition}">
<g:HTMLPanel styleName="{style.formulaireProposition}">
<g:Label text="{constants.proposerSaDetermination}" styleName="titre"/>
<g:HTML><br /></g:HTML>
<g:VerticalPanel styleName="{style.colonneGauche}">
<g:HTMLPanel styleName="{style.colonneGauche}">
<g:Label ui:field="labelnomPrenom" text="{constants.vous}" styleName="sousTitre"/>
<g:Label ui:field="infosNomPrenom" text="{constants.infoVous}" styleName="petit" />
<g:TextBox ui:field="nomPrenom" />
<g:Label text="Votre adresse email : " styleName="petit" />
<g:TextBox ui:field="emailAuteur" />
<g:HTMLPanel styleName="{style.zoneNom}">
<g:Label text="{constants.nom}" styleName="petit" />
<g:TextBox ui:field="nom"/>
</g:HTMLPanel>
<g:HTMLPanel styleName="{style.zonePrenom}">
<g:Label text="{constants.prenom}" styleName="petit" />
<g:TextBox ui:field="prenom"/>
</g:HTMLPanel>
<g:HTMLPanel styleName="{style.zoneEmail}">
<g:Label text="Votre adresse email : " styleName="petit" />
<g:TextBox ui:field="courriel" />
</g:HTMLPanel>
<g:HTML><br /></g:HTML>
<g:Label text="{constants.choisirUnTaxon}" styleName="sousTitre"/>
<g:HTML HTML="{constants.infoTaxon}" styleName="petit"/>
23,7 → 33,7
<g:Label text="{constants.commentaire}" styleName="sousTitre"/>
<g:TextArea ui:field="commentaires" styleName="{style.commentaire}" />
<g:Button text="{constants.boutonProposer}" ui:field="boutonValidationProposition" styleName="{style.boutonProposer} arrondi"/>
</g:VerticalPanel>
</g:VerticalPanel>
</g:HTMLPanel>
</g:HTMLPanel>
 
</ui:UiBinder>
/trunk/src/org/tela_botanica/del/client/composants/formulaires/formulaireproposition/FormulairePropositionPresenteur.java
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;
}
}
/trunk/src/org/tela_botanica/del/client/composants/formulaires/formulaireproposition/FormulairePropositionVue.java
5,6 → 5,7
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.HasText;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.LayoutPanel;
import com.google.gwt.user.client.ui.TextArea;
13,24 → 14,21
 
public class FormulairePropositionVue extends Composite implements FormulairePropositionPresenteur.Vue {
 
@UiField(provided = true)
public TextBox nomPrenom = new TextBox();
@UiField
public TextBox nom, prenom, courriel;
 
@UiField(provided = true)
public LayoutPanel propositionTaxon = new LayoutPanel();
@UiField
public LayoutPanel propositionTaxon;
 
@UiField(provided = true)
public TextArea commentaires = new TextArea();
@UiField
public TextArea commentaires;
 
@UiField(provided = true)
public Button boutonValidationProposition = new Button();
@UiField
public Button boutonValidationProposition;
@UiField
public Label labelnomPrenom, infosNomPrenom;
public Label labelnomPrenom;
 
@UiField
public TextBox emailAuteur;
interface FormulairePropositionUIiBinder extends UiBinder<Widget, FormulairePropositionVue> {
};
 
40,10 → 38,6
initWidget(uiBinder.createAndBindUi(this));
}
 
@Override
public TextBox getNomPrenom() {
return nomPrenom;
}
 
@Override
public LayoutPanel getPropositionTaxon() {
61,33 → 55,68
}
 
@Override
public void afficherStyleErreur(String styleErreur) {
nomPrenom.addStyleName(styleErreur);
public void afficherStyleErreurNom(String styleErreur) {
nom.addStyleName(styleErreur);
propositionTaxon.addStyleName(styleErreur);
}
 
@Override
public void supprimerStyleErreur(String styleErreur) {
nomPrenom.removeStyleName(styleErreur);
public void supprimerStyleErreurNom(String styleErreur) {
nom.removeStyleName(styleErreur);
propositionTaxon.removeStyleName(styleErreur);
}
@Override
public void afficherStyleErreurPrenom(String styleErreur) {
prenom.addStyleName(styleErreur);
propositionTaxon.addStyleName(styleErreur);
}
 
@Override
public void afficherNomPrenomEtDesactiver(String nomPrenomFormate) {
nomPrenom.setText(nomPrenomFormate);
nomPrenom.setEnabled(false);
public void supprimerStyleErreurPrenom(String styleErreur) {
prenom.removeStyleName(styleErreur);
propositionTaxon.removeStyleName(styleErreur);
}
 
@Override
public void afficherNomPrenomEtDesactiver(String nom, String prenom) {
this.nom.setText(nom);
this.prenom.setText(prenom);
this.nom.setEnabled(false);
this.prenom.setEnabled(false);
}
@Override
public void afficherEmailEtDesactiver(String courriel) {
emailAuteur.setText(courriel);
emailAuteur.setEnabled(false);
this.courriel.setText(courriel);
this.courriel.setEnabled(false);
}
 
@Override
public String getEmailAuteur() {
return emailAuteur.getText();
public String getCourriel() {
return courriel.getText();
}
 
@Override
public String getNom() {
return nom.getText();
}
 
@Override
public String getPrenom() {
return prenom.getText();
}
 
 
@Override
public HasText getObjetNom() {
return this.nom;
}
@Override
public HasText getObjetPrenom() {
return this.prenom;
}
 
}