Subversion Repositories eFlore/Applications.del

Rev

Rev 140 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
46 aurelien 1
package org.tela_botanica.del.client.vues.plateformedetermination.formulaireproposition;
2
 
95 aurelien 3
import java.util.Date;
46 aurelien 4
 
85 benjamin 5
import org.tela_botanica.del.client.cache.CacheClient;
105 aurelien 6
import org.tela_botanica.del.client.composants.validation.TextNotNullFormValidator;
140 aurelien 7
import org.tela_botanica.del.client.modeles.Commentaire;
8
import org.tela_botanica.del.client.modeles.PropositionDetermination;
46 aurelien 9
import org.tela_botanica.del.client.utils.MockDatasource;
10
 
77 aurelien 11
import com.google.gwt.event.dom.client.ClickEvent;
12
import com.google.gwt.event.dom.client.ClickHandler;
46 aurelien 13
import com.google.gwt.user.client.ui.HasWidgets;
14
 
140 aurelien 15
public class FormulairePropositionPresenteur {
85 benjamin 16
 
46 aurelien 17
	private FormulairePropositionVue formulairePropositionVue = new FormulairePropositionVue();
85 benjamin 18
 
46 aurelien 19
	public void go(HasWidgets composite) {
85 benjamin 20
 
128 aurelien 21
		formulairePropositionVue.chargerPourcentagesConfiance(MockDatasource.getInstance().getPourcentagesConfiance());
46 aurelien 22
		composite.add(formulairePropositionVue);
95 aurelien 23
 
24
		gererEvenements();
46 aurelien 25
	}
85 benjamin 26
 
77 aurelien 27
	private void gererEvenements() {
28
		formulairePropositionVue.getBoutonValidationProposition().addClickHandler(new ClickHandler() {
29
 
30
			@Override
31
			public void onClick(ClickEvent event) {
105 aurelien 32
 
33
				if(!validerSaisieProposition()) {
34
					return;
77 aurelien 35
				} else {
140 aurelien 36
					PropositionDetermination propositionAjoutee = collecterValeursSaisieProposition();
111 aurelien 37
					CacheClient.getInstance().getCurrentObservation().addImageCelValidationData(propositionAjoutee);
77 aurelien 38
				}
85 benjamin 39
			}
77 aurelien 40
		});
41
	}
105 aurelien 42
 
43
	private boolean validerSaisieProposition() {
44
 
140 aurelien 45
		TextNotNullFormValidator validateurTaxon = new TextNotNullFormValidator(formulairePropositionVue.getNomPrenom());
46
		boolean taxonSaisi = validateurTaxon.validate();
105 aurelien 47
 
140 aurelien 48
		return taxonSaisi;
105 aurelien 49
	}
50
 
140 aurelien 51
	private PropositionDetermination collecterValeursSaisieProposition() {
105 aurelien 52
 
140 aurelien 53
		PropositionDetermination propositionAjoutee = new PropositionDetermination();
148 benjamin 54
		propositionAjoutee.setId(CacheClient.getInstance().getImageCourante().getIdImage());
140 aurelien 55
 
56
		String auteur = formulairePropositionVue.getNomPrenom().getText();
57
		if(formulairePropositionVue.getCommentaires().getText() != "") {
58
			String contenuCommentaire = formulairePropositionVue.getCommentaires().getText();
59
			Commentaire comm = new Commentaire(auteur, new Date(),contenuCommentaire);
60
			propositionAjoutee.ajouterCommentaire(comm);
61
		}
62
		propositionAjoutee.setContributeur(auteur);
105 aurelien 63
		propositionAjoutee.setDate(new Date());
64
 
140 aurelien 65
		propositionAjoutee.setEspece(formulairePropositionVue.getPropositionTaxon().getText());
128 aurelien 66
		propositionAjoutee.setPourcentageConfiance(formulairePropositionVue.getPourcentageConfiance().getValue(formulairePropositionVue.getPourcentageConfiance().getSelectedIndex()));
105 aurelien 67
 
68
		return propositionAjoutee;
69
	}
46 aurelien 70
}