Subversion Repositories eFlore/Applications.del

Rev

Rev 1208 | Rev 1314 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1208 Rev 1257
Line 18... Line 18...
18
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
18
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
19
import org.tela_botanica.del.client.composants.rss.RssPresenteur;
19
import org.tela_botanica.del.client.composants.rss.RssPresenteur;
20
import org.tela_botanica.del.client.composants.rss.RssVue;
20
import org.tela_botanica.del.client.composants.rss.RssVue;
21
import org.tela_botanica.del.client.config.Config;
21
import org.tela_botanica.del.client.config.Config;
22
import org.tela_botanica.del.client.gestionhistorique.ConstantesNavigation;
22
import org.tela_botanica.del.client.gestionhistorique.ConstantesNavigation;
-
 
23
import org.tela_botanica.del.client.i18n.I18n;
23
import org.tela_botanica.del.client.modeles.Image;
24
import org.tela_botanica.del.client.modeles.Image;
24
import org.tela_botanica.del.client.modeles.ModeRecherche;
25
import org.tela_botanica.del.client.modeles.ModeRecherche;
25
import org.tela_botanica.del.client.modeles.MoyenneVote;
26
import org.tela_botanica.del.client.modeles.MoyenneVote;
26
import org.tela_botanica.del.client.modeles.Observation;
27
import org.tela_botanica.del.client.modeles.Observation;
27
import org.tela_botanica.del.client.modeles.ObservationServiceResultat;
28
import org.tela_botanica.del.client.modeles.ObservationServiceResultat;
-
 
29
import org.tela_botanica.del.client.modeles.PropositionDetermination;
-
 
30
import org.tela_botanica.del.client.modeles.Utilisateur;
28
import org.tela_botanica.del.client.modeles.VoteDetermination;
31
import org.tela_botanica.del.client.modeles.VoteDetermination;
29
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
32
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
30
import org.tela_botanica.del.client.navigation.evenement.ajoutcommentaire.EvenementAjoutCommentaire;
33
import org.tela_botanica.del.client.navigation.evenement.ajoutcommentaire.EvenementAjoutCommentaire;
31
import org.tela_botanica.del.client.navigation.evenement.ajoutcommentaire.GestionnaireEvenementAjoutCommentaire;
34
import org.tela_botanica.del.client.navigation.evenement.ajoutcommentaire.GestionnaireEvenementAjoutCommentaire;
32
import org.tela_botanica.del.client.navigation.evenement.ajoutdetermination.EvenementAjoutDetermination;
35
import org.tela_botanica.del.client.navigation.evenement.ajoutdetermination.EvenementAjoutDetermination;
33
import org.tela_botanica.del.client.navigation.evenement.ajoutdetermination.GestionnaireEvenementAjoutDetermination;
36
import org.tela_botanica.del.client.navigation.evenement.ajoutdetermination.GestionnaireEvenementAjoutDetermination;
34
import org.tela_botanica.del.client.navigation.evenement.changementimagevalidation.EvenementChangementImageValidation;
37
import org.tela_botanica.del.client.navigation.evenement.changementimagevalidation.EvenementChangementImageValidation;
35
import org.tela_botanica.del.client.navigation.evenement.changementimagevalidation.GestionnaireEvenementChangementImageValidation;
38
import org.tela_botanica.del.client.navigation.evenement.changementimagevalidation.GestionnaireEvenementChangementImageValidation;
-
 
39
import org.tela_botanica.del.client.navigation.evenement.validationobservation.EvenementValidation;
-
 
