Subversion Repositories eFlore/Applications.coel

Rev

Rev 156 | Rev 172 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
69 jpm 1
package org.tela_botanica.client.vues;
2
 
91 jpm 3
import java.util.ArrayList;
4
import java.util.Iterator;
69 jpm 5
import java.util.List;
6
 
119 jpm 7
import org.tela_botanica.client.Mediateur;
91 jpm 8
import org.tela_botanica.client.Modele;
9
import org.tela_botanica.client.RegistreId;
115 jpm 10
import org.tela_botanica.client.i18n.Constantes;
69 jpm 11
import org.tela_botanica.client.interfaces.Rafraichissable;
91 jpm 12
import org.tela_botanica.client.modeles.Configuration;
153 jpm 13
import org.tela_botanica.client.modeles.Information;
100 jpm 14
import org.tela_botanica.client.modeles.InterneValeur;
15
import org.tela_botanica.client.modeles.InterneValeurListe;
102 jpm 16
import org.tela_botanica.client.modeles.Personne;
119 jpm 17
import org.tela_botanica.client.modeles.Structure;
91 jpm 18
import org.tela_botanica.client.modeles.Valeur;
19
import org.tela_botanica.client.modeles.ValeurListe;
69 jpm 20
 
111 jpm 21
import com.extjs.gxt.ui.client.Events;
91 jpm 22
import com.extjs.gxt.ui.client.Registry;
69 jpm 23
import com.extjs.gxt.ui.client.Style.HorizontalAlignment;
110 jpm 24
import com.extjs.gxt.ui.client.Style.Scroll;
111 jpm 25
import com.extjs.gxt.ui.client.event.ComponentEvent;
26
import com.extjs.gxt.ui.client.event.Listener;
100 jpm 27
import com.extjs.gxt.ui.client.event.SelectionChangedEvent;
28
import com.extjs.gxt.ui.client.event.SelectionChangedListener;
103 jpm 29
import com.extjs.gxt.ui.client.event.SelectionListener;
30
import com.extjs.gxt.ui.client.event.ToolBarEvent;
69 jpm 31
import com.extjs.gxt.ui.client.store.ListStore;
111 jpm 32
import com.extjs.gxt.ui.client.widget.Component;
102 jpm 33
import com.extjs.gxt.ui.client.widget.ContentPanel;
153 jpm 34
import com.extjs.gxt.ui.client.widget.Info;
69 jpm 35
import com.extjs.gxt.ui.client.widget.LayoutContainer;
100 jpm 36
import com.extjs.gxt.ui.client.widget.TabItem;
37
import com.extjs.gxt.ui.client.widget.TabPanel;
69 jpm 38
import com.extjs.gxt.ui.client.widget.button.Button;
108 jpm 39
import com.extjs.gxt.ui.client.widget.form.CheckBox;
40
import com.extjs.gxt.ui.client.widget.form.CheckBoxGroup;
69 jpm 41
import com.extjs.gxt.ui.client.widget.form.ComboBox;
100 jpm 42
import com.extjs.gxt.ui.client.widget.form.DateField;
119 jpm 43
import com.extjs.gxt.ui.client.widget.form.Field;
100 jpm 44
import com.extjs.gxt.ui.client.widget.form.FieldSet;
69 jpm 45
import com.extjs.gxt.ui.client.widget.form.FormPanel;
103 jpm 46
import com.extjs.gxt.ui.client.widget.form.LabelField;
102 jpm 47
import com.extjs.gxt.ui.client.widget.form.NumberField;
109 jpm 48
import com.extjs.gxt.ui.client.widget.form.Radio;
49
import com.extjs.gxt.ui.client.widget.form.RadioGroup;
164 jp_milcent 50
import com.extjs.gxt.ui.client.widget.form.TextArea;
69 jpm 51
import com.extjs.gxt.ui.client.widget.form.TextField;
52
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction;
53
import com.extjs.gxt.ui.client.widget.form.FormPanel.LabelAlign;
102 jpm 54
import com.extjs.gxt.ui.client.widget.grid.CellEditor;
55
import com.extjs.gxt.ui.client.widget.grid.CheckBoxSelectionModel;
56
import com.extjs.gxt.ui.client.widget.grid.CheckColumnConfig;
57
import com.extjs.gxt.ui.client.widget.grid.ColumnConfig;
58
import com.extjs.gxt.ui.client.widget.grid.ColumnModel;
59
import com.extjs.gxt.ui.client.widget.grid.EditorGrid;
69 jpm 60
import com.extjs.gxt.ui.client.widget.layout.ColumnData;
61
import com.extjs.gxt.ui.client.widget.layout.ColumnLayout;
62
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
63
import com.extjs.gxt.ui.client.widget.layout.FlowLayout;
100 jpm 64
import com.extjs.gxt.ui.client.widget.layout.FormData;
69 jpm 65
import com.extjs.gxt.ui.client.widget.layout.FormLayout;
110 jpm 66
import com.extjs.gxt.ui.client.widget.tips.ToolTipConfig;
102 jpm 67
import com.extjs.gxt.ui.client.widget.toolbar.SeparatorToolItem;
68
import com.extjs.gxt.ui.client.widget.toolbar.TextToolItem;
69
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
91 jpm 70
import com.google.gwt.core.client.GWT;
100 jpm 71
import com.google.gwt.i18n.client.DateTimeFormat;
102 jpm 72
import com.google.gwt.i18n.client.NumberFormat;
133 jpm 73
import com.google.gwt.user.client.Window;
69 jpm 74
 
