Subversion Repositories eFlore/Applications.coel

Rev

Rev 1637 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1637 Rev 1733
1
package org.tela_botanica.client.vues.structure;
1
package org.tela_botanica.client.vues.structure;
2
 
2
 
3
import java.util.ArrayList;
3
import java.util.ArrayList;
4
import java.util.List;
4
import java.util.List;
5
 
5
 
6
import org.tela_botanica.client.Mediateur;
6
import org.tela_botanica.client.Mediateur;
7
import org.tela_botanica.client.interfaces.Rafraichissable;
7
import org.tela_botanica.client.interfaces.Rafraichissable;
8
import org.tela_botanica.client.modeles.Information;
8
import org.tela_botanica.client.modeles.Information;
9
import org.tela_botanica.client.modeles.Valeur;
9
import org.tela_botanica.client.modeles.Valeur;
10
import org.tela_botanica.client.modeles.ValeurListe;
10
import org.tela_botanica.client.modeles.ValeurListe;
11
import org.tela_botanica.client.modeles.structure.StructureValorisation;
11
import org.tela_botanica.client.modeles.structure.StructureValorisation;
12
import org.tela_botanica.client.synchronisation.Sequenceur;
12
import org.tela_botanica.client.synchronisation.Sequenceur;
13
import org.tela_botanica.client.vues.Formulaire;
13
import org.tela_botanica.client.vues.Formulaire;
14
import org.tela_botanica.client.vues.FormulaireOnglet;
14
import org.tela_botanica.client.vues.FormulaireOnglet;
15
 
15
 
16
import com.extjs.gxt.ui.client.event.BaseEvent;
16
import com.extjs.gxt.ui.client.event.BaseEvent;
17
import com.extjs.gxt.ui.client.event.ComponentEvent;
17
import com.extjs.gxt.ui.client.event.ComponentEvent;
18
import com.extjs.gxt.ui.client.event.Events;
18
import com.extjs.gxt.ui.client.event.Events;
19
import com.extjs.gxt.ui.client.event.Listener;
19
import com.extjs.gxt.ui.client.event.Listener;
20
import com.extjs.gxt.ui.client.widget.Component;
20
import com.extjs.gxt.ui.client.widget.Component;
21
import com.extjs.gxt.ui.client.widget.ContentPanel;
21
import com.extjs.gxt.ui.client.widget.ContentPanel;
22
import com.extjs.gxt.ui.client.widget.LayoutContainer;
22
import com.extjs.gxt.ui.client.widget.LayoutContainer;
23
import com.extjs.gxt.ui.client.widget.form.CheckBox;
23
import com.extjs.gxt.ui.client.widget.form.CheckBox;
24
import com.extjs.gxt.ui.client.widget.form.CheckBoxGroup;
24
import com.extjs.gxt.ui.client.widget.form.CheckBoxGroup;
25
import com.extjs.gxt.ui.client.widget.form.Radio;
25
import com.extjs.gxt.ui.client.widget.form.Radio;
26
import com.extjs.gxt.ui.client.widget.form.RadioGroup;
26
import com.extjs.gxt.ui.client.widget.form.RadioGroup;
27
import com.extjs.gxt.ui.client.widget.form.TextArea;
27
import com.extjs.gxt.ui.client.widget.form.TextArea;
28
import com.extjs.gxt.ui.client.widget.form.TextField;
28
import com.extjs.gxt.ui.client.widget.form.TextField;
29
import com.extjs.gxt.ui.client.widget.form.FormPanel.LabelAlign;
29
import com.extjs.gxt.ui.client.widget.form.FormPanel.LabelAlign;
30
import com.extjs.gxt.ui.client.widget.layout.FormData;
30
import com.extjs.gxt.ui.client.widget.layout.FormData;
31
 
31
 