40
import org.tela_botanica.del.client.navigation.evenement.validationobservationpictoflora.EvenementValidationPictoflora;
36
import org.tela_botanica.del.client.navigation.evenement.voteDetermination.EvenementVoteDetermination;
41
import org.tela_botanica.del.client.navigation.evenement.voteDetermination.EvenementVoteDetermination;
37
import org.tela_botanica.del.client.navigation.evenement.voteDetermination.GestionnaireEvenementVoteDetermination;
42
import org.tela_botanica.del.client.navigation.evenement.voteDetermination.GestionnaireEvenementVoteDetermination;
38
import org.tela_botanica.del.client.services.CalculVoteDeterminationService;
43
import org.tela_botanica.del.client.services.CalculVoteDeterminationService;
39
import org.tela_botanica.del.client.services.rest.CommentaireServiceConcret;
44
import org.tela_botanica.del.client.services.rest.CommentaireServiceConcret;
40
import org.tela_botanica.del.client.services.rest.ObservationService;
45
import org.tela_botanica.del.client.services.rest.ObservationService;
41
import org.tela_botanica.del.client.services.rest.PropositionDeterminationServiceConcret;
46
import org.tela_botanica.del.client.services.rest.PropositionDeterminationServiceConcret;
42
import org.tela_botanica.del.client.services.rest.async.ObservationsCallback;
47
import org.tela_botanica.del.client.services.rest.async.ObservationsCallback;
-
 
48
import org.tela_botanica.del.client.services.rest.async.ValidationPropositionCallback;
43
import org.tela_botanica.del.client.utils.URLUtils;
49
import org.tela_botanica.del.client.utils.URLUtils;
44
import org.tela_botanica.del.client.composants.formulairerechercheeflore.FormulaireRechercheEflorePresenteur;
50
import org.tela_botanica.del.client.composants.formulairerechercheeflore.FormulaireRechercheEflorePresenteur;
45
import org.tela_botanica.del.client.composants.forum.ForumPresenteur;
51
import org.tela_botanica.del.client.composants.forum.ForumPresenteur;
46
import org.tela_botanica.del.client.composants.forum.ForumVue;
52
import org.tela_botanica.del.client.composants.forum.ForumVue;
Line 85... Line 91...
85
		public HasClickHandlers getLienCles();
91
		public HasClickHandlers getLienCles();
Line 86... Line 92...
86
		
92
		
Line 87... Line 93...
87
		public HasClickHandlers getLienEflore();
93
		public HasClickHandlers getLienEflore();
-
 
94
	
-
 
95
		public HasWidgets getZoneRss();
-
 
96
 
-
 
97
		HasClickHandlers getBoutonValidationTaxon();
-
 
98
 
-
 
99
		void cacherBoutonValidationTaxon();
-
 
100
 
-
 
101
		void afficherBoutonValidationTaxon();
88
	
102
 
Line 89... Line 103...
89
		public HasWidgets getZoneRss();
103
		public void viderMetadonnees();
90
	}
104
	}
Line 91... Line 105...
91
 
105
 
92
	private Vue vue;
106
	private Vue vue;
Line 93... Line 107...
93
	private FenetreOverlaySimplePresenteur fenetreOverlaySimplePresenteur;
107
	private FenetreOverlaySimplePresenteur fenetreOverlaySimplePresenteur;
-
 
108
 
-
 
109
	// Déclaration des services à utiliser
Line 94... Line 110...
94
 
110
	private ObservationService observationService;
95
	// Déclaration des services à utiliser
111
 
96
	private ObservationService observationService;
112
	private CacheClient cache = CacheClient.getInstance();
97
 
113
	
Line 98... Line 114...
98
	private CacheClient cache = CacheClient.getInstance();
114
	private PropositionDetermination propositionPlusPopulaire;
99
 
-
 