75
public class FormStructureVue extends LayoutContainer implements Rafraichissable {
115 jpm 76
 
77
	private Constantes i18nC = null;
119 jpm 78
	private Mediateur mediateur = null;
79
	private Modele modele = null ;
80
 
156 jp_milcent 81
	private String mode = "AJOUT";
119 jpm 82
	private FormPanel structureFormPanneau;
133 jpm 83
	private int tabIndex = 100;
115 jpm 84
 
91 jpm 85
	private ListStore<Valeur> magazinLstpr = null;
86
	private ComboBox<Valeur> comboLstpr = null;
87
	private ListStore<Valeur> magazinLstpu = null;
88
	private ComboBox<Valeur> comboLstpu = null;
103 jpm 89
	private ListStore<Valeur> magazinLiStatut = null;
90
	private ComboBox<Valeur> comboLiStatut = null;
91
	private ListStore<Valeur> magazinLiFonction = null;
92
	private ComboBox<Valeur> comboLiFonction = null;
100 jpm 93
	private ComboBox<InterneValeur> comboAcronyme = null;
94
	private TextField<String> ihChp = null;
95
	private TextField<String> mnhnChp = null;
96
	private ComboBox<InterneValeur> comboTypeStructure = null;
108 jpm 97
	private TabItem personnelOnglet = null;
103 jpm 98
	private EditorGrid<Personne> grillePersonnel = null;
99
	private ListStore<Personne> personnelGrilleMagazin = null;
100
	private LabelField nbreTotalPersonnelChp = null;
108 jpm 101
	private TabItem conservationOnglet = null;
115 jpm 102
	private CheckBoxGroup localStockageTrukCacGrpChp = null;
103
	private ContentPanel localStockageTrukCp = null;
104
	private CheckBoxGroup meubleStockageTrukCacGrpChp = null;
105
	private ContentPanel meubleStockageTrukCp = null;
106
	private CheckBoxGroup parametreStockageTrukCacGrpChp = null;
107
	private ContentPanel parametreStockageTrukCp = null;
111 jpm 108
	private ContentPanel collectionAutreTrukCp = null;
109
	private CheckBoxGroup collectionAutreTrukCacGrpChp = null;
115 jpm 110
	private CheckBoxGroup opRestauTrukCacGrpChp = null;
111 jpm 111
	private ContentPanel opRestauTrukCp = null;
115 jpm 112
	private CheckBoxGroup autreMaterielTrukCacGrpChp = null;
113
	private ContentPanel autreMaterielTrukCp = null;
111 jpm 114
	private ContentPanel traitementTrukCp = null;
115
	private CheckBoxGroup traitementTrukCacGrpChp = null;
115 jpm 116
	private ContentPanel poisonTraitementTrukCp = null;
111 jpm 117
	private ContentPanel insecteTraitementTrukCp = null;
118
	private CheckBoxGroup insecteTraitementTrukCacGrpChp = null;
115 jpm 119
	private CheckBoxGroup poisonTraitementTrukCacGrpChp = null;
111 jpm 120
	private TabItem valorisationOnglet = null;
115 jpm 121
	private ContentPanel actionTrukCp = null;
122
	private CheckBoxGroup actionTrukCacGrpChp = null;
123
	private ContentPanel autreCollectionTrukCp = null;
119 jpm 124
	private CheckBoxGroup autreCollectionTrukCacGrpChp = null;
115 jpm 125
	private ContentPanel provenanceRechercheTrukCp = null;
126
	private CheckBoxGroup provenanceRechercheTrukCacGrpChp = null;
127
	private CheckBoxGroup typeRechercheTrukCacGrpChp = null;
119 jpm 128
	private ContentPanel typeRechercheTrukCp = null;
115 jpm 129
	private TextField<String> futureActionChp = null;
130
	private TextField<String> sansMotifAccesChp = null;
131
	private TextField<String> avecMotifAccesChp = null;
132
	private TextField<String> formationChp = null;
133
	private RadioGroup traitementAcquisitionMarkRGrpChp = null;
134
	private LabelField traitementAcquisitionMarkLabel = null;
135
	private RadioGroup materielConservationCeRGrpChp = null;
119 jpm 136
 
137
	private RadioGroup actionMarkRGrpChp;
138
	private TextField<String> nomStructureChp;
139
	private DateField dateFondationChp;
164 jp_milcent 140
	private TextArea adrChp;
119 jpm 141
	private TextField<String> cpChp;
142
	private TextField<String> villeChp;
143
	private TextField<String> regionChp;
144
	private TextField<String> paysChp;
145
	private TextField<String> telChp;
146
	private TextField<String> faxChp;
147
	private TextField<String> emailChp;
148
	private TextField<String> urlChp;
164 jp_milcent 149
	private ListStore<Valeur> magazinPays;
150
	private ComboBox<Valeur> comboPays;
91 jpm 151
 
69 jpm 152
	public FormStructureVue() {
100 jpm 153
		//+-----------------------------------------------------------------------------------------------------------+
154
		// Initialisation de variables
115 jpm 155
		i18nC = GWT.create(Constantes.class);
69 jpm 156
		setLayout(new FitLayout());
119 jpm 157
		modele = Registry.get(RegistreId.MODELE);
158
		mediateur = Registry.get(RegistreId.MEDIATEUR);
159
 
100 jpm 160
		//+-----------------------------------------------------------------------------------------------------------+
110 jpm 161
		// Création du panneau du FORMULAIRE GÉNÉRAL
119 jpm 162
		structureFormPanneau = new FormPanel();
163
		structureFormPanneau.setFrame(true);
164
		structureFormPanneau.setIconStyle("icone-form-ajouter");
165
		structureFormPanneau.setCollapsible(false);
156 jp_milcent 166
		structureFormPanneau.setHeading(i18nC.titreAjoutFormStructurePanneau());
119 jpm 167
		structureFormPanneau.setButtonAlign(HorizontalAlignment.CENTER);
168
		structureFormPanneau.setLayout(new FlowLayout());
100 jpm 169
 
110 jpm 170
		//+-----------------------------------------------------------------------------------------------------------+
100 jpm 171
		// Création des onglets
102 jpm 172
		TabPanel onglets = new TabPanel();
110 jpm 173
		// NOTE : pour faire apparaître les scrollBar il faut définir la hauteur du panneau d'onglets à 100% (autoHeight ne semble pas fonctionner)
174
		onglets.setHeight("100%");
69 jpm 175
 
100 jpm 176
		//+-----------------------------------------------------------------------------------------------------------+
177
		// Onlget formulaire IDENTIFICATION
110 jpm 178
		onglets.add(creerOngletIdentification());
69 jpm 179
 
100 jpm 180
		//+-----------------------------------------------------------------------------------------------------------+
181
		// Onlget formulaire PERSONNEL
103 jpm 182
		onglets.add(creerOngletPersonnel());
91 jpm 183
 
100 jpm 184
		//+-----------------------------------------------------------------------------------------------------------+
185
		// Onlget formulaire CONSERVATION
108 jpm 186
		onglets.add(creerOngletConservation());
100 jpm 187
 
188
		//+-----------------------------------------------------------------------------------------------------------+
189
		// Onlget formulaire VALORISATION
111 jpm 190
		onglets.add(creerOngletValorisation());
100 jpm 191
 
192
		//+-----------------------------------------------------------------------------------------------------------+
193
		// Gestion du FORMULAIRE GÉNÉRAL
194
 
119 jpm 195
		// Sélection de l'onglet par défaut
196
		//onglets.setSelection(valorisationOnglet);
197
		// Ajout des onglets au formulaire général
198
		structureFormPanneau.add(onglets);
69 jpm 199
 
200
		// Ajout des boutons au panneau formulaire
201
		Button annulerBtn = new Button("Annuler");
119 jpm 202
		structureFormPanneau.addButton(annulerBtn);
69 jpm 203
		Button validerBtn = new Button("Valider");
119 jpm 204
		validerBtn.addSelectionListener(new SelectionListener<ComponentEvent>() {
205
 
206
			@Override
207
			public void componentSelected(ComponentEvent ce) {
208
				soumettreFormulaire();
209
			}
210
 
211
		});
212
		structureFormPanneau.addButton(validerBtn);
69 jpm 213
 
214
		// Ajout du panneau Formulaire à la disposition générale
119 jpm 215
		add(structureFormPanneau);
69 jpm 216
	}
108 jpm 217
 
119 jpm 218
	private void soumettreFormulaire() {
219
		GWT.log("Soumission du formulaire", null);
156 jp_milcent 220
		Structure structure = collecterDonnees();
221
		if (mode == "AJOUT") {
164 jp_milcent 222
			//mediateur.ajouterStructure(this, structure);
223
			GWT.log(structure.toString(), null);
156 jp_milcent 224
		} else if (mode == "MODIF") {
225
			mediateur.modifierStructure(this, structure);
226
		}
119 jpm 227
	}
228
 
156 jp_milcent 229
	private Structure collecterDonnees() {
119 jpm 230
		Structure structure = new Structure();
231
		structure.setNom(nomStructureChp.getValue());
164 jp_milcent 232
		// Récupération de l'acronyme (= identifiant alternatif)
233
		structure.setIdAlternatif(null);
234
		if (comboAcronyme.getValue() != null) {
235
			String typeAcronyme = comboAcronyme.getValue().getAbr();
236
			GWT.log("Acronyme : "+typeAcronyme, null);
237
			if (typeAcronyme == "IH") {
238
				structure.setIdAlternatif(typeAcronyme+"##"+ihChp.getValue());
239
			} else if (typeAcronyme == "MNHN") {
240
				structure.setIdAlternatif(typeAcronyme+"##"+mnhnChp.getValue());
241
			}
242
		}
243
		// Récupération statut de la structure
244
		structure.setTypePublic(null);
245
		structure.setTypePrive(null);
246
		if (comboTypeStructure.getValue() != null) {
247
			String typeStructure = comboTypeStructure.getValue().getAbr();
248
			GWT.log("Statut : "+typeStructure, null);
249
			if (typeStructure == "stpu") {
250
				structure.setTypePublic(comboLstpu.getValue().getId());
251
			} else if (typeStructure == "stpr") {
252
				structure.setTypePrive(comboLstpr.getValue().getId());
253
			}
254
		}
156 jp_milcent 255
		structure.setDateFondation(dateFondationChp.getValue());
164 jp_milcent 256
 
119 jpm 257
		structure.setAdresse(adrChp.getValue());
258
		structure.setCodePostal(cpChp.getValue());
259
		structure.setVille(villeChp.getValue());
260
		structure.setRegion(regionChp.getValue());
164 jp_milcent 261
		structure.setPays(null);
262
		if (comboPays.getValue() != null) {
263
			structure.setPays(comboPays.getValue().getAbreviation());
264
		}
119 jpm 265
 
266
		structure.setTelephone(telChp.getValue());
267
		structure.setFax(faxChp.getValue());
268
		structure.setCourriel(emailChp.getValue());
269
		structure.setUrl(urlChp.getValue());
270
 
156 jp_milcent 271
		return structure;
119 jpm 272
	}
273
 
156 jp_milcent 274
	private void peuplerFormulaire(Structure str) {
275
		nomStructureChp.setValue(str.getNom());
276
		dateFondationChp.setValue(str.getDateFondation());
277
 
278
		adrChp.setValue(str.getAdresse());
279
		cpChp.setValue(str.getCodePostal());
280
		villeChp.setValue(str.getVille());
281
		regionChp.setValue(str.getRegion());
282
		paysChp.setValue(str.getPays());
283
 
284
		telChp.setValue(str.getTelephone());
285
		faxChp.setValue(str.getFax());
286
		emailChp.setValue(str.getCourriel());
164 jp_milcent 287
		urlChp.setValue(str.getUrl("WEB"));
156 jp_milcent 288
	}
289
 
111 jpm 290
	private TabItem creerOngletValorisation() {
291
		valorisationOnglet = new TabItem();
292
		valorisationOnglet.setText("Valorisation");
293
		valorisationOnglet.setScrollMode(Scroll.AUTO);
294
		valorisationOnglet.setLayout(creerFormLayout(650, LabelAlign.TOP, null));
295
 
119 jpm 296
		actionMarkRGrpChp = creerChoixUniqueRadioGroupe("action_mark", "ouiNon");
111 jpm 297
		actionMarkRGrpChp.setFieldLabel("Avez-vous réalisé des actions de valorisation de vos collections botaniques ou avez-vous été sollicités pour la valorisation de ces collections ?");
298
		valorisationOnglet.add(actionMarkRGrpChp);
299
 
119 jpm 300
 
111 jpm 301
		actionTrukCp = creerChoixMultipleCp("actionValorisation");
302
		actionTrukCp.hide();
115 jpm 303
		actionTrukCacGrpChp = new CheckBoxGroup();
304
		actionTrukCacGrpChp.setFieldLabel("Si oui, lesquelles ?");
111 jpm 305
		valorisationOnglet.add(actionTrukCp);
306
 
307
		TextField<String> publicationChp = new TextField<String>();
308
		publicationChp.setFieldLabel("Quelques titres des ouvrages, articles scientifiques, ...");
309
		valorisationOnglet.add(publicationChp);
310
 
311
		autreCollectionTrukCp = creerChoixMultipleCp("autreCollection");
119 jpm 312
		autreCollectionTrukCacGrpChp = new CheckBoxGroup();
313
		autreCollectionTrukCacGrpChp.setFieldLabel("L'organisme dispose-t-il d'autres collections (permettant une valorisation pluridisciplinaire) ?");
111 jpm 314
		valorisationOnglet.add(autreCollectionTrukCp);
315
 
115 jpm 316
		RadioGroup futureActionMarkRGrpChp = creerChoixUniqueRadioGroupe("future_action_mark", "ouiNon");
111 jpm 317
		futureActionMarkRGrpChp.setFieldLabel("Envisagez vous des actions de valorisation dans le cadre de votre politique culturelle ?");
318
		valorisationOnglet.add(futureActionMarkRGrpChp);
319
 
320
		futureActionChp = new TextField<String>();
321
		futureActionChp.setFieldLabel("Si oui, lesquelles ?");
322
		futureActionChp.hide();
323
		valorisationOnglet.add(futureActionChp);
324
 
115 jpm 325
		RadioGroup rechercheMarkRGrpChp = creerChoixUniqueRadioGroupe("recherche_mark", "ouiNon");
111 jpm 326
		rechercheMarkRGrpChp.setFieldLabel("Vos collections botaniques sont-elles utilisées pour des recherches scientifiques ?");
327
		valorisationOnglet.add(rechercheMarkRGrpChp);
328
 
329
		provenanceRechercheTrukCp = creerChoixMultipleCp("continentEtFr");
330
		provenanceRechercheTrukCp.hide();
115 jpm 331
		provenanceRechercheTrukCacGrpChp = new CheckBoxGroup();
332
		provenanceRechercheTrukCacGrpChp.setFieldLabel("Si oui, par des chercheurs (professionnels ou amateurs) de quelle provenance ?");
111 jpm 333
		valorisationOnglet.add(provenanceRechercheTrukCp);
334
 
119 jpm 335
		typeRechercheTrukCp = creerChoixMultipleCp("typeRecherche");
336
		typeRechercheTrukCp.hide();
115 jpm 337
		typeRechercheTrukCacGrpChp = new CheckBoxGroup();
338
		typeRechercheTrukCacGrpChp.setFieldLabel("Et pour quelles recherches ?");
119 jpm 339
		valorisationOnglet.add(typeRechercheTrukCp);
111 jpm 340
 
115 jpm 341
		RadioGroup sansMotifAccesMarkRGrpChp = creerChoixUniqueRadioGroupe("sans_motif_acces_mark", "ouiNon");
111 jpm 342
		sansMotifAccesMarkRGrpChp.setFieldLabel("Peut-on consulter vos collections botaniques sans motif de recherches scientifiques ?");
343
		valorisationOnglet.add(sansMotifAccesMarkRGrpChp);
344
 
345
		sansMotifAccesChp = new TextField<String>();
346
		sansMotifAccesChp.hide();
347
		sansMotifAccesChp.setFieldLabel("Si oui, quelles démarches doit-on faire pour les consulter ?");
348
		valorisationOnglet.add(sansMotifAccesChp);
349
 
115 jpm 350
		RadioGroup avecMotifAccesMarkRGrpChp = creerChoixUniqueRadioGroupe("avec_motif_acces_mark", "ouiNon");
111 jpm 351
		avecMotifAccesMarkRGrpChp.setFieldLabel("Peut-on visiter vos collections botaniques avec des objectifs de recherches scientifiques ?");
352
		valorisationOnglet.add(avecMotifAccesMarkRGrpChp);
353
 
115 jpm 354
		valorisationOnglet.add(avecMotifAccesChp = new TextField<String>());
111 jpm 355
		avecMotifAccesChp.hide();
356
		avecMotifAccesChp.setFieldLabel("Si oui, quelles démarches doit-on faire pour les visiter ?");
357
 
358
		return valorisationOnglet;
359
	}
360
 
108 jpm 361
	private TabItem creerOngletConservation() {
362
		conservationOnglet = new TabItem();
363
		conservationOnglet.setText("Conservation");
110 jpm 364
		conservationOnglet.setScrollMode(Scroll.AUTO);
108 jpm 365
		conservationOnglet.setLayout(creerFormLayout(650, LabelAlign.TOP, null));
366
 
115 jpm 367
		RadioGroup markFormationRGrpChp = creerChoixUniqueRadioGroupe("formation_mark", "ouiNon");
109 jpm 368
		markFormationRGrpChp.setFieldLabel("Le personnel s'occupant des collections a-t-il suivi des formations en conservations ?");
369
		conservationOnglet.add(markFormationRGrpChp);
108 jpm 370
 
111 jpm 371
		formationChp = new TextField<String>();
372
		formationChp.hide();
373
		formationChp.setFieldLabel("Si oui, lesquelles ?");
108 jpm 374
		conservationOnglet.add(formationChp);
375
 
115 jpm 376
		RadioGroup markInteretFormationRGrpChp = creerChoixUniqueRadioGroupe("interet_formation_mark", "ouiNon");
109 jpm 377
		markInteretFormationRGrpChp.setFieldLabel("Seriez vous intéressé par une formation à la conservation et à la restauration d'herbier ?");
378
		conservationOnglet.add(markInteretFormationRGrpChp);
108 jpm 379
 
115 jpm 380
		localStockageTrukCp = creerChoixMultipleCp("localStockage");
381
		localStockageTrukCacGrpChp = new CheckBoxGroup();
382
		localStockageTrukCacGrpChp.setFieldLabel("Avez vous des locaux spécifiques de stockage des collections botaniques ?");
383
		conservationOnglet.add(localStockageTrukCp);
108 jpm 384
 
115 jpm 385
		meubleStockageTrukCp = creerChoixMultipleCp("meubleStockage");
386
		meubleStockageTrukCacGrpChp = new CheckBoxGroup();
387
		meubleStockageTrukCacGrpChp.setFieldLabel("Avez vous des meubles spécifiques au stockage des collections botaniques ?");
388
		conservationOnglet.add(meubleStockageTrukCp);
108 jpm 389
 
115 jpm 390
		parametreStockageTrukCp = creerChoixMultipleCp("parametreStockage");
391
		parametreStockageTrukCacGrpChp = new CheckBoxGroup();
392
		parametreStockageTrukCacGrpChp.setFieldLabel("Quels paramètres maîtrisez vous ?");
393
		conservationOnglet.add(parametreStockageTrukCp);
109 jpm 394
 
115 jpm 395
		RadioGroup collectionCommuneMarkRGrpChp = creerChoixUniqueRadioGroupe("collection_commune_mark", "ouiNon");
111 jpm 396
		collectionCommuneMarkRGrpChp.setFieldLabel("Les collections botaniques sont-elles conservées avec d'autres collections  dans les mêmes locaux (problème de conservation en commun) ?");
397
		conservationOnglet.add(collectionCommuneMarkRGrpChp);
109 jpm 398
 
111 jpm 399
		collectionAutreTrukCp = creerChoixMultipleCp("autreCollection");
115 jpm 400
		collectionAutreTrukCacGrpChp = new CheckBoxGroup();
401
		collectionAutreTrukCacGrpChp.setFieldLabel("Si oui, lesquelles ?");
111 jpm 402
		collectionAutreTrukCp.hide();
403
		conservationOnglet.add(collectionAutreTrukCp);
110 jpm 404
 
115 jpm 405
		RadioGroup accesControleMarkRGrpChp = creerChoixUniqueRadioGroupe("mark_acces_controle", "ouiNon");
406
		accesControleMarkRGrpChp.setFieldLabel("L'accès à vos collections botanique est-il contrôlé (ex. : manipulation réservées à des personnes compétentes) ?");
407
		conservationOnglet.add(accesControleMarkRGrpChp);
110 jpm 408
 
115 jpm 409
		RadioGroup restaurationMarkRGrpChp = creerChoixUniqueRadioGroupe("restauration_mark", "ouiNon");
410
		restaurationMarkRGrpChp.setFieldLabel("Effectuez vous des opérations de restauration ou de remise en état de vos collections botaniques ?");
411
		conservationOnglet.add(restaurationMarkRGrpChp);
110 jpm 412
 
111 jpm 413
		opRestauTrukCp = creerChoixMultipleCp("opRestau");
115 jpm 414
		opRestauTrukCacGrpChp = new CheckBoxGroup();
415
		opRestauTrukCacGrpChp.setFieldLabel("Si oui, lesquelles ?");
111 jpm 416
		opRestauTrukCp.hide();
417
		conservationOnglet.add(opRestauTrukCp);
110 jpm 418
 
115 jpm 419
		materielConservationCeRGrpChp = creerChoixUniqueRadioGroupe("materiel_conservation_ce", "onep");
420
		materielConservationCeRGrpChp.setFieldLabel("Utilisez vous du matériel de conservation ?");
421
		materielConservationCeRGrpChp.setToolTip(new ToolTipConfig("Matériel de conservation", "matériel spécialisé pour la conservation des archives ou du patrimoine fragile. Ce matériel possède des propriétés mécaniques et chimiques qui font qu'il résiste dans le temps et que sa dégradation n'entraîne pas de dommages sur le matériel qu'il aide à conserver. Exemples : papier neutre, papier gommé, etc..."));
422
		conservationOnglet.add(materielConservationCeRGrpChp);
110 jpm 423
 
115 jpm 424
		autreMaterielTrukCp = creerChoixMultipleCp("autreMateriel");
425
		autreMaterielTrukCp.hide();
426
		autreMaterielTrukCacGrpChp = new CheckBoxGroup();
427
		autreMaterielTrukCacGrpChp.setFieldLabel("Si non, qu'utilisez vous comme matériel ?");
428
		conservationOnglet.add(autreMaterielTrukCp);
110 jpm 429
 
115 jpm 430
		RadioGroup markTraitementRGrpChp = creerChoixUniqueRadioGroupe("traitement_mark", "ouiNon");
110 jpm 431
		markTraitementRGrpChp.setFieldLabel("Réalisez vous actuellement des traitements globaux contre les insectes ?");
432
		conservationOnglet.add(markTraitementRGrpChp);
433
 
111 jpm 434
		traitementTrukCp = creerChoixMultipleCp("insecteTraitement");
115 jpm 435
		traitementTrukCp.hide();
436
		traitementTrukCacGrpChp = new CheckBoxGroup();
437
		traitementTrukCacGrpChp.setFieldLabel("Si oui, lesquels ?");
111 jpm 438
		conservationOnglet.add(traitementTrukCp);
110 jpm 439
 
115 jpm 440
		RadioGroup markCollectionAcquisitionRGrpChp = creerChoixUniqueRadioGroupe("collection_acquisition_mark", "ouiNon");
110 jpm 441
		markCollectionAcquisitionRGrpChp.setFieldLabel("Actuellement, vos collections botaniques s'accroissent-elles de nouvelles acquisitions ?");
442
		conservationOnglet.add(markCollectionAcquisitionRGrpChp);
443
 
115 jpm 444
		RadioGroup markEchantillonAcquisitionRGrpChp = creerChoixUniqueRadioGroupe("echantillon_acquisition_mark", "ouiNon");
110 jpm 445
		markEchantillonAcquisitionRGrpChp.setFieldLabel("Actuellement, mettez vous en herbier de nouveaux échantillons ?");
446
		conservationOnglet.add(markEchantillonAcquisitionRGrpChp);
447
 
115 jpm 448
		traitementAcquisitionMarkRGrpChp = creerChoixUniqueRadioGroupe("traitement_acquisition_mark", "ouiNon");
449
		traitementAcquisitionMarkRGrpChp.hide();
450
		traitementAcquisitionMarkRGrpChp.setFieldLabel("Si oui, faites-vous un traitement contre les insectes avant l'intégration dans vos collections ?");
451
		conservationOnglet.add(traitementAcquisitionMarkRGrpChp);
110 jpm 452
 
115 jpm 453
		traitementAcquisitionMarkLabel = new LabelField();
454
		traitementAcquisitionMarkLabel.hide();
455
		traitementAcquisitionMarkLabel.setFieldLabel("Si oui, lesquels ?");
456
		conservationOnglet.add(traitementAcquisitionMarkLabel);
110 jpm 457
 
115 jpm 458
		poisonTraitementTrukCp = creerChoixMultipleCp("poisonTraitement");
459
		poisonTraitementTrukCp.hide();
460
		poisonTraitementTrukCacGrpChp = new CheckBoxGroup();
461
		poisonTraitementTrukCacGrpChp.setFieldLabel("Empoisonnement");
462
		poisonTraitementTrukCacGrpChp.setLabelStyle("font-weight:normal;text-decoration:underline;");
463
		poisonTraitementTrukCacGrpChp.setLabelSeparator("");
464
		conservationOnglet.add(poisonTraitementTrukCp);
110 jpm 465
 
111 jpm 466
		insecteTraitementTrukCp = creerChoixMultipleCp("insecteTraitement");
115 jpm 467
		insecteTraitementTrukCp.hide();
468
		insecteTraitementTrukCacGrpChp = new CheckBoxGroup();
469
		insecteTraitementTrukCacGrpChp.setLabelStyle("font-weight:normal;text-decoration:underline;");
470
		insecteTraitementTrukCacGrpChp.setLabelSeparator("");
471
		insecteTraitementTrukCacGrpChp.setFieldLabel("Désinsectisation");
111 jpm 472
		conservationOnglet.add(insecteTraitementTrukCp);
110 jpm 473
 
108 jpm 474
		return conservationOnglet;
475
	}
476
 
103 jpm 477
	private TabItem creerOngletPersonnel() {
108 jpm 478
		personnelOnglet = new TabItem();
103 jpm 479
		personnelOnglet.setText("Personnel");
110 jpm 480
		personnelOnglet.setScrollMode(Scroll.AUTO);
481
		personnelOnglet.setLayout(creerFormLayout(400, LabelAlign.LEFT, null));
103 jpm 482
 
483
		NumberField nbreTotalPersonneStructureChp = new NumberField();
484
		nbreTotalPersonneStructureChp.setFieldLabel("Nombre de personne travaillant dans l'institution");
485
		nbreTotalPersonneStructureChp.setFormat(NumberFormat.getFormat("#"));
486
		nbreTotalPersonneStructureChp.setToolTip("Ce champ doit contenir un nombre");
487
		personnelOnglet.add(nbreTotalPersonneStructureChp);
488
 
489
		personnelOnglet.add(this.creerGrillePersonnel());
490
 
491
		nbreTotalPersonnelChp = new LabelField();
492
		nbreTotalPersonnelChp.setFieldLabel("Nombre de personne travaillant sur les collections");
493
		nbreTotalPersonnelChp.setLabelSeparator(":");
494
		nbreTotalPersonnelChp.setValue(""+grillePersonnel.getStore().getCount());
495
		personnelOnglet.add(nbreTotalPersonnelChp);
496
 
497
		return personnelOnglet;
498
	}
499
 
102 jpm 500
	private ContentPanel creerGrillePersonnel() {
103 jpm 501
 
102 jpm 502
		List<Personne> personnes = new ArrayList<Personne>();
503
		personnes.add(new Personne(Valeur.FONCTION_DIRECTEUR));
504
		personnes.add(new Personne(Valeur.FONCTION_CONSERVATEUR));
505
 
103 jpm 506
		personnelGrilleMagazin = new ListStore<Personne>();
507
		personnelGrilleMagazin.add(personnes);
508
 
102 jpm 509
		List<ColumnConfig> configs = new ArrayList<ColumnConfig>();
510
 
511
		CheckBoxSelectionModel<Personne> sm = new CheckBoxSelectionModel<Personne>();
512
		configs.add(sm.getColumn());
103 jpm 513
 
514
		ColumnConfig column = new ColumnConfig("ce_truk_fonction", "Fonction", 100);
119 jpm 515
		modele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId("fonction"));
103 jpm 516
		magazinLiFonction = new ListStore<Valeur>();
517
		magazinLiFonction.add(new ArrayList<Valeur>());
518
 
519
		comboLiFonction = new ComboBox<Valeur>();
520
		comboLiFonction.setTriggerAction(TriggerAction.ALL);
521
		comboLiFonction.setEditable(true);
522
		comboLiFonction.setDisplayField("nom");
523
		//comboLiStatut.setEmptyText("Sélectionez une fonction...");
524
		comboLiFonction.setStore(magazinLiFonction);
525
 
526
		CellEditor fonctionEditor = new CellEditor(comboLiFonction) {
527
			@Override
528
			public Object preProcessValue(Object value) {
529
				if (value == null) {
530
					return value;
531
				}
532
				//GWT.log("pre : "+value.toString(), null);
533
				return comboLiFonction.getStore().findModel("nom", (String) value);
534
			}
535
 
536
			@Override
537
			public Object postProcessValue(Object value) {
538
				if (value == null) {
539
					return value;
540
				}
541
				//GWT.log("post : "+value.toString(), null);
542
				return ((Valeur) value).get("nom");
543
			}
544
		};
545
		column.setEditor(fonctionEditor);
102 jpm 546
		configs.add(column);
547
 
548
		column = new ColumnConfig();
549
		column.setId("prenom");
103 jpm 550
		column.setHeader("Prénom");
551
		column.setWidth(100);
552
		TextField<String> prenomChp = new TextField<String>();
553
		prenomChp.setAllowBlank(false);
554
		prenomChp.getMessages().setBlankText("Ce champ est obligatoire.");
555
		prenomChp.setAutoValidate(true);
556
		column.setEditor(new CellEditor(prenomChp));
102 jpm 557
		configs.add(column);
558
 
559
		column = new ColumnConfig();
560
		column.setId("nom");
561
		column.setHeader("Nom");
103 jpm 562
		column.setWidth(100);
563
		TextField<String> nomChp = new TextField<String>();
564
		nomChp.setAllowBlank(false);
565
		nomChp.getMessages().setBlankText("Ce champ est obligatoire.");
566
		nomChp.setAutoValidate(true);
567
		column.setEditor(new CellEditor(nomChp));
102 jpm 568
		configs.add(column);
569
 
103 jpm 570
		column = new ColumnConfig("tel", "Téléphone", 100);
571
		TextField<String> telChp = new TextField<String>();
572
		column.setEditor(new CellEditor(telChp));
102 jpm 573
		configs.add(column);
574
 
575
		column = new ColumnConfig("fax", "Fax", 100);
103 jpm 576
		TextField<String> faxChp = new TextField<String>();
577
		column.setEditor(new CellEditor(faxChp));
102 jpm 578
		configs.add(column);
579
 
103 jpm 580
		column = new ColumnConfig("courriel", "Courriel", 100);
581
		TextField<String> emailChp = new TextField<String>();
582
		column.setEditor(new CellEditor(emailChp));
102 jpm 583
		configs.add(column);
584
 
119 jpm 585
		modele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId("statut"));
