Subversion Repositories eFlore/Applications.del

Rev

Rev 1667 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
447 gduche 1
package org.tela_botanica.del.client.composants.metadonnees;
2
 
1223 gduche 3
import org.tela_botanica.del.client.cache.CacheClient;
1342 gduche 4
import org.tela_botanica.del.client.config.Config;
1223 gduche 5
import org.tela_botanica.del.client.gestionhistorique.ConstantesNavigation;
6
 
447 gduche 7
import com.google.gwt.core.client.GWT;
552 benjamin 8
import com.google.gwt.event.dom.client.HasClickHandlers;
447 gduche 9
import com.google.gwt.uibinder.client.UiBinder;
10
import com.google.gwt.uibinder.client.UiField;
1342 gduche 11
import com.google.gwt.user.client.Window;
1214 gduche 12
import com.google.gwt.user.client.ui.Anchor;
447 gduche 13
import com.google.gwt.user.client.ui.Composite;
564 benjamin 14
import com.google.gwt.user.client.ui.HTML;
447 gduche 15
import com.google.gwt.user.client.ui.HasText;
552 benjamin 16
import com.google.gwt.user.client.ui.Hyperlink;
471 aurelien 17
import com.google.gwt.user.client.ui.InlineLabel;
570 gduche 18
import com.google.gwt.user.client.ui.Label;
1026 gduche 19
import com.google.gwt.user.client.ui.Panel;
447 gduche 20
import com.google.gwt.user.client.ui.Widget;
21
 