100
	public IdentiplanteDeterminationPresenteur(Vue vue, ObservationService observationService) {
115
 
101
		this.vue = vue;
116
	public IdentiplanteDeterminationPresenteur(Vue vue, ObservationService observationService) {
102
		this.observationService = observationService;
117
		this.vue = vue;
103
	}
118
		this.observationService = observationService;
Line 152... Line 167...
152
 
167
 
153
		List<MoyenneVote> votesOrdonnes = CalculVoteDeterminationService.calculerVoteDeterminationPlusPopulaire(cache.getObservationCourante().getPropositionDeterminations());
168
		List<MoyenneVote> votesOrdonnes = CalculVoteDeterminationService.calculerVoteDeterminationPlusPopulaire(cache.getObservationCourante().getPropositionDeterminations());
154
		if (votesOrdonnes.size() > 0) {
169
		if (votesOrdonnes.size() > 0) {
155
			nomTaxon = votesOrdonnes.get(0).getIntituleAssocie();
170
			nomTaxon = votesOrdonnes.get(0).getIntituleAssocie();
-
 
171
		}
-
 
172
		
-
 
173
		propositionPlusPopulaire = votesOrdonnes.get(0).getPropositionAssociee();
-
 
174
		boolean estPropositionInitiale = votesOrdonnes.get(0).getPropositionAssociee().estPropositionInitiale();
-
 
175
		Utilisateur utilisateur = CacheClient.getInstance().getUtilisateur();
-
 
176
		boolean estAuteurObservation = utilisateur.estIdentifie() && utilisateur.getId().equals(cache.getObservationCourante().getIdAuteur());
-
 
177
		if(!estAuteurObservation || estPropositionInitiale || nomTaxon.equals(observation.getNomRetenu())) {
-
 
178
			vue.cacherBoutonValidationTaxon();
-
 
179
		} else {
-
 
180
			vue.afficherBoutonValidationTaxon();
Line 156... Line 181...
156
		}
181
		}
157
 
182
 
Line 158... Line 183...
158
		vue.afficherNomTaxonProbable(nomTaxon);
183
		vue.afficherNomTaxonProbable(nomTaxon);
Line 250... Line 275...
250
			public void onClick(ClickEvent event) {
275
			public void onClick(ClickEvent event) {
251
				Config config = new Config();
276
				Config config = new Config();
252
				Window.open(config.getUrl("eflore"), "eFlore", null);
277
				Window.open(config.getUrl("eflore"), "eFlore", null);
253
			}
278
			}
254
		});
279
		});
-
 
280
		
-
 
281
		vue.getBoutonValidationTaxon().addClickHandler(new ClickHandler() {
-
 
282
			
-
 
283
			@Override
-
 
284
			public void onClick(ClickEvent event) {
-
 
285
				if(Window.confirm(I18n.getVocabulary().confirmationValidationDetermination())) {
-
 
286
					validerPropositionPlusPopulaire();
-
 
287
				}
-
 
288
			}
-
 
289
		});
-
 
290
	}
-
 
291
	
-
 
292
	private void validerPropositionPlusPopulaire() {
-
 
293
		PropositionDeterminationServiceConcret propositionService = new PropositionDeterminationServiceConcret();
-
 
294
		propositionService.validerProposition(propositionPlusPopulaire, new ValidationPropositionCallback() {
-
 
295
			@Override
-
 
296
			public void surRetour(String objetRetour) {
-
 
297
				String observationId = URLUtils.getURLSpecialParameterValue();
-
 
298
				observationService.getObservation(observationId, new ObservationsCallback() {
-
 
299
 
-
 
300
					@Override
-
 
301
					public void surRetour(ObservationServiceResultat objetRetour) {
-
 
302
						vue.viderMetadonnees();
-
 
303
						new MetadonneesPresenteur(new MetadonneesEnLigneVue(), cache.getObservationCourante(), ModeRecherche.MODE_OBSERVATION, false).go(vue.getMetadonnees());
-
 
304
						calculerEtAfficherVoteDeterminationPlusPopulaire();
-
 
305
					}
-
 
306
 
-
 
307
					@Override
-
 
308
					public void surErreur(String messageErreur) {
-
 
309
						Window.alert(messageErreur);
-
 
310
					}
-
 
311
				});
-
 
312
			}
-
 
313
		});
255
	}
314
	}
256
}
315
}