103 jpm 586
		magazinLiStatut = new ListStore<Valeur>();
587
		magazinLiStatut.add(new ArrayList<Valeur>());
588
 
589
		comboLiStatut = new ComboBox<Valeur>();
590
		comboLiStatut.setTriggerAction(TriggerAction.ALL);
591
		comboLiStatut.setEditable(false);
592
		comboLiStatut.setDisplayField("nom");
593
		comboLiStatut.setEmptyText("Sélectionez un statut...");
594
		comboLiStatut.setStore(magazinLiStatut);
595
 
596
		CellEditor statutEditor = new CellEditor(comboLiStatut) {
597
			@Override
598
			public Object preProcessValue(Object value) {
599
				if (value == null) {
600
					return value;
601
				}
602
				//GWT.log("pre : "+value.toString(), null);
603
				return comboLiStatut.getStore().findModel("nom", (String) value);
604
			}
605
 
606
			@Override
607
			public Object postProcessValue(Object value) {
608
				if (value == null) {
609
					return value;
610
				}
611
				//GWT.log("post : "+value.toString(), null);
612
				return ((Valeur) value).get("nom");
613
			}
614
		};
615
		column = new ColumnConfig("statut", "Statut", 100);
616
		column.setEditor(statutEditor);
102 jpm 617
		configs.add(column);