32
public class StructureFormValorisation extends FormulaireOnglet implements Rafraichissable {
32
public class StructureFormValorisation extends FormulaireOnglet implements Rafraichissable {
33
 
33
 
34
	private StructureValorisation valorisation = null;
34
	private StructureValorisation valorisation = null;
35
	
35
	
36
	private LayoutContainer autreCollectionTrukCp = null;
36
	private LayoutContainer autreCollectionTrukCp = null;
37
	private TextField<String> typeRechercheAutreChp = null;
37
	private TextField<String> typeRechercheAutreChp = null;
38
	private CheckBoxGroup autreCollectionTrukCacGrpChp = null;
38
	private CheckBoxGroup autreCollectionTrukCacGrpChp = null;
39
	private LayoutContainer provenanceRechercheTrukCp = null;
39
	private LayoutContainer provenanceRechercheTrukCp = null;
40
	private CheckBoxGroup provenanceRechercheTrukCacGrpChp = null;
40
	private CheckBoxGroup provenanceRechercheTrukCacGrpChp = null;
41
	private CheckBoxGroup typeRechercheTrukCacGrpChp = null;
41
	private CheckBoxGroup typeRechercheTrukCacGrpChp = null;
42
	private LayoutContainer typeRechercheTrukCp = null;
42
	private LayoutContainer typeRechercheTrukCp = null;
43
	private TextField<String> futureActionChp = null;
43
	private TextField<String> futureActionChp = null;
44
	private TextField<String> sansMotifAccesChp = null;
44
	private TextField<String> sansMotifAccesChp = null;
45
	private TextField<String> avecMotifAccesChp = null;
45
	private TextField<String> avecMotifAccesChp = null;
46
	private TextField<String> autreCollectionAutreChp = null;
46
	private TextField<String> autreCollectionAutreChp = null;
47
	private TextField<String> actionAutreChp = null;
47
	private TextField<String> actionAutreChp = null;
48
	private TextField<String> provenanceRechercheAutreChp = null;
48
	private TextField<String> provenanceRechercheAutreChp = null;
49
	
49
	
50
	private RadioGroup actionMarkRGrpChp = null;
50
	private RadioGroup actionMarkRGrpChp = null;
51
	private LayoutContainer actionTrukCp = null;
51
	private LayoutContainer actionTrukCp = null;
52
	private CheckBoxGroup actionTrukCacGrpChp = null;
52
	private CheckBoxGroup actionTrukCacGrpChp = null;
53
	private RadioGroup futureActionMarkRGrpChp = null;
53
	private RadioGroup futureActionMarkRGrpChp = null;
54
	private RadioGroup rechercheMarkRGrpChp = null;
54
	private RadioGroup rechercheMarkRGrpChp = null;
55
	private RadioGroup sansMotifAccesMarkRGrpChp = null;
55
	private RadioGroup sansMotifAccesMarkRGrpChp = null;
56
	private RadioGroup avecMotifAccesMarkRGrpChp = null;
56
	private RadioGroup avecMotifAccesMarkRGrpChp = null;
57
	private TextField<String> publicationChp = null;
57
	private TextField<String> publicationChp = null;
58
	
58
	
59
	private String ID = "valorisation";
59
	private String ID = "valorisation";
60
	private Mediateur mediateur = null;
60
	private Mediateur mediateur = null;
61
	private Formulaire formulaireCourant = null;
61
	private Formulaire formulaireCourant = null;
62
	private Sequenceur sequenceur = null;
62
	private Sequenceur sequenceur = null;
63
	
63
	
64
	public StructureFormValorisation(Mediateur mediateur, Formulaire formulaireCourant, Sequenceur sequenceur) {		
64
	public StructureFormValorisation(Mediateur mediateur, Formulaire formulaireCourant, Sequenceur sequenceur) {		
65
		this.mediateur = mediateur;
65
		this.mediateur = mediateur;
66
		this.formulaireCourant = formulaireCourant;
66
		this.formulaireCourant = formulaireCourant;
67
		this.sequenceur = sequenceur;
67
		this.sequenceur = sequenceur;
68
		
68
		
69
		initialiserOnglet(formulaireCourant);
69
		initialiserOnglet(formulaireCourant);
70
		
70
		
71
		setId(ID);
71
		setId(ID);
72
		setText(Mediateur.i18nC.structureInfoValorisation());
72
		setText(Mediateur.i18nC.structureInfoValorisation());
73
		FormulaireOnglet.parametrer(this);
73
		FormulaireOnglet.parametrer(this);
74
		
74
		
75
		this.setLayout(Formulaire.creerFormLayout(650, LabelAlign.TOP));
75
		this.setLayout(Formulaire.creerFormLayout(650, LabelAlign.TOP));
76
		Listener<ComponentEvent> ecouteurSelection = new Listener<ComponentEvent>() {  
76
		Listener<ComponentEvent> ecouteurSelection = new Listener<ComponentEvent>() {  
77
			public void handleEvent(ComponentEvent be) {  
77
			public void handleEvent(ComponentEvent be) {  
78
				peupler();
78
				peupler();
79
				layout();
79
				layout();
80
			}  
80
			}  
81
		};
81
		};
82
		this.addListener(Events.Select, ecouteurSelection);
82
		this.addListener(Events.Select, ecouteurSelection);
83
		
83
		
84
		actionMarkRGrpChp = formulaireCourant.creerChoixUniqueRadioGroupe("action_mark", "ouiNon");
84
		actionMarkRGrpChp = formulaireCourant.creerChoixUniqueRadioGroupe("action_mark", "ouiNon");
85
		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 ?");
85
		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 ?");
86
		this.add(actionMarkRGrpChp);
86
		this.add(actionMarkRGrpChp);
87
		
87
		
88
		
88
		
89
		actionTrukCp = Formulaire.creerChoixMultipleCp();
89
		actionTrukCp = Formulaire.creerChoixMultipleCp();
90
		actionTrukCp.hide();
90
		actionTrukCp.hide();
91
		actionTrukCacGrpChp = new CheckBoxGroup();
91
		actionTrukCacGrpChp = new CheckBoxGroup();
92
		actionTrukCacGrpChp.setFieldLabel("Si oui, lesquelles ?");
92
		actionTrukCacGrpChp.setFieldLabel("Si oui, lesquelles ?");
93
		this.add(actionTrukCp);
93
		this.add(actionTrukCp);
94
		mediateur.obtenirListeValeurEtRafraichir(this, "actionValorisation", sequenceur);
94
		mediateur.obtenirListeValeurEtRafraichir(this, "actionValorisation", sequenceur);
95
		mediateur.obtenirListeValeurEtRafraichir(this, "statut", sequenceur);
95
		mediateur.obtenirListeValeurEtRafraichir(this, "statut", sequenceur);
96
		
96
		
97
		publicationChp = new TextArea();
97
		publicationChp = new TextArea();
98
		publicationChp.setFieldLabel("Quelques titres des ouvrages, articles scientifiques, ...");
98
		publicationChp.setFieldLabel("Quelques titres des ouvrages, articles scientifiques, ...");
99
		this.add(publicationChp, new FormData(550, 0));
99
		this.add(publicationChp, new FormData(550, 0));
100
		
100
		
101
		autreCollectionTrukCp = Formulaire.creerChoixMultipleCp();
101
		autreCollectionTrukCp = Formulaire.creerChoixMultipleCp();
102
		autreCollectionTrukCacGrpChp = new CheckBoxGroup();
102
		autreCollectionTrukCacGrpChp = new CheckBoxGroup();
103
		autreCollectionTrukCacGrpChp.setFieldLabel("L'organisme dispose-t-il d'autres collections (permettant une valorisation pluridisciplinaire) ?");
103
		autreCollectionTrukCacGrpChp.setFieldLabel("L'organisme dispose-t-il d'autres collections (permettant une valorisation pluridisciplinaire) ?");
104
		this.add(autreCollectionTrukCp);
104
		this.add(autreCollectionTrukCp);
105
		mediateur.obtenirListeValeurEtRafraichir(this, "autreCollection", sequenceur);
105
		mediateur.obtenirListeValeurEtRafraichir(this, "autreCollection", sequenceur);
106
		
106
		
107
		futureActionMarkRGrpChp = formulaireCourant.creerChoixUniqueRadioGroupe("future_action_mark", "ouiNon");
107
		futureActionMarkRGrpChp = formulaireCourant.creerChoixUniqueRadioGroupe("future_action_mark", "ouiNon");
108
		futureActionMarkRGrpChp.setFieldLabel("Envisagez vous des actions de valorisation dans le cadre de votre politique culturelle ?");
108
		futureActionMarkRGrpChp.setFieldLabel("Envisagez vous des actions de valorisation dans le cadre de votre politique culturelle ?");
109
		this.add(futureActionMarkRGrpChp);
109
		this.add(futureActionMarkRGrpChp);
110
		
110
		
111
		futureActionChp = new TextArea();
111
		futureActionChp = new TextArea();
112
		futureActionChp.setFieldLabel("Si oui, lesquelles ?");
112
		futureActionChp.setFieldLabel("Si oui, lesquelles ?");
113
		futureActionChp.hide();
113
		futureActionChp.hide();
114
		futureActionChp.addListener(Events.Hide, new Listener<BaseEvent>() {
114
		futureActionChp.addListener(Events.Hide, new Listener<BaseEvent>() {
115
 
115
 
116
			public void handleEvent(BaseEvent be) {
116
			public void handleEvent(BaseEvent be) {
117
				((TextArea) be.getSource()).setValue("");
117
				((TextArea) be.getSource()).setValue("");
118
			}
118
			}
119
			
119
			
120
		});
120
		});
121
		this.add(futureActionChp, new FormData(550, 0));
121
		this.add(futureActionChp, new FormData(550, 0));
122
		
122
		
123
		rechercheMarkRGrpChp = formulaireCourant.creerChoixUniqueRadioGroupe("recherche_mark", "ouiNon");
123
		rechercheMarkRGrpChp = formulaireCourant.creerChoixUniqueRadioGroupe("recherche_mark", "ouiNon");
124
		rechercheMarkRGrpChp.setFieldLabel("Vos collections botaniques sont-elles utilisées pour des recherches scientifiques ?");
124
		rechercheMarkRGrpChp.setFieldLabel("Vos collections botaniques sont-elles utilisées pour des recherches scientifiques ?");
125
		this.add(rechercheMarkRGrpChp);
125
		this.add(rechercheMarkRGrpChp);
126
		
126
		
127
		provenanceRechercheTrukCp = Formulaire.creerChoixMultipleCp();
127
		provenanceRechercheTrukCp = Formulaire.creerChoixMultipleCp();
128
		provenanceRechercheTrukCp.hide();
128
		provenanceRechercheTrukCp.hide();
129
		provenanceRechercheTrukCacGrpChp = new CheckBoxGroup();
129
		provenanceRechercheTrukCacGrpChp = new CheckBoxGroup();
130
		provenanceRechercheTrukCacGrpChp.setFieldLabel("Si oui, par des chercheurs (professionnels ou amateurs) de quelle provenance ?");
130
		provenanceRechercheTrukCacGrpChp.setFieldLabel("Si oui, par des chercheurs (professionnels ou amateurs) de quelle provenance ?");
131
		this.add(provenanceRechercheTrukCp);
131
		this.add(provenanceRechercheTrukCp);
132
		mediateur.obtenirListeValeurEtRafraichir(this, "continentEtFr", sequenceur);
132
		mediateur.obtenirListeValeurEtRafraichir(this, "continentEtFr", sequenceur);
133
		
133
		
134
		typeRechercheTrukCp = Formulaire.creerChoixMultipleCp();
134
		typeRechercheTrukCp = Formulaire.creerChoixMultipleCp();
135
		typeRechercheTrukCp.hide();
135
		typeRechercheTrukCp.hide();
136
		typeRechercheTrukCacGrpChp = new CheckBoxGroup();
136
		typeRechercheTrukCacGrpChp = new CheckBoxGroup();
137
		typeRechercheTrukCacGrpChp.setFieldLabel("Et pour quelles recherches ?");
137
		typeRechercheTrukCacGrpChp.setFieldLabel("Et pour quelles recherches ?");
138
		this.add(typeRechercheTrukCp);
138
		this.add(typeRechercheTrukCp);
139
		mediateur.obtenirListeValeurEtRafraichir(this, "typeRecherche", sequenceur);
139
		mediateur.obtenirListeValeurEtRafraichir(this, "typeRecherche", sequenceur);
140
		
140
		
141
		sansMotifAccesMarkRGrpChp = formulaireCourant.creerChoixUniqueRadioGroupe("sans_motif_acces_mark", "ouiNon");
141
		sansMotifAccesMarkRGrpChp = formulaireCourant.creerChoixUniqueRadioGroupe("sans_motif_acces_mark", "ouiNon");
142
		sansMotifAccesMarkRGrpChp.setFieldLabel("Peut-on consulter vos collections botaniques sans motif de recherches scientifiques ?");
142
		sansMotifAccesMarkRGrpChp.setFieldLabel("Peut-on consulter vos collections botaniques sans motif de recherches scientifiques ?");
143
		this.add(sansMotifAccesMarkRGrpChp);
143
		this.add(sansMotifAccesMarkRGrpChp);
144
		
144
		
145
		this.add(sansMotifAccesChp = new TextArea(), new FormData(550, 0));
145
		this.add(sansMotifAccesChp = new TextArea(), new FormData(550, 0));
146
		sansMotifAccesChp.hide();
146
		sansMotifAccesChp.hide();
147
		sansMotifAccesChp.addListener(Events.Hide, new Listener<BaseEvent>() {
147
		sansMotifAccesChp.addListener(Events.Hide, new Listener<BaseEvent>() {
148
 
148
 
149
			public void handleEvent(BaseEvent be) {
149
			public void handleEvent(BaseEvent be) {
150
				((TextArea) be.getSource()).setValue("");
150
				((TextArea) be.getSource()).setValue("");
151
			}
151
			}
152
			
152
			
153
		});
153
		});
154
		sansMotifAccesChp.setFieldLabel("Si oui, quelles démarches doit-on faire pour les consulter ?");
154
		sansMotifAccesChp.setFieldLabel("Si oui, quelles démarches doit-on faire pour les consulter ?");
155
		
155
		
156
		avecMotifAccesMarkRGrpChp = formulaireCourant.creerChoixUniqueRadioGroupe("avec_motif_acces_mark", "ouiNon");
156
		avecMotifAccesMarkRGrpChp = formulaireCourant.creerChoixUniqueRadioGroupe("avec_motif_acces_mark", "ouiNon");
157
		avecMotifAccesMarkRGrpChp.setFieldLabel("Peut-on visiter vos collections botaniques avec des objectifs de recherches scientifiques ?");
157
		avecMotifAccesMarkRGrpChp.setFieldLabel("Peut-on visiter vos collections botaniques avec des objectifs de recherches scientifiques ?");
158
		this.add(avecMotifAccesMarkRGrpChp);
158
		this.add(avecMotifAccesMarkRGrpChp);
159
		
159
		
160
		this.add(avecMotifAccesChp = new TextArea(), new FormData(550, 0));
160
		this.add(avecMotifAccesChp = new TextArea(), new FormData(550, 0));
161
		avecMotifAccesChp.hide();
161
		avecMotifAccesChp.hide();
162
		avecMotifAccesChp.addListener(Events.Hide, new Listener<BaseEvent>() {
162
		avecMotifAccesChp.addListener(Events.Hide, new Listener<BaseEvent>() {
163
 
163
 
164
			public void handleEvent(BaseEvent be) {
164
			public void handleEvent(BaseEvent be) {
165
				((TextArea) be.getSource()).setValue("");
165
				((TextArea) be.getSource()).setValue("");
166
			}
166
			}
167
			
167
			
168
		});
168
		});
169
		avecMotifAccesChp.setFieldLabel("Si oui, quelles démarches doit-on faire pour les visiter ?");
169
		avecMotifAccesChp.setFieldLabel("Si oui, quelles démarches doit-on faire pour les visiter ?");
170
		
170
		
171
	}
171
	}
172
	
172
	
173
	public void peupler() {
173
    public void peupler() {
174
		if(valorisation == null) {
174
	if(valorisation == null) {
175
			initialiserValorisation();
175
	    initialiserValorisation();
176
		}
176
	}
177
		if (formulaireCourant.mode.equals(Formulaire.MODE_AJOUTER)) {
177
	if (formulaireCourant.mode.equals(Formulaire.MODE_AJOUTER)) {
178
			// Indique que l'onglet a pu être modifié pour la méthode collecter...
178
	    // Indique que l'onglet a pu être modifié pour la méthode collecter...
179
			setData("acces", true);
179
	    setData("acces", true);
180
			// Initialisation de l'objet Structure
180
	    // Initialisation de l'objet Structure
181
			valorisation = new StructureValorisation();
181
	    valorisation = new StructureValorisation();
182
		}
182
	}
183
		if (formulaireCourant.mode.equals(Formulaire.MODE_MODIFIER) && valorisation != null) {
183
	if (formulaireCourant.mode.equals(Formulaire.MODE_MODIFIER) && valorisation != null) {
184
			// ACTION : 
184
	    // ACTION : 
-
 
185
	    //TODO : check below:
185
			//TODO : check below:
186
	    if(valorisation.getAction() != null) {
-
 
187
		((Radio) actionMarkRGrpChp.get(valorisation.getAction() ^ 1)).setValue(true);
186
			((Radio) actionMarkRGrpChp.get((valorisation.getAction().equals("1") ? 0 : 1))).setValue(true);
188
	    }
187
			
189
			
188
			// ACTION INFO
190
	    // ACTION INFO
189
			peuplerCasesACocher(valorisation.getActionInfo(), actionTrukCacGrpChp, actionAutreChp);
191
	    peuplerCasesACocher(valorisation.getActionInfo(), actionTrukCacGrpChp, actionAutreChp);
190
			
192
			
191
			// PUBLICATION
193
	    // PUBLICATION
192
			publicationChp.setValue(valorisation.getPublication());
194
	    publicationChp.setValue(valorisation.getPublication());
193
			
195
			
194
			// COLLECTION AUTRE
196
	    // COLLECTION AUTRE
195
			peuplerCasesACocher(valorisation.getCollectionAutre(), autreCollectionTrukCacGrpChp, autreCollectionAutreChp);
197
	    peuplerCasesACocher(valorisation.getCollectionAutre(), autreCollectionTrukCacGrpChp, autreCollectionAutreChp);
196
			
198
			
-
 
199
	    // ACTION FUTURE
197
			// ACTION FUTURE
200
	    if(valorisation.getActionFuture() != null) {
-
 
201
		((Radio) futureActionMarkRGrpChp.get(valorisation.getActionFuture() ^ 1)).setValue(true);
198
			((Radio) futureActionMarkRGrpChp.get((valorisation.getActionFuture().equals("1") ? 0 : 1))).setValue(true);
202
	    }
199
			
203
			
200
			// ACTION FUTURE INFO
204
	    // ACTION FUTURE INFO
201
			futureActionChp.setValue(valorisation.getActionFutureInfo());
205
	    futureActionChp.setValue(valorisation.getActionFutureInfo());
202
			
206
			
-
 
207
	    // RECHERCHE
203
			// RECHERCHE
208
	    if(valorisation.getRecherche() != null) {
-
 
209
		((Radio) rechercheMarkRGrpChp.get(valorisation.getRecherche() ^ 1)).setValue(true);
204
			((Radio) rechercheMarkRGrpChp.get((valorisation.getRecherche().equals("1") ? 0 : 1))).setValue(true);
210
	    }
205
			// RECHERCHE PROVENANCE
211
	    // RECHERCHE PROVENANCE
206
			peuplerCasesACocher(valorisation.getRechercheProvenance(), provenanceRechercheTrukCacGrpChp, provenanceRechercheAutreChp);
212
	    peuplerCasesACocher(valorisation.getRechercheProvenance(), provenanceRechercheTrukCacGrpChp, provenanceRechercheAutreChp);
207
			// RECHERCHE TYPE
213
	    // RECHERCHE TYPE
208
			peuplerCasesACocher(valorisation.getRechercheType(), typeRechercheTrukCacGrpChp, typeRechercheAutreChp);
214
	    peuplerCasesACocher(valorisation.getRechercheType(), typeRechercheTrukCacGrpChp, typeRechercheAutreChp);
-
 
215
 
209
 
216
	    // ACCÈS SANS MOTIF
-
 
217
	    if(valorisation.getAccesSansMotif() != null) {
210
			// ACCÈS SANS MOTIF
218
		((Radio) sansMotifAccesMarkRGrpChp.get(valorisation.getAccesSansMotif() ^ 1)).setValue(true);
211
			((Radio) sansMotifAccesMarkRGrpChp.get((valorisation.getAccesSansMotif().equals("1") ? 0 : 1))).setValue(true);
219
	    }
212
			// ACCÈS SANS MOTIF INFO
220
	    // ACCÈS SANS MOTIF INFO
213
			sansMotifAccesChp.setValue(valorisation.getAccesSansMotifInfo());
221
	    sansMotifAccesChp.setValue(valorisation.getAccesSansMotifInfo());
-
 
222
			
214
			
223
	    // VISITE AVEC MOTIF
-
 
224
	    if(valorisation.getVisiteAvecMotif() != null) {
215
			// VISITE AVEC MOTIF
225
		((Radio) avecMotifAccesMarkRGrpChp.get(valorisation.getVisiteAvecMotif() ^ 1)).setValue(true);
216
			((Radio) avecMotifAccesMarkRGrpChp.get((valorisation.getVisiteAvecMotif().equals("1") ? 0 : 1))).setValue(true);
226
	    }
217
			// VISITE AVEC MOTIF INFO
227
	    // VISITE AVEC MOTIF INFO
218
			avecMotifAccesChp.setValue(valorisation.getVisiteAvecMotifInfo());
228
	    avecMotifAccesChp.setValue(valorisation.getVisiteAvecMotifInfo());
219
			
229
			
220
			// Indique que l'onglet a été rempli et a pu être modifié pour la méthode collecter... 
-
 
221
			this.setData("acces", true);
230
	    // Indique que l'onglet a été rempli et a pu être modifié pour la méthode collecter... 
-
 
231
	    this.setData("acces", true);
222
		}
232
	}
223
	}
233
    }
224
	
234
	
225
	private String creerChaineDenormalisee(List<CheckBox> liste) {
235
	private String creerChaineDenormalisee(List<CheckBox> liste) {
226
		return ((StructureForm)formulaireCourant).creerChaineDenormalisee(liste);
236
		return ((StructureForm)formulaireCourant).creerChaineDenormalisee(liste);
227
	}
237
	}
228
	
238
	
229
	private void peuplerCasesACocher(String donnees, CheckBoxGroup groupeCac, TextField<String> champAutre) {
239
	private void peuplerCasesACocher(String donnees, CheckBoxGroup groupeCac, TextField<String> champAutre) {
230
		((StructureForm)formulaireCourant).peuplerCasesACocher(donnees, groupeCac, champAutre);
240
		((StructureForm)formulaireCourant).peuplerCasesACocher(donnees, groupeCac, champAutre);
231
	}
241
	}
232
	
242
	
233
	private void initialiserValorisation() {
243
	private void initialiserValorisation() {
234
		valorisation = ((StructureForm)formulaireCourant).valorisation;
244
		valorisation = ((StructureForm)formulaireCourant).valorisation;
235
	}
245
	}
236
 
246
 
237
	public StructureValorisation collecter() {
247
	public StructureValorisation collecter() {
238
		
248
		
239
		if(valorisation == null) {
249
		if(valorisation == null) {
240
			initialiserValorisation();
250
			initialiserValorisation();
241
		}
251
		}
242
		
252
		
243
		StructureValorisation valorisationARetourner = null;
253
		StructureValorisation valorisationARetourner = null;
244
		if (getData("acces").equals(true)) {
254
		if (getData("acces").equals(true)) {
245
			// Création de l'objet
255
			// Création de l'objet
246
			StructureValorisation valorisationCollectee = (StructureValorisation) valorisation.cloner(new StructureValorisation());
256
			StructureValorisation valorisationCollectee = (StructureValorisation) valorisation.cloner(new StructureValorisation());
247
			
257
			
248
			// ACTION
258
			// ACTION
249
			if (actionMarkRGrpChp.getValue() != null) {
259
			if (actionMarkRGrpChp.getValue() != null) {
250
				valorisationCollectee.setAction(actionMarkRGrpChp.getValue().getValueAttribute());
260
				valorisationCollectee.setAction(actionMarkRGrpChp.getValue().getValueAttribute());
251
			}
261
			}
252
			
262
			
253
			// ACTION INFO
263
			// ACTION INFO
254
			valorisationCollectee.setActionInfo(creerChaineDenormalisee(actionTrukCacGrpChp.getValues()));
264
			valorisationCollectee.setActionInfo(creerChaineDenormalisee(actionTrukCacGrpChp.getValues()));
255
			valorisationCollectee.setActionInfo("AUTRE", actionAutreChp.getValue());
265
			valorisationCollectee.setActionInfo("AUTRE", actionAutreChp.getValue());
256
			
266
			
257
			// PUBLICATION
267
			// PUBLICATION
258
			valorisationCollectee.setPublication(publicationChp.getValue());
268
			valorisationCollectee.setPublication(publicationChp.getValue());
259
			
269
			
260
			// COLLECTION AUTRE
270
			// COLLECTION AUTRE
261
			valorisationCollectee.setCollectionAutre(creerChaineDenormalisee(autreCollectionTrukCacGrpChp.getValues()));
271
			valorisationCollectee.setCollectionAutre(creerChaineDenormalisee(autreCollectionTrukCacGrpChp.getValues()));
262
			valorisationCollectee.setCollectionAutre("AUTRE", autreCollectionAutreChp.getValue());
272
			valorisationCollectee.setCollectionAutre("AUTRE", autreCollectionAutreChp.getValue());
263
			
273
			
264
			// ACTION FUTURE
274
			// ACTION FUTURE
265
			if (futureActionMarkRGrpChp.getValue() != null) {
275
			if (futureActionMarkRGrpChp.getValue() != null) {
266
				valorisationCollectee.setActionFuture(futureActionMarkRGrpChp.getValue().getValueAttribute());
276
				valorisationCollectee.setActionFuture(futureActionMarkRGrpChp.getValue().getValueAttribute());
267
			}
277
			}
268
			// ACTION FUTURE INFO
278
			// ACTION FUTURE INFO
269
			valorisationCollectee.setActionFutureInfo(futureActionChp.getValue());
279
			valorisationCollectee.setActionFutureInfo(futureActionChp.getValue());
270
			
280
			
271
			// RECHERCHE
281
			// RECHERCHE
272
			if (rechercheMarkRGrpChp.getValue() != null) {
282
			if (rechercheMarkRGrpChp.getValue() != null) {
273
				valorisationCollectee.setRecherche(rechercheMarkRGrpChp.getValue().getValueAttribute());
283
				valorisationCollectee.setRecherche(rechercheMarkRGrpChp.getValue().getValueAttribute());
274
 
284
 
275
				// RECHERCHE PROVENANCE
285
				// RECHERCHE PROVENANCE
276
				valorisationCollectee.setRechercheProvenance(creerChaineDenormalisee(provenanceRechercheTrukCacGrpChp.getValues()));
286
				valorisationCollectee.setRechercheProvenance(creerChaineDenormalisee(provenanceRechercheTrukCacGrpChp.getValues()));
277
				valorisationCollectee.setRechercheProvenance("AUTRE", provenanceRechercheAutreChp.getValue());
287
				valorisationCollectee.setRechercheProvenance("AUTRE", provenanceRechercheAutreChp.getValue());
278
				
288
				
279
				// RECHERCHE TYPE
289
				// RECHERCHE TYPE
280
				valorisationCollectee.setRechercheType(creerChaineDenormalisee(typeRechercheTrukCacGrpChp.getValues()));
290
				valorisationCollectee.setRechercheType(creerChaineDenormalisee(typeRechercheTrukCacGrpChp.getValues()));
281
				valorisationCollectee.setRechercheType("AUTRE", typeRechercheAutreChp.getValue());
291
				valorisationCollectee.setRechercheType("AUTRE", typeRechercheAutreChp.getValue());
282
			}
292
			}
283
			
293
			
284
			// ACCÈS SANS MOTIF
294
			// ACCÈS SANS MOTIF
285
			if (sansMotifAccesMarkRGrpChp.getValue() != null) {
295
			if (sansMotifAccesMarkRGrpChp.getValue() != null) {
286
				valorisationCollectee.setAccesSansMotif(sansMotifAccesMarkRGrpChp.getValue().getValueAttribute());
296
				valorisationCollectee.setAccesSansMotif(sansMotifAccesMarkRGrpChp.getValue().getValueAttribute());
287
			}
297
			}
288
			// ACCÈS SANS MOTIF INFO
298
			// ACCÈS SANS MOTIF INFO
289
			valorisationCollectee.setAccesSansMotifInfo(sansMotifAccesChp.getValue());
299
			valorisationCollectee.setAccesSansMotifInfo(sansMotifAccesChp.getValue());
290
			
300
			
291
			// VISITE AVEC MOTIF
301
			// VISITE AVEC MOTIF
292
			if (avecMotifAccesMarkRGrpChp.getValue() != null) {
302
			if (avecMotifAccesMarkRGrpChp.getValue() != null) {
293
				valorisationCollectee.setVisiteAvecMotif(avecMotifAccesMarkRGrpChp.getValue().getValueAttribute());
303
				valorisationCollectee.setVisiteAvecMotif(avecMotifAccesMarkRGrpChp.getValue().getValueAttribute());
294
			}
304
			}
295
			// VISITE AVEC MOTIF INFO
305
			// VISITE AVEC MOTIF INFO
296
			valorisationCollectee.setVisiteAvecMotifInfo(avecMotifAccesChp.getValue());
306
			valorisationCollectee.setVisiteAvecMotifInfo(avecMotifAccesChp.getValue());
297
			
307
			
298
			// Retour de l'objet
308
			// Retour de l'objet
299
			if (!valorisationCollectee.comparer(valorisation)) {
309
			if (!valorisationCollectee.comparer(valorisation)) {
300
				valorisationARetourner = valorisation = valorisationCollectee;
310
				valorisationARetourner = valorisation = valorisationCollectee;
301
			}
311
			}
302
		}
312
		}
303
		return valorisationARetourner;
313
		return valorisationARetourner;
304
	}
314
	}
305
 
315
 
306
	@Override
316
	@Override
307
	public void rafraichir(Object nouvellesDonnees) {
317
	public void rafraichir(Object nouvellesDonnees) {
308
		if (nouvellesDonnees instanceof ValeurListe) {
318
		if (nouvellesDonnees instanceof ValeurListe) {
309
			ValeurListe listeValeurs = (ValeurListe) nouvellesDonnees;
319
			ValeurListe listeValeurs = (ValeurListe) nouvellesDonnees;
310
			rafraichirValeurListe(listeValeurs);
320
			rafraichirValeurListe(listeValeurs);
311
		} else if (nouvellesDonnees instanceof Information) {
321
		} else if (nouvellesDonnees instanceof Information) {
312
			Information info = (Information) nouvellesDonnees;
322
			Information info = (Information) nouvellesDonnees;
313
			rafraichirInformation(info);
323
			rafraichirInformation(info);
314
		}
324
		}
315
	}
325
	}
316
	
326
	
317
	public void rafraichirInformation(Information info) {
327
	public void rafraichirInformation(Information info) {
318
		if (info.getDonnee(2) != null) {
328
		if (info.getDonnee(2) != null) {
319
			valorisation = (StructureValorisation) info.getDonnee(2);
329
			valorisation = (StructureValorisation) info.getDonnee(2);
320
			if (valorisation != null) {
330
			if (valorisation != null) {
321
				peupler();
331
				peupler();
322
			}
332
			}
323
		}
333
		}
324
	}
334
	}
325
	
335
	
326
	private void rafraichirValeurListe(ValeurListe listeValeurs) {
336
	private void rafraichirValeurListe(ValeurListe listeValeurs) {
327
		List<Valeur> liste = listeValeurs.toList();
337
		List<Valeur> liste = listeValeurs.toList();
328
		if (listeValeurs.getId().equals(config.getListeId("autreCollection"))) {
338
		if (listeValeurs.getId().equals(config.getListeId("autreCollection"))) {
329
			if (autreCollectionTrukCp != null && autreCollectionTrukCp.getItemByItemId("autreCollectionTrukCacGrpChp") == null) {
339
			if (autreCollectionTrukCp != null && autreCollectionTrukCp.getItemByItemId("autreCollectionTrukCacGrpChp") == null) {
330
				autreCollectionTrukCacGrpChp.setId("autreCollectionTrukCacGrpChp");
340
				autreCollectionTrukCacGrpChp.setId("autreCollectionTrukCacGrpChp");
331
				autreCollectionAutreChp = new TextField<String>();
341
				autreCollectionAutreChp = new TextField<String>();
332
				Formulaire.creerChoixMultipleCac(autreCollectionTrukCp, autreCollectionTrukCacGrpChp, listeValeurs, autreCollectionAutreChp);
342
				Formulaire.creerChoixMultipleCac(autreCollectionTrukCp, autreCollectionTrukCacGrpChp, listeValeurs, autreCollectionAutreChp);
333
			}
343
			}
334
		}
344
		}
335
		if (listeValeurs.getId().equals(config.getListeId("actionValorisation"))) {
345
		if (listeValeurs.getId().equals(config.getListeId("actionValorisation"))) {
336
			actionAutreChp = new TextField<String>();
346
			actionAutreChp = new TextField<String>();
337
			Formulaire.creerChoixMultipleCac(actionTrukCp, actionTrukCacGrpChp, listeValeurs, actionAutreChp);
347
			Formulaire.creerChoixMultipleCac(actionTrukCp, actionTrukCacGrpChp, listeValeurs, actionAutreChp);
338
		}
348
		}
339
		if (listeValeurs.getId().equals(config.getListeId("continentEtFr"))) {
349
		if (listeValeurs.getId().equals(config.getListeId("continentEtFr"))) {
340
			provenanceRechercheAutreChp = new TextField<String>();
350
			provenanceRechercheAutreChp = new TextField<String>();
341
			Formulaire.creerChoixMultipleCac(provenanceRechercheTrukCp, provenanceRechercheTrukCacGrpChp, listeValeurs, provenanceRechercheAutreChp);
351
			Formulaire.creerChoixMultipleCac(provenanceRechercheTrukCp, provenanceRechercheTrukCacGrpChp, listeValeurs, provenanceRechercheAutreChp);
342
		}
352
		}
343
		if (listeValeurs.getId().equals(config.getListeId("typeRecherche"))) {
353
		if (listeValeurs.getId().equals(config.getListeId("typeRecherche"))) {
344
			typeRechercheAutreChp = new TextField<String>();
354
			typeRechercheAutreChp = new TextField<String>();
345
			Formulaire.creerChoixMultipleCac(typeRechercheTrukCp, typeRechercheTrukCacGrpChp, listeValeurs, typeRechercheAutreChp);
355
			Formulaire.creerChoixMultipleCac(typeRechercheTrukCp, typeRechercheTrukCacGrpChp, listeValeurs, typeRechercheAutreChp);
346
		}
356
		}
347
	}
357
	}
348
 
358
 
349
	public void afficherChampSupplementaire(Radio radioBtn) {
359
	public void afficherChampSupplementaire(Radio radioBtn) {
350
		//GWT.log("Nom btn : "+radioBtn.getName()+" - Nom group : "+radioBtn.getGroup().getName(), null);
360
		//GWT.log("Nom btn : "+radioBtn.getName()+" - Nom group : "+radioBtn.getGroup().getName(), null);
351
		// Valeur du bouton radio déclenchant l'affichage des composants cachés
361
		// Valeur du bouton radio déclenchant l'affichage des composants cachés
352
		String valeurPourAfficher = "oui";
362
		String valeurPourAfficher = "oui";
353
		
363
		
354
		// Construction de la liste des composants à afficher/cacher
364
		// Construction de la liste des composants à afficher/cacher
355
		String radioGroupeNom = radioBtn.getGroup().getName();
365
		String radioGroupeNom = radioBtn.getGroup().getName();
356
		ArrayList<Object> composants = new ArrayList<Object>();		
366
		ArrayList<Object> composants = new ArrayList<Object>();		
357
		if (radioGroupeNom.equals("action_mark_grp")) {
367
		if (radioGroupeNom.equals("action_mark_grp")) {
358
			composants.add(actionTrukCp);
368
			composants.add(actionTrukCp);
359
		} else if (radioGroupeNom.equals("future_action_mark_grp")) {
369
		} else if (radioGroupeNom.equals("future_action_mark_grp")) {
360
			composants.add(futureActionChp);
370
			composants.add(futureActionChp);
361
		} else if (radioGroupeNom.equals("sans_motif_acces_mark_grp")) {
371
		} else if (radioGroupeNom.equals("sans_motif_acces_mark_grp")) {
362
			composants.add(sansMotifAccesChp);
372
			composants.add(sansMotifAccesChp);
363
		} else if (radioGroupeNom.equals("avec_motif_acces_mark_grp")) {
373
		} else if (radioGroupeNom.equals("avec_motif_acces_mark_grp")) {
364
			composants.add(avecMotifAccesChp);
374
			composants.add(avecMotifAccesChp);
365
		} else if (radioGroupeNom.equals("recherche_mark_grp")) {
375
		} else if (radioGroupeNom.equals("recherche_mark_grp")) {
366
			composants.add(provenanceRechercheTrukCp);
376
			composants.add(provenanceRechercheTrukCp);
367
			composants.add(typeRechercheTrukCp);
377
			composants.add(typeRechercheTrukCp);
368
		}
378
		}
369
		
379
		
370
		// Nous affichons/cachons les composant de la liste
380
		// Nous affichons/cachons les composant de la liste
371
		final int nbreComposants = composants.size();
381
		final int nbreComposants = composants.size();
372
		//GWT.log("Id : "+radioBtn.getId()+" - Class : "+radioBtn.getClass().toString()+"- Taille : "+tailleMax, null);
382
		//GWT.log("Id : "+radioBtn.getId()+" - Class : "+radioBtn.getClass().toString()+"- Taille : "+tailleMax, null);
373
		//Window.alert("Radio grp nom : "+radioGroupeNom+" - Id btn : "+radioBtn.getId()+" - Class : "+radioBtn.getClass().toString()+"- Taille : "+tailleMax);
383
		//Window.alert("Radio grp nom : "+radioGroupeNom+" - Id btn : "+radioBtn.getId()+" - Class : "+radioBtn.getClass().toString()+"- Taille : "+tailleMax);
374
		for (int i = 0; i < nbreComposants; i++) {
384
		for (int i = 0; i < nbreComposants; i++) {
375
			// En fonction du type de bouton cliquer, on affiche ou cache les champs
385
			// En fonction du type de bouton cliquer, on affiche ou cache les champs
376
			String type = radioBtn.getBoxLabel().toLowerCase();
386
			String type = radioBtn.getBoxLabel().toLowerCase();
377
			//GWT.log(type, null);
387
			//GWT.log(type, null);
378
			if (radioBtn.getValue() == true) {
388
			if (radioBtn.getValue() == true) {
379
				if (type.equals(valeurPourAfficher)) {
389
				if (type.equals(valeurPourAfficher)) {
380
					((Component) composants.get(i)).show();
390
					((Component) composants.get(i)).show();
381
				} else {
391
				} else {
382
					((Component) composants.get(i)).hide();
392
					((Component) composants.get(i)).hide();
383
				}
393
				}
384
			}
394
			}
385
			// Si on a à faire à un ContentPanel, on l'actualise pour déclencher l'affichage
395
			// Si on a à faire à un ContentPanel, on l'actualise pour déclencher l'affichage
386
			if (composants.get(i) instanceof ContentPanel) {
396
			if (composants.get(i) instanceof ContentPanel) {
387
				((ContentPanel) composants.get(i)).layout();
397
				((ContentPanel) composants.get(i)).layout();
388
			}
398
			}
389
		}		
399
		}		
390
	}
400
	}
391
}
401
}