Subversion Repositories eFlore/Applications.del

Rev

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

Rev 1543 Rev 1667
Line 1... Line 1...
1
package org.tela_botanica.del.client.vues.pictoflora.resultats.images;
1
package org.tela_botanica.del.client.vues.pictoflora.resultats.images;
Line 2... Line 2...
2
 
2
 
-
 
3
import java.util.HashMap;
Line 3... Line 4...
3
import java.util.HashMap;
4
import java.util.List;
4
 
5
 
5
import org.tela_botanica.del.client.cache.CacheClient;
6
import org.tela_botanica.del.client.cache.CacheClient;
6
import org.tela_botanica.del.client.composants.fenetreoverlay.FenetreOverlayDefilanteVue;
7
import org.tela_botanica.del.client.composants.fenetreoverlay.FenetreOverlayDefilanteVue;
Line 17... Line 18...
17
import org.tela_botanica.del.client.composants.votes.moyennevotes.MoyenneVotePresenteur;
18
import org.tela_botanica.del.client.composants.votes.moyennevotes.MoyenneVotePresenteur;
18
import org.tela_botanica.del.client.composants.votes.moyennevotes.MoyenneVoteVue;
19
import org.tela_botanica.del.client.composants.votes.moyennevotes.MoyenneVoteVue;
19
import org.tela_botanica.del.client.config.Config;
20
import org.tela_botanica.del.client.config.Config;
20
import org.tela_botanica.del.client.modeles.Image;
21
import org.tela_botanica.del.client.modeles.Image;
21
import org.tela_botanica.del.client.modeles.ModeRecherche;
22
import org.tela_botanica.del.client.modeles.ModeRecherche;
-
 
23
import org.tela_botanica.del.client.modeles.MoyenneVote;
22
import org.tela_botanica.del.client.modeles.Observation;
24
import org.tela_botanica.del.client.modeles.Observation;
23
import org.tela_botanica.del.client.modeles.Protocole;
25
import org.tela_botanica.del.client.modeles.Protocole;
-
 
26
import org.tela_botanica.del.client.modeles.Utilisateur;
24
import org.tela_botanica.del.client.modeles.VoteProtocole;
27
import org.tela_botanica.del.client.modeles.VoteProtocole;
25
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
28
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
-
 
29
import org.tela_botanica.del.client.navigation.evenement.changementEtatUtilisateur.EvenementChangementEtatUtilisateur;
-
 
30
import org.tela_botanica.del.client.navigation.evenement.changementEtatUtilisateur.GestionnaireEvenementChangementEtatUtilisateur;
26
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.EvenementChangementProtocole;
31
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.EvenementChangementProtocole;
27
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.GestionnaireEvenementChangementProtocole;
32
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.GestionnaireEvenementChangementProtocole;
28
import org.tela_botanica.del.client.navigation.evenement.fermermotcleimage.EvenementFermerMotCleImage;
33
import org.tela_botanica.del.client.navigation.evenement.fermermotcleimage.EvenementFermerMotCleImage;
29
import org.tela_botanica.del.client.navigation.evenement.fermermotcleimage.GestionnaireEvenementFermerMotCleImage;
34
import org.tela_botanica.del.client.navigation.evenement.fermermotcleimage.GestionnaireEvenementFermerMotCleImage;
30
import org.tela_botanica.del.client.navigation.evenement.rechercheimage.EvenementVoirDetailsImage;
35
import org.tela_botanica.del.client.navigation.evenement.rechercheimage.EvenementVoirDetailsImage;
31
import org.tela_botanica.del.client.navigation.evenement.rechercheimage.GestionnaireEvenementVoirDetailsImage;
36
import org.tela_botanica.del.client.navigation.evenement.rechercheimage.GestionnaireEvenementVoirDetailsImage;
-
 
37
import org.tela_botanica.del.client.navigation.evenement.supprimerImage.EvenementSupprimerImage;
-
 