618
 
103 jpm 619
		column = new ColumnConfig("tps_w", "Temps travail", 100);
620
		column.setNumberFormat(NumberFormat.getFormat("##"));
621
		NumberField tpsWChp = new NumberField();
622
		tpsWChp.setFormat(NumberFormat.getFormat("##"));
623
		tpsWChp.setToolTip("Ce champ doit contenir un nombre");
624
		column.setEditor(new CellEditor(tpsWChp));
625
		configs.add(column);
626
 
627
		column = new ColumnConfig("specialites", "Spécialités botaniques", 150);
628
		TextField<String> speChp = new TextField<String>();
629
		column.setEditor(new CellEditor(speChp));
630
		configs.add(column);
631
 
632
		CheckColumnConfig checkColumn = new CheckColumnConfig("mark_contact", "Contact ?", 60);
102 jpm 633
		configs.add(checkColumn);
634
 
635
		ContentPanel cp = new ContentPanel();
636
		cp.setHeading("Personnes travaillant sur les collections");
110 jpm 637
		cp.setIconStyle("icone-table");
638
		cp.setScrollMode(Scroll.AUTO);
103 jpm 639
		cp.setLayout(new FitLayout());
110 jpm 640
		cp.setSize(1100, 200);
102 jpm 641
		cp.setFrame(true);
