Subversion Repositories eFlore/Applications.del

Rev

Rev 1667 | Go to most recent revision | 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
		// 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
	}
552 benjamin 113
 
114
	@Override
115
	public HasClickHandlers getLienNomRetenu() {
116
		return nomRetenu;
117
	}
564 benjamin 118
 
552 benjamin 119
	public HasClickHandlers getLienFamille() {
120
		return this.famille;
121
	}
122
 
123
	public HasClickHandlers getLienAuteur() {
124
		return this.auteur;
125
	}
1667 jpm 126
 
127
	public HasClickHandlers getLienCourrielAuteur() {
128
		return this.courrielAuteur;
129
	}
552 benjamin 130
 
131
	public HasClickHandlers getLienDateTransmission() {
132
		return this.dateTransmission;
133
	}
134
 
135
	public HasClickHandlers getLienDateReleve() {
136
		return this.dateReleve;
137
	}
138
 
139
	public HasClickHandlers getLienLocalite() {
140
		return this.localite;
141
	}
142
 
143
	public HasClickHandlers getLienMotsClefs() {
144
		return this.motsClefs;
145
	}
146
 
147
	public HasClickHandlers getLienNumNomenclatural() {
148
		return this.numNomenclatural;
149
	}
150
 
151
	public HasClickHandlers getLienNomCommun() {
152
		return nomCommun;
153
	}
154
 
155
	public HasClickHandlers getLienMilieu() {
156
		return milieu;
157
	}
158
 
159
	public HasClickHandlers getLienCommentaire() {
160
		return commentaire;
161
	}
162
 
570 gduche 163
	@Override
164
	public void masquerChampsVides() {
1667 jpm 165
		HasText[] champs = {nomRetenu, nomCommun, famille, localite, auteur, motsClefs, commentaire, milieu, lieuDit, dateReleve, dateTransmission};
570 gduche 166
		for (int i = 0; i < champs.length; i ++) {
167
			HasText champ = champs[i];
1934 aurelien 168
			if (champ.getText() == null || champ.getText().isEmpty()) {
570 gduche 169
				Widget widget = (Widget) champ;
170
				widget.getParent().setVisible(false);
171
			}
172
		}
173
	}
174
 
1026 gduche 175
	@Override
176
	public void setStation(String station) {
177
		if (station.equals("")) {
178
			this.zoneStation.setVisible(false);
179
		} else {
180
			this.station.setText(station);
1667 jpm 181
		}
1026 gduche 182
	}
1078 gduche 183
 
184
	public void activerLiens() {
185
		dateReleve.addStyleName("labelLien");
186
		nomRetenu.addStyleName("labelLien");
187
		famille.addStyleName("labelLien");
188
		auteur.addStyleName("labelLien");
189
		localite.addStyleName("labelLien");
190
		motsClefs.addStyleName("labelLien");
191
		nomCommun.addStyleName("labelLien");
192
		commentaire.addStyleName("labelLien");
193
		milieu.addStyleName("labelLien");
194
	}
1026 gduche 195
 
1079 gduche 196
	@Override
197
	public void activerLienAuteur() {
198
		auteur.addStyleName("labelLien");
199
	}
1282 aurelien 200
 
201
	@Override
202
	public void desactiverLienAuteur() {
203
		auteur.removeStyleName("labelLien");
204
	}
1079 gduche 205
 
1342 gduche 206
	public void setLienIdentiplante(String id) {
1592 aurelien 207
		lienIdentiplante.setHref(CacheClient.getInstance().getUrlPageSignalerMauvaiseId(id));
1342 gduche 208
		lienIdentiplante.setTarget("_blank");
1214 gduche 209
	}
1393 aurelien 210
 
211
	@Override
212
	public HasText getReferentiel() {
213
		return referentiel;
214
	}
1531 mathias 215
 
216
	@Override
217
	public void activerLienNomRetenu() {
218
		// TODO Auto-generated method stub
219
	}
1667 jpm 220
 
221
	public void afficherCourrielAuteur() {
222
		courrielAuteur.setVisible(true);
223
	}
224
	public void cacherCourrielAuteur() {
225
		courrielAuteur.setVisible(false);
226
	}
447 gduche 227
}