38
import org.tela_botanica.del.client.navigation.evenement.supprimerImage.GestionnaireEvenementSupprimerImage;
32
import org.tela_botanica.del.client.navigation.evenement.validationobservationpictoflora.EvenementValidationPictoflora;
39
import org.tela_botanica.del.client.navigation.evenement.validationobservationpictoflora.EvenementValidationPictoflora;
33
import org.tela_botanica.del.client.services.rest.MotsClesServiceConcret;
40
import org.tela_botanica.del.client.services.rest.MotsClesServiceConcret;
34
import org.tela_botanica.del.client.services.rest.VoteProtocoleServiceConcret;
41
import org.tela_botanica.del.client.services.rest.VoteProtocoleServiceConcret;
Line -... Line 42...
-
 
42
 
35
 
43
import com.google.gwt.core.shared.GWT;
36
import com.google.gwt.event.dom.client.ClickEvent;
44
import com.google.gwt.event.dom.client.ClickEvent;
37
import com.google.gwt.event.dom.client.ClickHandler;
45
import com.google.gwt.event.dom.client.ClickHandler;
38
import com.google.gwt.event.dom.client.HasClickHandlers;
46
import com.google.gwt.event.dom.client.HasClickHandlers;
39
import com.google.gwt.user.client.Window;
47
import com.google.gwt.user.client.Window;
Line 84... Line 92...
84
		public void afficherZoneMotsCles();
92
		public void afficherZoneMotsCles();
Line 85... Line 93...
85
		
93
		
Line 86... Line 94...
86
		public HasClickHandlers getBoutonFermer();
94
		public HasClickHandlers getBoutonFermer();
-
 
95
		
-
 
96
		public void ajouterStyleLienAuteur();
-
 
97
		
-
 
98
		public HasClickHandlers getBoutonSupprimerImage();
87
		
99
		public void cacherZoneActionsImage();
Line 88... Line 100...
88
		public void ajouterStyleLienAuteur();
100
		public void afficherZoneActionsImage();
Line 89... Line 101...
89
	}
101
	}
Line 124... Line 136...
124
		} catch(Exception e) {
136
		} catch(Exception e) {
125
			// pas de bol mon coco
137
			// pas de bol mon coco
126
		}
138
		}
127
		new MetadonneesPresenteur(new MetadonneesVue(), image.getObservation(), ModeRecherche.MODE_IMAGE, true).go(vue.getMetadonnees());
139
		new MetadonneesPresenteur(new MetadonneesVue(), image.getObservation(), ModeRecherche.MODE_IMAGE, true).go(vue.getMetadonnees());
128
		chargerDonneesValidation();
140
		chargerDonneesValidation();
-
 
141
		afficherZoneActionsImage();
129
		gererEvenements();
142
		gererEvenements();
130
	}
143
	}
Line 131... Line 144...
131
 
144
 
132
	private void chargerDonneesValidation() {
145
	private void chargerDonneesValidation() {
Line 144... Line 157...
144
		final Observation obs = image.getObservation();
157
		final Observation obs = image.getObservation();
145
		BusEvenementiel.getInstance().fireEvent(new EvenementValidationPictoflora(obs));
158
		BusEvenementiel.getInstance().fireEvent(new EvenementValidationPictoflora(obs));
146
	}
159
	}
Line 147... Line 160...
147
 
160
 