642
 
643
		ToolBar toolBar = new ToolBar();
103 jpm 644
 
645
		TextToolItem ajouterPersonnelBtn = new TextToolItem("Ajouter", "icone-vcard-ajouter");
646
		ajouterPersonnelBtn.addSelectionListener(new SelectionListener<ToolBarEvent>() {
647
			@Override
648
			public void componentSelected(ToolBarEvent ce) {
649
				Personne personne = new Personne();
650
				grillePersonnel.stopEditing();
651
				personnelGrilleMagazin.insert(personne, 0);
652
				grillePersonnel.startEditing(0, 0);
653
				// Mise à jour du nombre de personnel travaillant sur les collections
654
				nbreTotalPersonnelChp.setValue(""+grillePersonnel.getStore().getCount());
655
				// Activation du bouton supprimer si la grille contient un élément
656
				if (grillePersonnel.getStore().getCount() > 0) {
657
					ce.component.enable();
658
				}
659
			}
660
		});
661
		toolBar.add(ajouterPersonnelBtn);
662
		toolBar.add(new SeparatorToolItem());
663
		TextToolItem supprimerPersonnelBtn = new TextToolItem("Supprimer", "icone-vcard-supprimer");
664
		supprimerPersonnelBtn.addSelectionListener(new SelectionListener<ToolBarEvent>() {
665
			@Override
666
			public void componentSelected(ToolBarEvent ce) {
667
				grillePersonnel.getStore().remove(grillePersonnel.getStore().getAt(0));
668
				// Mise à jour du nombre de personnel travaillant sur les collections
669
				nbreTotalPersonnelChp.setValue(""+grillePersonnel.getStore().getCount());
670
				// Désactivation du bouton supprimer si la grille contient plus d'élément
671
				if (grillePersonnel.getStore().getCount() == 0) {
672
					ce.item.disable();
673
				}
674
			}
675
		});
676
		toolBar.add(supprimerPersonnelBtn);
102 jpm 677
		cp.setTopComponent(toolBar);
678
 
679
		ColumnModel cm = new ColumnModel(configs);
680
 
103 jpm 681
		grillePersonnel = new EditorGrid<Personne>(personnelGrilleMagazin, cm);
682
		grillePersonnel.setBorders(true);
683
		grillePersonnel.setSelectionModel(sm);
684
		grillePersonnel.addPlugin(sm);
685
		grillePersonnel.addPlugin(checkColumn);
110 jpm 686
  		grillePersonnel.setAutoExpandColumn("specialites");
102 jpm 687
 
103 jpm 688
		cp.add(grillePersonnel);
102 jpm 689
		return cp;
690
	}
691
 
110 jpm 692
	private TabItem creerOngletIdentification() {
693
		//+-----------------------------------------------------------------------------------------------------------+
694
		// Onlget formulaire IDENTIFICATION
695
		TabItem identificationOnglet = new TabItem();
696
		identificationOnglet.setText("Identification");
697
		identificationOnglet.setLayout(new FormLayout());
698
 
699
		//+-----------------------------------------------------------------------------------------------------------+
700
		// Fieldset IDENTITÉ
701
		FieldSet fieldSetIdentite = new FieldSet();
702
		fieldSetIdentite.setHeading("Identité");
703
		fieldSetIdentite.setCollapsible(true);
704
		fieldSetIdentite.setLayout(creerFormLayout(200, LabelAlign.LEFT, 4));
705
 
119 jpm 706
		nomStructureChp = new TextField<String>();
133 jpm 707
		nomStructureChp.setTabIndex(100);
110 jpm 708
		nomStructureChp.setFieldLabel("Nom de la structure");
709
		nomStructureChp.setAllowBlank(false);
710
		nomStructureChp.getMessages().setBlankText("Ce champ est obligatoire.");
711
		fieldSetIdentite.add(nomStructureChp, new FormData(450, 0));
712
 
713
		// Création du sous-formulaire : Acronyme
714
		LayoutContainer ligne = new LayoutContainer();
715
		ligne.setLayout(new ColumnLayout());
716
		LayoutContainer gauche = new LayoutContainer();
717
		gauche.setLayout(creerFormLayout(200, LabelAlign.LEFT, 0));
718
		LayoutContainer droite = new LayoutContainer();
719
		droite.setLayout(creerFormLayout(0, null, 0));
720
 
721
		ListStore<InterneValeur> acronymes = new ListStore<InterneValeur>();
722
		acronymes.add(InterneValeurListe.getTypeAcronyme());
723
 
133 jpm 724
		comboAcronyme = new ComboBox<InterneValeur>();
725
		comboAcronyme.setTabIndex(101);
110 jpm 726
		comboAcronyme.setEmptyText("Sélectioner un type d'acronyme...");
727
		comboAcronyme.setFieldLabel("Acronymes");
728
		comboAcronyme.setDisplayField("nom");
729
		comboAcronyme.setStore(acronymes);
730
		comboAcronyme.setEditable(false);
731
		comboAcronyme.setTypeAhead(true);
732
		comboAcronyme.setTriggerAction(TriggerAction.ALL);
733
		comboAcronyme.addSelectionChangedListener(new SelectionChangedListener<InterneValeur>() {
734
			@Override
735
			public void selectionChanged(SelectionChangedEvent<InterneValeur> se) {
736
				String acronymeAbr = se.getSelectedItem().getAbr();
737
				if (acronymeAbr.equals("IH")) {
738
					mnhnChp.hide();
739
					ihChp.show();
740
				} else if (acronymeAbr.equals("MNHN")) {
741
					ihChp.hide();
742
					mnhnChp.show();
743
				} else if (acronymeAbr.equals("")) {
744
					ihChp.hide();
745
					mnhnChp.hide();
746
					comboAcronyme.clearSelections();
747
				}
748
			}
749
        });
750
		gauche.add(comboAcronyme);
751
 
752
		ihChp = new TextField<String>();
753
		//ihChp.setEmptyText("Index Herbariorum");
133 jpm 754
		ihChp.setTabIndex(102);
110 jpm 755
		ihChp.setLabelSeparator("");
756
		ihChp.setToolTip("Index Herbariorum : herbier de plus de 5000 échantillons");
757
		ihChp.hide();
758
		droite.add(ihChp);
759
 
133 jpm 760
		mnhnChp = new TextField<String>();
761
		mnhnChp.setTabIndex(103);
110 jpm 762
		//mnhnChp.setEmptyText("MNHN");
763
		mnhnChp.setLabelSeparator("");
764
		mnhnChp.setToolTip("Acronyme MNHN : herbier de moins de 5000 échantillons");
765
		mnhnChp.hide();
766
		droite.add(mnhnChp);
767
 
768
		ligne.add(gauche, new ColumnData(0.5));
769
		ligne.add(droite, new ColumnData(0.5));
770
		fieldSetIdentite.add(ligne);
771
 
772
		// Création du sous-formulaire : Type de Structure
773
		LayoutContainer ligneTs = new LayoutContainer();
774
		ligneTs.setLayout(new ColumnLayout());
775
 
776
		LayoutContainer gaucheTs = new LayoutContainer();
777
		gaucheTs.setLayout(creerFormLayout(200, LabelAlign.LEFT, 0));
778
 
779
		LayoutContainer droiteTs = new LayoutContainer();
780
		droiteTs.setLayout(creerFormLayout(0, null, 0));
781
 
782
		ListStore<InterneValeur> typesStructure = new ListStore<InterneValeur>();
783
		typesStructure.add(InterneValeurListe.getTypeStructure());
784
 
133 jpm 785
		comboTypeStructure = new ComboBox<InterneValeur>();
786
		comboTypeStructure.setTabIndex(104);
110 jpm 787
		comboTypeStructure.setEmptyText("Sélectioner un type de structure...");
788
		comboTypeStructure.setFieldLabel("Statut des structures");
789
		comboTypeStructure.setDisplayField("nom");
790
		comboTypeStructure.setStore(typesStructure);
791
		comboTypeStructure.setEditable(false);
792
		comboTypeStructure.setTypeAhead(true);
793
		comboTypeStructure.setTriggerAction(TriggerAction.ALL);
794
		comboTypeStructure.addSelectionChangedListener(new SelectionChangedListener<InterneValeur>() {
795
			@Override
796
			public void selectionChanged(SelectionChangedEvent<InterneValeur> se) {
797
				String typeAbr = se.getSelectedItem().getAbr();
798
				if (typeAbr.equals("stpu")) {
799
					comboLstpr.hide();
800
					comboLstpu.show();
801
				} else if (typeAbr.equals("stpr")) {
802
					comboLstpu.hide();
803
					comboLstpr.show();
804
				} else if (typeAbr.equals("")) {
805
					comboLstpr.hide();
806
					comboLstpu.hide();
807
					comboTypeStructure.clearSelections();
808
				}
809
			}
810
        });
811
		gaucheTs.add(comboTypeStructure);
812
 
119 jpm 813
		modele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId("stpu"));
