Subversion Repositories eFlore/Applications.del

Rev

Rev 1934 | 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
1995 aurelien 30
	Label nomRetenu, famille, auteur, pays, 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
		// 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");
1592 aurelien 53
		if (!urlCourante.contains(urlAppliImg)) {
1223 gduche 54
			lienIdentiplante.setVisible(false);
55
		}
447 gduche 56
	}
552 benjamin 57
 
447 gduche 58
	public HasText getNomRetenu() {
59
		return this.nomRetenu;
60
	}
552 benjamin 61
 
447 gduche 62
	public HasText getFamille() {
63
		return this.famille;
64
	}
552 benjamin 65
 
447 gduche 66
	public HasText getAuteur() {
67
		return this.auteur;
68
	}
552 benjamin 69
 
1667 jpm 70
	public HasText getCourrielAuteur() {
71
		return this.courrielAuteur;
72
	}
73
 
74
	public void setCourrielAuteurHref(String courriel) {
75
		this.courrielAuteur.setHref("mailto:"+courriel);
76
	}
77
 
449 gduche 78
	public HasText getDateTransmission() {
79
		return this.dateTransmission;
447 gduche 80
	}
552 benjamin 81
 
449 gduche 82
	public HasText getDateReleve() {
83
		return this.dateReleve;
84
	}
552 benjamin 85
 
447 gduche 86
	public HasText getLocalite() {
87
		return this.localite;
88
	}
552 benjamin 89
 
447 gduche 90
	public HasText getMotsClefs() {
91
		return this.motsClefs;
92
	}
552 benjamin 93
 
447 gduche 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
	}
1995 aurelien 113
 
114
	public HasText getPays() {
115
		return this.pays;
116
	}
552 benjamin 117
 
118
	@Override
119
	public HasClickHandlers getLienNomRetenu() {
120
		return nomRetenu;
121
	}
1995 aurelien 122
 
123
	public HasClickHandlers getLienPays() {
124
		return this.pays;
125
	}
564 benjamin 126
 
552 benjamin 127
	public HasClickHandlers getLienFamille() {
128
		return this.famille;
129
	}
130
 
131
	public HasClickHandlers getLienAuteur() {
132
		return this.auteur;
133
	}
1667 jpm 134
 
135
	public HasClickHandlers getLienCourrielAuteur() {
136
		return this.courrielAuteur;
137
	}
552 benjamin 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
 
570 gduche 171
	@Override
172
	public void masquerChampsVides() {
1667 jpm 173
		HasText[] champs = {nomRetenu, nomCommun, famille, localite, auteur, motsClefs, commentaire, milieu, lieuDit, dateReleve, dateTransmission};
570 gduche 174
		for (int i = 0; i < champs.length; i ++) {
175
			HasText champ = champs[i];
1934 aurelien 176
			if (champ.getText() == null || champ.getText().isEmpty()) {
570 gduche 177
				Widget widget = (Widget) champ;
178
				widget.getParent().setVisible(false);
179
			}
180
		}
181
	}
182
 
1026 gduche 183
	@Override
184
	public void setStation(String station) {
185
		if (station.equals("")) {
186
			this.zoneStation.setVisible(false);
187
		} else {
188
			this.station.setText(station);
1667 jpm 189
		}
1026 gduche 190
	}
1078 gduche 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");
1995 aurelien 202
		pays.addStyleName("labelLien");
1078 gduche 203
	}
1026 gduche 204
 
1079 gduche 205
	@Override
206
	public void activerLienAuteur() {
207
		auteur.addStyleName("labelLien");
208
	}
1282 aurelien 209
 
210
	@Override
211
	public void desactiverLienAuteur() {
212
		auteur.removeStyleName("labelLien");
213
	}
1079 gduche 214
 
1342 gduche 215
	public void setLienIdentiplante(String id) {
1592 aurelien 216
		lienIdentiplante.setHref(CacheClient.getInstance().getUrlPageSignalerMauvaiseId(id));
1342 gduche 217
		lienIdentiplante.setTarget("_blank");
1214 gduche 218
	}
1393 aurelien 219
 
220
	@Override
221
	public HasText getReferentiel() {
222
		return referentiel;
223
	}
1531 mathias 224
 
225
	@Override
226
	public void activerLienNomRetenu() {
227
		// TODO Auto-generated method stub
228
	}
1667 jpm 229
 
230
	public void afficherCourrielAuteur() {
231
		courrielAuteur.setVisible(true);
232
	}
233
	public void cacherCourrielAuteur() {
234
		courrielAuteur.setVisible(false);
235
	}
447 gduche 236
}