Subversion Repositories eFlore/Applications.del

Rev

Details | Last modification | View Log | RSS feed

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