110 jpm 814
		magazinLstpu = new ListStore<Valeur>();
815
		magazinLstpu.add(new ArrayList<Valeur>());
133 jpm 816
		comboLstpu = new ComboBox<Valeur>();
817
		comboLstpu.setTabIndex(105);
110 jpm 818
		//comboLstpu.setFieldLabel("Statut des structures publiques");
819
		comboLstpu.setLabelSeparator("");
820
		comboLstpu.setDisplayField("nom");
821
		comboLstpu.setEditable(false);
822
		comboLstpu.setTriggerAction(TriggerAction.ALL);
823
		comboLstpu.setStore(magazinLstpu);
824
		comboLstpu.hide();
825
		droiteTs.add(comboLstpu);
826
 
119 jpm 827
		modele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId("stpr"));
110 jpm 828
		magazinLstpr = new ListStore<Valeur>();
829
		magazinLstpr.add(new ArrayList<Valeur>());
133 jpm 830
		comboLstpr = new ComboBox<Valeur>();
831
		comboLstpr.setTabIndex(106);
110 jpm 832
		//comboLstpr.setFieldLabel("Statut des structures privées");
833
		comboLstpr.setLabelSeparator("");
834
		comboLstpr.setDisplayField("nom");
835
		comboLstpr.setEditable(false);
836
		comboLstpr.setTriggerAction(TriggerAction.ALL);
837
		comboLstpr.setStore(magazinLstpr);
838
		comboLstpr.hide();
839
		droiteTs.add(comboLstpr);
840
 
841
		ligneTs.add(gaucheTs, new ColumnData(0.5));
842
		ligneTs.add(droiteTs, new ColumnData(0.5));
843
		fieldSetIdentite.add(ligneTs);
844
 
119 jpm 845
		dateFondationChp = new DateField();
133 jpm 846
		dateFondationChp.setTabIndex(107);
110 jpm 847
		dateFondationChp.setFieldLabel("Date de fondation");
848
		dateFondationChp.getPropertyEditor().getFormat();
849
		dateFondationChp.getPropertyEditor().setFormat(DateTimeFormat.getFormat("dd/MM/yyyy"));
850
		dateFondationChp.getMessages().setInvalidText("La valeur saisie n'est pas une date valide. La date doit être au format «jj/mm/aaaa».");
851
		fieldSetIdentite.add(dateFondationChp);
852
 
853
		identificationOnglet.add(fieldSetIdentite);
854
 
855
		//+-----------------------------------------------------------------------------------------------------------+
856
		// Fieldset ADRESSE
857
		LayoutContainer principalFdAdresse = new LayoutContainer();
858
		principalFdAdresse.setLayout(new ColumnLayout());
859
 
860
		LayoutContainer gaucheFdAdresse = new LayoutContainer();
861
		gaucheFdAdresse.setLayout(creerFormLayout(100, LabelAlign.LEFT, 0));
862
 
863
		LayoutContainer droiteFdAdresse = new LayoutContainer();
864
		droiteFdAdresse.setLayout(creerFormLayout(100, LabelAlign.LEFT, 0));
865
 
866
		FieldSet fieldSetAdresse = new FieldSet();
867
		fieldSetAdresse.setHeading("Adresse");
868
		fieldSetAdresse.setCollapsible(true);
869
 
870
		fieldSetAdresse.setLayout(creerFormLayout(100, LabelAlign.LEFT, 4));
871
 
164 jp_milcent 872
		adrChp = new TextArea();
133 jpm 873
		adrChp.setTabIndex(108);
110 jpm 874
		adrChp.setFieldLabel("Adresse");
875
		fieldSetAdresse.add(adrChp, new FormData(550, 0));
876
 
133 jpm 877
		cpChp = new TextField<String>();
878
		cpChp.setTabIndex(109);
110 jpm 879
		cpChp.setFieldLabel("Code postal");
880
		gaucheFdAdresse.add(cpChp);
881
 
133 jpm 882
		villeChp = new TextField<String>();
883
		villeChp.setTabIndex(110);
110 jpm 884
		villeChp.setFieldLabel("Ville");
885
		droiteFdAdresse.add(villeChp);
886
 
133 jpm 887
		regionChp = new TextField<String>();
888
		regionChp.setTabIndex(111);
110 jpm 889
		regionChp.setFieldLabel("Région");
890
		gaucheFdAdresse.add(regionChp);
891
 
164 jp_milcent 892
		//paysChp = new TextField<String>();
893
		//paysChp.setTabIndex(112);
894
		//paysChp.setFieldLabel("Pays");
895
		modele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId("pays"));
896
		magazinPays = new ListStore<Valeur>();
897
		magazinPays.add(new ArrayList<Valeur>());
898
		comboPays = new ComboBox<Valeur>();
899
		comboPays.setTabIndex(112);
900
		comboPays.setFieldLabel("Pays");
901
		comboPays.setEditable(true);
902
		//comboLstpu.setFieldLabel("Statut des structures publiques");
903
		comboPays.setLabelSeparator("");
904
		comboPays.setDisplayField("nom");
905
		comboPays.setEditable(false);
906
		comboPays.setTriggerAction(TriggerAction.ALL);
907
		comboPays.setStore(magazinPays);
908
		droiteFdAdresse.add(comboPays);
110 jpm 909
 
910
		principalFdAdresse.add(gaucheFdAdresse, new ColumnData(.5));
911
		principalFdAdresse.add(droiteFdAdresse, new ColumnData(.5));
912
		fieldSetAdresse.add(principalFdAdresse);
913
		identificationOnglet.add(fieldSetAdresse);
914
 
915
		//+-----------------------------------------------------------------------------------------------------------+
916
		// Fieldset TÉLÉPHONE et EMAIL
917
		LayoutContainer principalFdTelMail = new LayoutContainer();
918
		principalFdTelMail.setLayout(new ColumnLayout());
919
 
920
		LayoutContainer gaucheFdTelMail = new LayoutContainer();
921
		gaucheFdTelMail.setLayout(creerFormLayout(100, LabelAlign.LEFT, 0));
922
 
923
		LayoutContainer droiteFdTelMail = new LayoutContainer();
924
		droiteFdTelMail.setLayout(creerFormLayout(100, LabelAlign.LEFT, 0));
925
 
926
		FieldSet fieldSetTelMail = new FieldSet();
927
		fieldSetTelMail.setHeading("Communication");
928
		fieldSetTelMail.setCollapsible(true);
929
 
930
		fieldSetTelMail.setLayout(creerFormLayout(200, LabelAlign.LEFT, 4));
931
 
133 jpm 932
		telChp = new TextField<String>();
933
		telChp.setTabIndex(113);
110 jpm 934
		telChp.setFieldLabel("Téléphone");
935
		gaucheFdTelMail.add(telChp);
936
 
133 jpm 937
		faxChp = new TextField<String>();
938
		faxChp.setTabIndex(114);
110 jpm 939
		faxChp.setFieldLabel("Fax");
940
		droiteFdTelMail.add(faxChp);
941
 
133 jpm 942
		emailChp = new TextField<String>();
943
		emailChp.setTabIndex(115);
110 jpm 944
		emailChp.setFieldLabel("Courriel");
945
		emailChp.setToolTip("Saisir le courriel de l'organisation, pas de courriel individuel. Ex. : accueil@organisation.org");
