Subversion Repositories eFlore/Applications.del

Rev

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

Rev Author Line No. Line
41 aurelien 1
package org.tela_botanica.del.client.vues.plateformedetermination;
2
 
170 aurelien 3
import java.util.List;
4
 
181 benjamin 5
import org.tela_botanica.del.client.cache.CacheClient;
170 aurelien 6
import org.tela_botanica.del.client.modeles.MoyenneVote;
248 aurelien 7
import org.tela_botanica.del.client.modeles.VoteDetermination;
8
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
9
import org.tela_botanica.del.client.navigation.evenement.ajoutdetermination.EvenementAjoutDetermination;
10
import org.tela_botanica.del.client.navigation.evenement.ajoutdetermination.GestionnaireEvenementAjoutDetermination;
11
import org.tela_botanica.del.client.navigation.evenement.voteDetermination.EvenementVoteDetermination;
12
import org.tela_botanica.del.client.navigation.evenement.voteDetermination.GestionnaireEvenementVoteDetermination;
170 aurelien 13
import org.tela_botanica.del.client.services.CalculVoteDeterminationService;
46 aurelien 14
import org.tela_botanica.del.client.vues.plateformedetermination.detail.DetailImageObservationPresenteur;
15
import org.tela_botanica.del.client.vues.plateformedetermination.formulaireproposition.FormulairePropositionPresenteur;
72 aurelien 16
import org.tela_botanica.del.client.vues.plateformedetermination.formulairerechercheeflore.FormulaireRechercheEflorePresenteur;
46 aurelien 17
import org.tela_botanica.del.client.vues.plateformedetermination.forum.ForumPresenteur;
103 benjamin 18
import org.tela_botanica.del.client.vues.plateformedetermination.vote.EnsembleVotesPresenteur;
140 aurelien 19
import org.tela_botanica.del.client.vues.plateformedetermination.vote.barrerepartition.BarreRepartitionVotePresenteur;
41 aurelien 20
 
21
import com.google.gwt.user.client.ui.HasWidgets;
22
 
46 aurelien 23
public class DeterminationPresenteur {
135 gduche 24
 
46 aurelien 25
	DeterminationVue determinationVue = new DeterminationVue();
170 aurelien 26
	BarreRepartitionVotePresenteur barreRepartitionVotePresenteur;
183 gduche 27
 
46 aurelien 28
	public DeterminationPresenteur() {
41 aurelien 29
 
30
	}
135 gduche 31
 
41 aurelien 32
	public void go(HasWidgets composite) {
135 gduche 33
 
46 aurelien 34
		new DetailImageObservationPresenteur().go(determinationVue.getDetailImageObservation());
103 benjamin 35
		new EnsembleVotesPresenteur().go(determinationVue.getVote());
46 aurelien 36
		new ForumPresenteur().go(determinationVue.getForum());
37
		new FormulairePropositionPresenteur().go(determinationVue.getFormulaireProposition());
135 gduche 38
		new FormulaireRechercheEflorePresenteur().go(determinationVue.getFormulaireRechercheEflore());
183 gduche 39
 
170 aurelien 40
		barreRepartitionVotePresenteur = new BarreRepartitionVotePresenteur();
41
		barreRepartitionVotePresenteur.go(determinationVue.getBarreRepartition());
42
		calculerEtAfficherVoteDeterminationPlusPopulaire();
183 gduche 43
 
46 aurelien 44
		composite.add(determinationVue);
248 aurelien 45
 
46
		gererEvenements();
41 aurelien 47
	}
183 gduche 48
 
170 aurelien 49
	private void calculerEtAfficherVoteDeterminationPlusPopulaire() {
183 gduche 50
 
234 gduche 51
		List<MoyenneVote> votesOrdonnes = CalculVoteDeterminationService.calculerVoteDeterminationPlusPopulaire(CacheClient.getInstance().getObservationCourante().getPropositionsDetermination());
183 gduche 52
		if (votesOrdonnes.size() > 0) {
188 aurelien 53
			barreRepartitionVotePresenteur.afficherVotes(votesOrdonnes.get(0));
170 aurelien 54
		}
55
	}
248 aurelien 56
 
57
	public void gererEvenements() {
58
		BusEvenementiel.getInstance().addHandler(EvenementVoteDetermination.TYPE, new GestionnaireEvenementVoteDetermination() {
59
 
60
			@Override
61
			public void onVoteDetermination(VoteDetermination event) {
62
				calculerEtAfficherVoteDeterminationPlusPopulaire();
63
			}
64
		});
65
	}
41 aurelien 66
}