148
	protected void gererEvenements() {
-
 
149
		
161
	protected void gererEvenements() {
150
		ClickHandler zoomeur = new ClickHandler() {
162
		ClickHandler zoomeur = new ClickHandler() {
151
			public void onClick(ClickEvent event) {
163
			public void onClick(ClickEvent event) {
152
				FenetreOverlaySimplePresenteur presenteurGalerie = new FenetreOverlaySimplePresenteur(new FenetreOverlayDefilanteVue());
164
				FenetreOverlaySimplePresenteur presenteurGalerie = new FenetreOverlaySimplePresenteur(new FenetreOverlayDefilanteVue());
153
				presenteurGalerie.ouvrirFenetreModaleDefilante(0, new DetailImagePresenteur(image, new DetailImageVue()));
165
				presenteurGalerie.ouvrirFenetreModaleDefilante(0, new DetailImagePresenteur(image, new DetailImageVue()));
154
				presenteurGalerie.afficherBoutonsSuivantsPrecedents(false);
166
				presenteurGalerie.afficherBoutonsSuivantsPrecedents(false);
Line 155... Line 167...
155
			}};
167
			}};
Line 156... Line 168...
156
			
168
			
157
		vue.getImagePrincipale().addClickHandler(zoomeur);
-
 
158
 
169
		vue.getImagePrincipale().addClickHandler(zoomeur);
159
		vue.getEnSavoirPlus().addClickHandler(new ClickHandler() {
170
 
160
 
171
		vue.getEnSavoirPlus().addClickHandler(new ClickHandler() {
161
			@Override
172
			@Override
162
			public void onClick(ClickEvent event) {
173
			public void onClick(ClickEvent event) {
Line 163... Line 174...
163
				BusEvenementiel.getInstance().fireEvent(new EvenementVoirDetailsImage(image));
174
				BusEvenementiel.getInstance().fireEvent(new EvenementVoirDetailsImage(image));
164
			}
175
			}
165
		});
176
		});
166
		
177
		
167
		vue.getVoirMotsCles().addClickHandler(new ClickHandler() {
178
		vue.getVoirMotsCles().addClickHandler(new ClickHandler() {
-
 
179
			@Override
-
 
180
			public void onClick(ClickEvent event) {
-
 
181
				CacheClient.getInstance().setImageCourante(image);
-
 
182
				motsClesImagePresenteur = new MotsClesImagePresenteur(
-
 
183
					image, 
168
			@Override
184
					new MotsClesServiceConcret(), 
-
 
185
					new FormulaireSaisieMotsClesImagePresenteur(
169
			public void onClick(ClickEvent event) {
186
						image.getIdImage(), 
170
				CacheClient.getInstance().setImageCourante(image);
187
						new MotsClesServiceConcret(), 
171
				motsClesImagePresenteur = new MotsClesImagePresenteur(image, new MotsClesServiceConcret(), new FormulaireSaisieMotsClesImagePresenteur(image.getIdImage(),
188
						new FormulaireSaisieMotsClesImageVue()), 
172
																										new MotsClesServiceConcret(), new FormulaireSaisieMotsClesImageVue()), new MotsClesImageVue());
189
					new MotsClesImageVue());
Line 173... Line 190...
173
				motsClesImagePresenteur.chargerMotsCles();
190
				motsClesImagePresenteur.chargerMotsCles();
174
				fenetreOverlaySimplePresenteur.ouvrirFenetreModale(motsClesImagePresenteur);
191
				fenetreOverlaySimplePresenteur.ouvrirFenetreModale(motsClesImagePresenteur);
175
			}
192
			}
176
		});
193
		});
177
		
194
		
178
		vue.getBoutonFermer().addClickHandler(new ClickHandler() {
195
		vue.getBoutonFermer().addClickHandler(new ClickHandler() {
179
			@Override
196
			@Override
180
			public void onClick(ClickEvent event) {
197
			public void onClick(ClickEvent event) {
181
					cacherPanneauMotsCles();
198
				cacherPanneauMotsCles();
Line 203... Line 220...
203
				chargerDonneesValidation();
220
				chargerDonneesValidation();
204
			}
221
			}
205
		});
222
		});
Line 206... Line 223...
206
		
223
		
207
		BusEvenementiel.getInstance().addHandler(EvenementFermerMotCleImage.TYPE, new GestionnaireEvenementFermerMotCleImage() {
-
 
208
			
224
		BusEvenementiel.getInstance().addHandler(EvenementFermerMotCleImage.TYPE, new GestionnaireEvenementFermerMotCleImage() {
209
			@Override
225
			@Override
210
			public void onFermerMotCleImage(
226
			public void onFermerMotCleImage(
211
					EvenementFermerMotCleImage evenementFermerMotCleImage) {
227
					EvenementFermerMotCleImage evenementFermerMotCleImage) {
212
				if (evenementFermerMotCleImage.getIdImage().equals(image.getIdImage())) {
228
				if (evenementFermerMotCleImage.getIdImage().equals(image.getIdImage())) {
213
					fenetreOverlaySimplePresenteur.fermerFenetreModale();
229
					fenetreOverlaySimplePresenteur.fermerFenetreModale();
214
				}
230
				}
215
			}
231
			}
-
 
232
		});
-
 
233
		
-
 
234
		
-
 
235
		BusEvenementiel.getInstance().addHandler(EvenementSupprimerImage.TYPE, new GestionnaireEvenementSupprimerImage() {
-
 
236
			@Override
-
 
237
			public void onSuppressionImage(EvenementSupprimerImage event) {
-
 
238
				GWT.log("Attraper evnt : EvenementSupprimerImage (img:"+image.getIdImage()+")");
-
 
239
				if (event.getIdImage().equals(image.getIdImage())) {
-
 
240
					supprimerImg();
-
 
241
				}
-
 
242
			}
-
 
243
		});
-
 
244
		vue.getBoutonSupprimerImage().addClickHandler(new ClickHandler() {
-
 
245
			@Override
-
 
246
			public void onClick(ClickEvent event) {
-
 
247
				GWT.log("Lancer evnt : EvenementSupprimerImage");
-
 
248
				BusEvenementiel.getInstance().fireEvent(new EvenementSupprimerImage(image.getIdImage()));
-
 
249
			}
-
 
250
		});
-
 
251
		
-
 
252
		BusEvenementiel.getInstance().addHandler(EvenementChangementEtatUtilisateur.TYPE, new GestionnaireEvenementChangementEtatUtilisateur() {
-
 
253
			@Override
-
 
254
			public void onModificationEtatUtilisateur(EvenementChangementEtatUtilisateur evenementChangementEtatUtilisateur) {
-
 
255
				afficherZoneActionsImage();
-
 
256
			}
-
 
257
		});
216
		});
258
		
Line -... Line 259...
-
 
259
	}
-
 
260
 
-
 
261
	private void supprimerImg() {
-
 
262
		GWT.log("supprimerImg :"+image.getIdImage());
-
 
263
		vue.asWidget().removeFromParent();
217
	}
264
	}