946
		gaucheFdTelMail.add(emailChp);
947
 
133 jpm 948
		urlChp = new TextField<String>();
949
		urlChp.setTabIndex(116);
110 jpm 950
		urlChp.setFieldLabel("Site web");
951
		droiteFdTelMail.add(urlChp);
952
 
953
		principalFdTelMail.add(gaucheFdTelMail, new ColumnData(.5));
954
		principalFdTelMail.add(droiteFdTelMail, new ColumnData(.5));
955
		fieldSetTelMail.add(principalFdTelMail);
956
		identificationOnglet.add(fieldSetTelMail);
957
 
958
		return identificationOnglet;
959
	}
960
 
108 jpm 961
	/** Méthode simplifiant la création de FormLayout.
110 jpm 962
	 * Chacun des paramètres peut prendre la valeur null pour utiliser la valeur par défaut.
108 jpm 963
	 *
110 jpm 964
	 * @param labelWidth largeur des labels.
108 jpm 965
	 * @param labelAlign alignement des labels
966
	 * @param padding padding du layout
967
	 * @return
968
	 */
969
	private FormLayout creerFormLayout(Integer labelWidth, LabelAlign labelAlign, Integer padding) {
970
		FormLayout formLayout = new FormLayout();
110 jpm 971
		if (labelWidth != null) {
972
			formLayout.setLabelWidth(labelWidth);
973
		}
974
		if (labelAlign != null) {
975
			formLayout.setLabelAlign(labelAlign);
976
		}
108 jpm 977
		if (padding != null) {
978
			formLayout.setPadding(padding);
979
		}
980
		return formLayout;
981
	}
982
 
109 jpm 983
	/** Méthode simplifiant la création de bouton radio oui/non
984
	 *
985
	 * @param listeNom nom de la liste de valeur
986
	 * @return
987
	 */
115 jpm 988
	private RadioGroup creerChoixUniqueRadioGroupe(String groupeNom, String listeNom) {
989
		groupeNom += "_grp";
990
		// NOTE : il semblerait qu'il faille aussi utiliser setName() pour éviter tout problème...
991
		RadioGroup radioGroup = new RadioGroup(groupeNom);
992
		radioGroup.setName(groupeNom);
119 jpm 993
 
115 jpm 994
		if (! listeNom.equals("ouiNon")) {
119 jpm 995
			modele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(listeNom));
115 jpm 996
		} else {
997
			ValeurListe ouiNonListe = new ValeurListe();
119 jpm 998
			ouiNonListe.ajouter(new Valeur("000999", "Oui", "NULL", "NULL"));
999
			ouiNonListe.ajouter(new Valeur("000998", "Non", "NULL", "NULL"));
115 jpm 1000
			creerChoixUniqueBoutonRadio(radioGroup, ouiNonListe);
1001
		}
109 jpm 1002
 
115 jpm 1003
		return radioGroup;
109 jpm 1004
	}
1005
 
115 jpm 1006
	private void creerChoixUniqueBoutonRadio(RadioGroup radioGroupe, ValeurListe listeValeurs) {
1007
		for (Iterator<String> it = listeValeurs.keySet().iterator(); it.hasNext();) {
1008
			Valeur val = listeValeurs.get(it.next());
1009
 
1010
			Radio radioBtn = new Radio();
119 jpm 1011
			radioGroupe.add(radioBtn);
1012
			radioBtn.setName(radioGroupe.getName().replace("_grp", ""));
115 jpm 1013
			//radioBtn.setId(val.getId()+"_"+radioBtn.getName());
1014
			radioBtn.setBoxLabel(val.getNom());
119 jpm 1015
			radioBtn.addListener(Events.Change, new Listener<ComponentEvent>() {
115 jpm 1016
 
119 jpm 1017
				public void handleEvent(ComponentEvent be) {
133 jpm 1018
					//Window.alert(((Radio) be.component).getName());
1019
					afficherChampSupplementaire(((Radio) be.component));
115 jpm 1020
				}
1021
 
1022
			});
119 jpm 1023
 
115 jpm 1024
			if (! val.getDescription().equals("NULL")) {
1025
				radioBtn.setToolTip(new ToolTipConfig(val.getNom(), val.getDescription()));
1026
			}
1027
		}
1028
	}
1029
 
1030
	private void afficherChampSupplementaire(Radio radioBtn) {
119 jpm 1031
		//GWT.log("Nom btn : "+radioBtn.getName()+" - Nom group : "+radioBtn.getGroup().getName(), null);
115 jpm 1032
		// Valeur du bouton radio déclenchant l'affichage des composants cachés
1033
		String valeurPourAfficher = "oui";
111 jpm 1034
 
115 jpm 1035
		// Construction de la liste des composants à afficher/cacher
1036
		String radioGroupeNom = radioBtn.getGroup().getName();
1037
		ArrayList<Object> composants = new ArrayList<Object>();
1038
		if (radioGroupeNom.equals("action_mark_grp")) {
1039
			composants.add(actionTrukCp);
1040
		} else if (radioGroupeNom.equals("future_action_mark_grp")) {
1041
			composants.add(futureActionChp);
1042
		} else if (radioGroupeNom.equals("sans_motif_acces_mark_grp")) {
1043
			composants.add(sansMotifAccesChp);
1044
		} else if (radioGroupeNom.equals("avec_motif_acces_mark_grp")) {
1045
			composants.add(avecMotifAccesChp);
1046
		} else if (radioGroupeNom.equals("recherche_mark_grp")) {
1047
			composants.add(provenanceRechercheTrukCp);
119 jpm 1048
			composants.add(typeRechercheTrukCp);
115 jpm 1049
		} else if (radioGroupeNom.equals("formation_mark_grp")) {
1050
			composants.add(formationChp);
1051
		} else if (radioGroupeNom.equals("collection_commune_mark_grp")) {
1052
			composants.add(collectionAutreTrukCp);
1053
		} else if (radioGroupeNom.equals("restauration_mark_grp")) {
1054
			composants.add(opRestauTrukCp);
1055
		} else if (radioGroupeNom.equals("traitement_mark_grp")) {
1056
			composants.add(traitementTrukCp);
1057
		} else if (radioGroupeNom.equals("echantillon_acquisition_mark_grp")) {
1058
			composants.add(traitementAcquisitionMarkRGrpChp);
1059
		} else if (radioGroupeNom.equals("traitement_acquisition_mark_grp")) {
1060
			composants.add(traitementAcquisitionMarkLabel);
1061
			composants.add(poisonTraitementTrukCp);
1062
			composants.add(insecteTraitementTrukCp);
1063
		} else if (radioGroupeNom.equals("materiel_conservation_ce_grp")) {
1064
			composants.add(autreMaterielTrukCp);
1065
			valeurPourAfficher = "non";
1066
		}
111 jpm 1067
 
115 jpm 1068
		// Nous affichons/cachons les composant de la liste
1069
		final int tailleMax = composants.size();
1070
		//GWT.log("Id : "+radioBtn.getId()+" - Class : "+radioBtn.getClass().toString()+"- Taille : "+tailleMax, null);
119 jpm 1071
		//Window.alert("Radio grp nom : "+radioGroupeNom+" - Id btn : "+radioBtn.getId()+" - Class : "+radioBtn.getClass().toString()+"- Taille : "+tailleMax);
111 jpm 1072
		for (int i = 0; i < tailleMax; i++) {
1073
			// En fonction du type de bouton cliquer, on affiche ou cache les champs
115 jpm 1074
			String type = radioBtn.getBoxLabel().toLowerCase();
119 jpm 1075
			//GWT.log(type, null);
115 jpm 1076
			if (radioBtn.getValue() == true) {
1077
				if (type.equals(valeurPourAfficher)) {
1078
					((Component) composants.get(i)).show();
1079
				} else {
1080
					((Component) composants.get(i)).hide();
1081
				}
111 jpm 1082
			}
1083
			// Si on a à faire à un ContentPanel, on l'actualise pour déclencher l'affichage
115 jpm 1084
			if (composants.get(i) instanceof ContentPanel) {
1085
				((ContentPanel) composants.get(i)).layout();
111 jpm 1086
			}
1087
		}
1088
 
1089
	}
1090
 
109 jpm 1091
	/** Méthode simplifiant la création de choix multiple sous forme de case à cocher.
1092
	 * Apelle un service retournant la liste des valeurs représentant les cases à cocher.
1093
	 * Ajoute ou pas un champ "Autre".
1094
	 *
1095
	 * @param listeNom nom de la liste de valeur
1096
	 * @return
1097
	 */
1098
	private ContentPanel creerChoixMultipleCp(String listeNom) {
119 jpm 1099
		modele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(listeNom));
109 jpm 1100
		ContentPanel cp = new ContentPanel();
1101
		cp.setLayout(creerFormLayout(650, LabelAlign.TOP, 0));
1102
		cp.setHeaderVisible(false);
1103
		return cp;
1104
	}
1105
 
1106
	/** Méthode simplifiant la création de choix multiple sous forme de case à cocher.
1107
	 * Apelle un service retournant la liste des valeurs représentant les cases à cocher.
1108
	 * Ajoute ou pas un champ "Autre".
1109
	 *
1110
	 * @param cp panneau conteant le groupe de case à cocher
1111
	 * @param cacGroup le groupe de case à cocher
1112
	 * @param listeValeurs la liste de valeurs à transformer en case à cocher
1113
	 * @param boolAutreChp booléen indiquant si oui ou non le champ autre doit apparaître
1114
	 * @return
1115
	 */