22
public class MetadonneesVue extends Composite implements MetadonneesPresenteur.Vue {
23
	// Gestion d'UiBinder
24
	interface Binder extends UiBinder<Widget, MetadonneesVue> {
25
	}
552 benjamin 26
 
447 gduche 27
	private static Binder binder = GWT.create(Binder.class);
552 benjamin 28
 
29
	@UiField
1393 aurelien 30
	Label nomRetenu, famille, auteur, localite, motsClefs, numNomenclatural, nomCommun, commentaire, milieu, station, referentiel;
1667 jpm 31
 
552 benjamin 32
	@UiField
1667 jpm 33
	Anchor courrielAuteur;
34
 
35
	@UiField
564 benjamin 36
	HTML lieuDit;
37
 
38
	@UiField
1026 gduche 39
	Panel zoneStation;
40
 
41
	@UiField
552 benjamin 42
	InlineLabel dateReleve, dateTransmission;
43
 
1214 gduche 44
	@UiField
45
	Anchor lienIdentiplante;
46
 
447 gduche 47
	public MetadonneesVue() {
48
		initWidget(binder.createAndBindUi(this));
1553 jpm 49
 
50
		// Le lien ne doit être affiché que sur pictoflora
51
		String urlCourante = Window.Location.getHref();
52
		Config config = new Config();
53
		String urlAppliImg = config.getUrl("pictoflora");
1592 aurelien 54
		if (!urlCourante.contains(urlAppliImg)) {
1223 gduche 55
			lienIdentiplante.setVisible(false);
56
		}
447 gduche 57
	}
552 benjamin 58
 
447 gduche 59
	public HasText getNomRetenu() {
60
		return this.nomRetenu;
61
	}
552 benjamin 62
 
447 gduche 63
	public HasText getFamille() {
64
		return this.famille;
65
	}
552 benjamin 66
 
447 gduche 67
	public HasText getAuteur() {
68
		return this.auteur;
69
	}
552 benjamin 70
 
1667 jpm 71
	public HasText getCourrielAuteur() {
72
		return this.courrielAuteur;
73
	}
74
 
75
	public void setCourrielAuteurHref(String courriel) {
76
		this.courrielAuteur.setHref("mailto:"+courriel);
77
	}
78
 
449 gduche 79
	public HasText getDateTransmission() {
80
		return this.dateTransmission;
447 gduche 81
	}
552 benjamin 82
 
449 gduche 83
	public HasText getDateReleve() {
84
		return this.dateReleve;
85
	}
552 benjamin 86
 
447 gduche 87
	public HasText getLocalite() {
88
		return this.localite;
89
	}
552 benjamin 90
 
447 gduche 91
	public HasText getMotsClefs() {
92
		return this.motsClefs;
93
	}
552 benjamin 94
 
447 gduche 95
	public HasText getNumNomenclatural() {
96
		return this.numNomenclatural;
97
	}
98
 
99
	public HasText getNomCommun() {
100
		return nomCommun;
101
	}
102
 
103
	public HasText getLieuDit() {
104
		return lieuDit;
105
	}
106
 
107
	public HasText getMilieu() {
108
		return milieu;
109
	}
110
 
111
	public HasText getCommentaire() {
112
		return commentaire;
113
	}
552 benjamin 114
 
115
	@Override
116
	public HasClickHandlers getLienNomRetenu() {
117
		return nomRetenu;
118
	}
564 benjamin 119
 
552 benjamin 120
	public HasClickHandlers getLienFamille() {
121
		return this.famille;
122
	}
123
 
124
	public HasClickHandlers getLienAuteur() {
125
		return this.auteur;
126
	}
1667 jpm 127
 
128
	public HasClickHandlers getLienCourrielAuteur() {
129
		return this.courrielAuteur;
130
	}
552 benjamin 131
 
132
	public HasClickHandlers getLienDateTransmission() {
133
		return this.dateTransmission;
134
	}
135
 
136
	public HasClickHandlers getLienDateReleve() {
137
		return this.dateReleve;
138
	}
139
 
140
	public HasClickHandlers getLienLocalite() {
141
		return this.localite;
142
	}
143
 
144
	public HasClickHandlers getLienMotsClefs() {
145
		return this.motsClefs;
146
	}
147
 
148
	public HasClickHandlers getLienNumNomenclatural() {
149
		return this.numNomenclatural;
150
	}
151
 
152
	public HasClickHandlers getLienNomCommun() {
153
		return nomCommun;
154
	}
155
 
156
	public HasClickHandlers getLienMilieu() {
157
		return milieu;
158
	}
159
 
160
	public HasClickHandlers getLienCommentaire() {
161
		return commentaire;
162
	}
163
 
570 gduche 164
	@Override
165
	public void masquerChampsVides() {
1667 jpm 166
		HasText[] champs = {nomRetenu, nomCommun, famille, localite, auteur, motsClefs, commentaire, milieu, lieuDit, dateReleve, dateTransmission};
570 gduche 167
		for (int i = 0; i < champs.length; i ++) {
168
			HasText champ = champs[i];
169
			if ("".equals(champ.getText())) {
170
				Widget widget = (Widget) champ;
171
				widget.getParent().setVisible(false);
172
			}
173
		}
174
	}
175
 
1026 gduche 176
	@Override
177
	public void setStation(String station) {
178
		if (station.equals("")) {
179
			this.zoneStation.setVisible(false);
180
		} else {
181
			this.station.setText(station);
1667 jpm 182
		}
1026 gduche 183
	}
1078 gduche 184
 
185
	public void activerLiens() {
186
		dateReleve.addStyleName("labelLien");
187
		nomRetenu.addStyleName("labelLien");
188
		famille.addStyleName("labelLien");
189
		auteur.addStyleName("labelLien");
190
		localite.addStyleName("labelLien");
191
		motsClefs.addStyleName("labelLien");
192
		nomCommun.addStyleName("labelLien");
193
		commentaire.addStyleName("labelLien");
194
		milieu.addStyleName("labelLien");
195
	}
1026 gduche 196
 
1079 gduche 197
	@Override
198
	public void activerLienAuteur() {
199
		auteur.addStyleName("labelLien");
200
	}
1282 aurelien 201
 
202
	@Override
203
	public void desactiverLienAuteur() {
204
		auteur.removeStyleName("labelLien");
205
	}
1079 gduche 206
 
1342 gduche 207
	public void setLienIdentiplante(String id) {
1592 aurelien 208
		lienIdentiplante.setHref(CacheClient.getInstance().getUrlPageSignalerMauvaiseId(id));
1342 gduche 209
		lienIdentiplante.setTarget("_blank");
1214 gduche 210
	}
1393 aurelien 211
 
212
	@Override
213
	public HasText getReferentiel() {
214
		return referentiel;
215
	}
1531 mathias 216
 
217
	@Override
218
	public void activerLienNomRetenu() {
219
		// TODO Auto-generated method stub
220
	}
1667 jpm 221
 
222
	public void afficherCourrielAuteur() {
223
		courrielAuteur.setVisible(true);
224
	}
225
	public void cacherCourrielAuteur() {
226
		courrielAuteur.setVisible(false);
227
	}
447 gduche 228
}