218
 
265
	
219
	protected void afficherPanneauMotsCles() {
266
	protected void afficherPanneauMotsCles() {
220
		vue.afficherZoneMotsCles();
267
		vue.afficherZoneMotsCles();
221
		motsClesOuverts = true;
268
		motsClesOuverts = true;
Line 247... Line 294...
247
	}
294
	}
Line 248... Line 295...
248
 
295
 
249
	public void setProtocole(Protocole protocole) {
296
	public void setProtocole(Protocole protocole) {
250
		this.protocole = protocole;
297
		this.protocole = protocole;
-
 
298
	}
-
 
299
	
-
 
300
	private void afficherZoneActionsImage() {
-
 
301
		if (devoirAfficherZoneActionsImage()) {
-
 
302
			vue.afficherZoneActionsImage();
-
 
303
		} else {
-
 
304
			vue.cacherZoneActionsImage();
-
 
305
		}
-
 
306
	}
-
 
307
	
-
 
308
	private boolean devoirAfficherZoneActionsImage() {
-
 
309
		Utilisateur utilisateur = CacheClient.getInstance().getUtilisateur();
-
 
310
		boolean etreAdmin = false;
-
 
311
		if (utilisateur.etreAdmin()) {
-
 
312
			GWT.log("admin");
-
 
313
		} else {
-
 
314
			GWT.log("PAS admin");
-
 
315
		}
-
 
316
		
-
 
317
		if (utilisateur != null) {
-
 
318
			etreAdmin = utilisateur.estIdentifie() && utilisateur.etreAdmin();
-
 
319
		}
-
 
320
		return etreAdmin;
251
	}
321
	}
252
}
322
}