115 jpm 1116
	private void creerChoixMultipleCac(ContentPanel cp, CheckBoxGroup cacGroupe, ValeurListe listeValeurs, Boolean boolAutreChp) {
110 jpm 1117
		cacGroupe.setAutoWidth(true);
109 jpm 1118
		for (Iterator<String> it = listeValeurs.keySet().iterator(); it.hasNext();) {
111 jpm 1119
			Valeur val = listeValeurs.get(it.next());
1120
			String nom =  val.get("nom");
109 jpm 1121
			CheckBox cac = new CheckBox();
115 jpm 1122
			cac.setId("val-"+val.getId());
111 jpm 1123
			cac.setBoxLabel(nom);
1124
			if (! val.getDescription().equals("NULL")) {
1125
				cac.setToolTip(new ToolTipConfig(val.getNom(), val.getDescription()));
109 jpm 1126
			}
1127
			cacGroupe.add(cac);
1128
		}
1129
		cp.add(cacGroupe);
1130
 
1131
		if (boolAutreChp == true) {
1132
			ContentPanel autreCp = new ContentPanel();
1133
			autreCp.setLayout(creerFormLayout(75, LabelAlign.TOP, 0));
1134
			autreCp.setHeaderVisible(false);
119 jpm 1135
			TextField<String> autreChp = new TextField<String>();
1136
			autreChp.setFieldLabel("Autre");
1137
			autreChp.setLabelStyle("font-weight:normal;");
1138
			autreCp.add(autreChp);
109 jpm 1139
			cp.add(autreCp);
1140
		}
1141
 
1142
		cp.layout();
1143
	}
1144
 
69 jpm 1145
	public void rafraichir(Object nouvelleDonnees) {
153 jpm 1146
		if (nouvelleDonnees instanceof Information) {
1147
			Information info = (Information) nouvelleDonnees;
156 jp_milcent 1148
			if (info.getMessages() != null) {
1149
				GWT.log(info.getMessages().toString(), null);
1150
			}
153 jpm 1151
			if (info.getType().equals("ajout_structure")) {
1152
				Info.display("Ajout d'une Institution", info.toString());
156 jp_milcent 1153
			} else if (info.getType().equals("selection_structure")) {
1154
				Info.display("Modification d'une Institution", info.toString());
1155
				Structure str = (Structure) info.getDonnee(0);
1156
				mode = "MODIF";
1157
				structureFormPanneau.setHeading(i18nC.titreModifFormStructurePanneau());
1158
				peuplerFormulaire(str);
153 jpm 1159
			}
119 jpm 1160
		} else if (nouvelleDonnees instanceof ValeurListe) {
91 jpm 1161
			ValeurListe listeValeurs = (ValeurListe) nouvelleDonnees;
1162
 
1163
			List<Valeur> liste = new ArrayList<Valeur>();
1164
			for (Iterator<String> it = listeValeurs.keySet().iterator(); it.hasNext();) {
1165
				liste.add(listeValeurs.get(it.next()));
1166
			}
1167
			// Test pour savoir si la liste contient des éléments
1168
			if (liste.size() > 0) {
1169
				Configuration config = (Configuration) Registry.get(RegistreId.CONFIG);
1170
				if (listeValeurs.getId().equals(config.getListeId("stpr"))) {
1171
					magazinLstpr.removeAll();
1172
					magazinLstpr.add(liste);
1173
					comboLstpr.setStore(magazinLstpr);
1174
				}
1175
				if (listeValeurs.getId().equals(config.getListeId("stpu"))) {
1176
					magazinLstpu.removeAll();
1177
					magazinLstpu.add(liste);
1178
					comboLstpu.setStore(magazinLstpu);
1179
				}
103 jpm 1180
				if (listeValeurs.getId().equals(config.getListeId("statut"))) {
1181
					magazinLiStatut.removeAll();
1182
					magazinLiStatut.add(liste);
1183
					comboLiStatut.setStore(magazinLiStatut);
1184
				}
1185
				if (listeValeurs.getId().equals(config.getListeId("fonction"))) {
1186
					magazinLiFonction.removeAll();
1187
					magazinLiFonction.add(liste);
1188
					comboLiFonction.setStore(magazinLiFonction);
1189
				}
164 jp_milcent 1190
				if (listeValeurs.getId().equals(config.getListeId("pays"))) {
1191
					magazinPays.removeAll();
1192
					magazinPays.add(liste);
1193
					comboPays.setStore(magazinPays);
1194
				}
108 jpm 1195
				if (listeValeurs.getId().equals(config.getListeId("localStockage"))) {
115 jpm 1196
					creerChoixMultipleCac(localStockageTrukCp, localStockageTrukCacGrpChp, listeValeurs, true);
108 jpm 1197
				}
1198
				if (listeValeurs.getId().equals(config.getListeId("meubleStockage"))) {
115 jpm 1199
					creerChoixMultipleCac(meubleStockageTrukCp, meubleStockageTrukCacGrpChp, listeValeurs, true);
108 jpm 1200
				}
109 jpm 1201
				if (listeValeurs.getId().equals(config.getListeId("parametreStockage"))) {
115 jpm 1202
					creerChoixMultipleCac(parametreStockageTrukCp, parametreStockageTrukCacGrpChp, listeValeurs, true);
109 jpm 1203
				}
110 jpm 1204
				if (listeValeurs.getId().equals(config.getListeId("autreCollection"))) {
111 jpm 1205
					if (collectionAutreTrukCp.getItemByItemId("collectionAutreTrukCacGrpChp") == null) {
1206
						collectionAutreTrukCacGrpChp.setId("collectionAutreTrukCacGrpChp");
115 jpm 1207
						creerChoixMultipleCac(collectionAutreTrukCp, collectionAutreTrukCacGrpChp, listeValeurs, true);
111 jpm 1208
					}
1209
					if (autreCollectionTrukCp.getItemByItemId("autreCollectionTrukCacGrpChp") == null) {
119 jpm 1210
						autreCollectionTrukCacGrpChp.setId("autreCollectionTrukCacGrpChp");
1211
						creerChoixMultipleCac(autreCollectionTrukCp, autreCollectionTrukCacGrpChp, listeValeurs, true);
111 jpm 1212
					}
110 jpm 1213
				}
1214
				if (listeValeurs.getId().equals(config.getListeId("opRestau"))) {
115 jpm 1215
					creerChoixMultipleCac(opRestauTrukCp, opRestauTrukCacGrpChp, listeValeurs, true);
110 jpm 1216
				}
1217
				if (listeValeurs.getId().equals(config.getListeId("onep"))) {
115 jpm 1218
					creerChoixUniqueBoutonRadio(materielConservationCeRGrpChp, listeValeurs);
110 jpm 1219
				}
1220
				if (listeValeurs.getId().equals(config.getListeId("autreMateriel"))) {
115 jpm 1221
					creerChoixMultipleCac(autreMaterielTrukCp, autreMaterielTrukCacGrpChp, listeValeurs, true);
110 jpm 1222
				}
1223
				if (listeValeurs.getId().equals(config.getListeId("poisonTraitement"))) {
115 jpm 1224
					creerChoixMultipleCac(poisonTraitementTrukCp, poisonTraitementTrukCacGrpChp, listeValeurs, true);
110 jpm 1225
				}
1226
				if (listeValeurs.getId().equals(config.getListeId("insecteTraitement"))) {
115 jpm 1227
					if (traitementTrukCp.getItemByItemId("traitementTrukCacGrpChp") == null) {
1228
						traitementTrukCacGrpChp.setId("traitementTrukCacGrpChp");
1229
						creerChoixMultipleCac(traitementTrukCp, traitementTrukCacGrpChp, listeValeurs, true);
110 jpm 1230
					}
115 jpm 1231
					if (insecteTraitementTrukCp.getItemByItemId("insecteTraitementTrukCacGrpChp") == null) {
1232
						insecteTraitementTrukCacGrpChp.setId("insecteTraitementTrukCacGrpChp");
1233
						creerChoixMultipleCac(insecteTraitementTrukCp, insecteTraitementTrukCacGrpChp, listeValeurs, true);
110 jpm 1234
					}
1235
				}
111 jpm 1236
				if (listeValeurs.getId().equals(config.getListeId("actionValorisation"))) {
115 jpm 1237
					creerChoixMultipleCac(actionTrukCp, actionTrukCacGrpChp, listeValeurs, true);
111 jpm 1238
				}
1239
				if (listeValeurs.getId().equals(config.getListeId("continentEtFr"))) {
115 jpm 1240
					creerChoixMultipleCac(provenanceRechercheTrukCp, provenanceRechercheTrukCacGrpChp, listeValeurs, true);
111 jpm 1241
				}
1242
				if (listeValeurs.getId().equals(config.getListeId("typeRecherche"))) {
119 jpm 1243
					creerChoixMultipleCac(typeRechercheTrukCp, typeRechercheTrukCacGrpChp, listeValeurs, true);
111 jpm 1244
				}
110 jpm 1245
				//GWT.log("La liste #"+listeValeurs.getId()+" a été reçue!", null);
91 jpm 1246
			} else {
1247
				GWT.log("La liste #"+listeValeurs.getId()+" ne contient aucune valeurs!", null);
1248
			}
1249
		}
69 jpm 1250
	}
100 jpm 1251
 
115 jpm 1252
}