Subversion Repositories eFlore/Applications.coel

Rev

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

Rev 925 Rev 928
1
package org.tela_botanica.client;
1
package org.tela_botanica.client;
2
 
2
 
3
import java.util.Iterator;
3
import java.util.Iterator;
4
import java.util.List;
4
import java.util.List;
5
 
5
 
6
import org.tela_botanica.client.composants.AideFenetre;
6
import org.tela_botanica.client.composants.AideFenetre;
7
import org.tela_botanica.client.composants.IdentificationFenetre;
7
import org.tela_botanica.client.composants.IdentificationFenetre;
8
import org.tela_botanica.client.composants.LicenceFenetre;
8
import org.tela_botanica.client.composants.LicenceFenetre;
9
import org.tela_botanica.client.composants.ParametreFenetre;
9
import org.tela_botanica.client.composants.ParametreFenetre;
10
import org.tela_botanica.client.configuration.APropos;
10
import org.tela_botanica.client.configuration.APropos;
11
import org.tela_botanica.client.configuration.Configuration;
11
import org.tela_botanica.client.configuration.Configuration;
12
import org.tela_botanica.client.i18n.Constantes;
12
import org.tela_botanica.client.i18n.Constantes;
13
import org.tela_botanica.client.i18n.ErrorMessages;
13
import org.tela_botanica.client.i18n.ErrorMessages;
14
import org.tela_botanica.client.interfaces.Rafraichissable;
14
import org.tela_botanica.client.interfaces.Rafraichissable;
15
import org.tela_botanica.client.modeles.Collection;
15
import org.tela_botanica.client.modeles.Collection;
16
import org.tela_botanica.client.modeles.CollectionAPersonne;
16
import org.tela_botanica.client.modeles.CollectionAPersonne;
17
import org.tela_botanica.client.modeles.CollectionAPublication;
17
import org.tela_botanica.client.modeles.CollectionAPublication;
18
import org.tela_botanica.client.modeles.CollectionAPublicationListe;
18
import org.tela_botanica.client.modeles.CollectionAPublicationListe;
19
import org.tela_botanica.client.modeles.CollectionListe;
19
import org.tela_botanica.client.modeles.CollectionListe;
20
import org.tela_botanica.client.modeles.Information;
20
import org.tela_botanica.client.modeles.Information;
21
import org.tela_botanica.client.modeles.MenuApplicationId;
21
import org.tela_botanica.client.modeles.MenuApplicationId;
22
import org.tela_botanica.client.modeles.Personne;
22
import org.tela_botanica.client.modeles.Personne;
23
import org.tela_botanica.client.modeles.PersonneListe;
23
import org.tela_botanica.client.modeles.PersonneListe;
24
import org.tela_botanica.client.modeles.Projet;
24
import org.tela_botanica.client.modeles.Projet;
25
import org.tela_botanica.client.modeles.ProjetListe;
25
import org.tela_botanica.client.modeles.ProjetListe;
26
import org.tela_botanica.client.modeles.Publication;
26
import org.tela_botanica.client.modeles.Publication;
27
import org.tela_botanica.client.modeles.PublicationAPersonne;
27
import org.tela_botanica.client.modeles.PublicationAPersonne;
28
import org.tela_botanica.client.modeles.PublicationAPersonneListe;
28
import org.tela_botanica.client.modeles.PublicationAPersonneListe;
29
import org.tela_botanica.client.modeles.PublicationListe;
29
import org.tela_botanica.client.modeles.PublicationListe;
30
import org.tela_botanica.client.modeles.Structure;
30
import org.tela_botanica.client.modeles.Structure;
31
import org.tela_botanica.client.modeles.StructureAPersonne;
31
import org.tela_botanica.client.modeles.StructureAPersonne;
32
import org.tela_botanica.client.modeles.CollectionAPersonneListe;
32
import org.tela_botanica.client.modeles.CollectionAPersonneListe;
33
import org.tela_botanica.client.modeles.StructureAPersonneListe;
33
import org.tela_botanica.client.modeles.StructureAPersonneListe;
34
import org.tela_botanica.client.modeles.StructureConservation;
34
import org.tela_botanica.client.modeles.StructureConservation;
35
import org.tela_botanica.client.modeles.StructureListe;
35
import org.tela_botanica.client.modeles.StructureListe;
36
import org.tela_botanica.client.modeles.StructureValorisation;
36
import org.tela_botanica.client.modeles.StructureValorisation;
37
import org.tela_botanica.client.modeles.Utilisateur;
37
import org.tela_botanica.client.modeles.Utilisateur;
38
import org.tela_botanica.client.modeles.ValeurListe;
38
import org.tela_botanica.client.modeles.ValeurListe;
39
import org.tela_botanica.client.util.Debug;
39
import org.tela_botanica.client.util.Debug;
40
import org.tela_botanica.client.vues.CollectionForm;
40
import org.tela_botanica.client.vues.CollectionForm;
41
import org.tela_botanica.client.vues.CollectionListeVue;
41
import org.tela_botanica.client.vues.CollectionListeVue;
42
import org.tela_botanica.client.vues.CollectionVue;
42
import org.tela_botanica.client.vues.CollectionVue;
43
import org.tela_botanica.client.vues.ContenuVue;
43
import org.tela_botanica.client.vues.ContenuVue;
44
import org.tela_botanica.client.vues.EnteteVue;
44
import org.tela_botanica.client.vues.EnteteVue;
45
import org.tela_botanica.client.vues.Formulaire;
45
import org.tela_botanica.client.vues.Formulaire;
46
import org.tela_botanica.client.vues.PersonneForm;
46
import org.tela_botanica.client.vues.PersonneForm;
47
import org.tela_botanica.client.vues.ProjetForm;
47
import org.tela_botanica.client.vues.ProjetForm;
48
import org.tela_botanica.client.vues.ProjetVue;
48
import org.tela_botanica.client.vues.ProjetVue;
49
import org.tela_botanica.client.vues.PublicationForm;
49
import org.tela_botanica.client.vues.PublicationForm;
50
import org.tela_botanica.client.vues.StructureForm;
50
import org.tela_botanica.client.vues.StructureForm;
51
import org.tela_botanica.client.vues.PersonneVue;
51
import org.tela_botanica.client.vues.PersonneVue;
52
import org.tela_botanica.client.vues.PopupChargement;
52
import org.tela_botanica.client.vues.PopupChargement;
53
import org.tela_botanica.client.vues.PublicationVue;
53
import org.tela_botanica.client.vues.PublicationVue;
54
import org.tela_botanica.client.vues.StatutVue;
54
import org.tela_botanica.client.vues.StatutVue;
55
import org.tela_botanica.client.vues.StructureVue;
55
import org.tela_botanica.client.vues.StructureVue;
56
import org.tela_botanica.client.vues.MenuVue;
56
import org.tela_botanica.client.vues.MenuVue;
57
import org.tela_botanica.client.vues.accueil.AccueilVue;
57
import org.tela_botanica.client.vues.accueil.AccueilVue;
58
 
58
 
59
import com.extjs.gxt.ui.client.Registry;
59
import com.extjs.gxt.ui.client.Registry;
60
import com.extjs.gxt.ui.client.Style.LayoutRegion;
60
import com.extjs.gxt.ui.client.Style.LayoutRegion;
61
import com.extjs.gxt.ui.client.event.Listener;
61
import com.extjs.gxt.ui.client.event.Listener;
62
import com.extjs.gxt.ui.client.event.MessageBoxEvent;
62
import com.extjs.gxt.ui.client.event.MessageBoxEvent;
63
import com.extjs.gxt.ui.client.util.Margins;
63
import com.extjs.gxt.ui.client.util.Margins;
64
import com.extjs.gxt.ui.client.widget.Component;
64
import com.extjs.gxt.ui.client.widget.Component;
65
import com.extjs.gxt.ui.client.widget.Dialog;
65
import com.extjs.gxt.ui.client.widget.Dialog;
66
import com.extjs.gxt.ui.client.widget.Info;
66
import com.extjs.gxt.ui.client.widget.Info;
67
import com.extjs.gxt.ui.client.widget.MessageBox;
67
import com.extjs.gxt.ui.client.widget.MessageBox;
68
import com.extjs.gxt.ui.client.widget.Viewport;
68
import com.extjs.gxt.ui.client.widget.Viewport;
69
import com.extjs.gxt.ui.client.widget.button.Button;
69
import com.extjs.gxt.ui.client.widget.button.Button;
70
import com.extjs.gxt.ui.client.widget.layout.BorderLayout;
70
import com.extjs.gxt.ui.client.widget.layout.BorderLayout;
71
import com.extjs.gxt.ui.client.widget.layout.BorderLayoutData;
71
import com.extjs.gxt.ui.client.widget.layout.BorderLayoutData;
72
import com.google.gwt.core.client.GWT;
72
import com.google.gwt.core.client.GWT;
73
import com.google.gwt.i18n.client.Dictionary;
73
import com.google.gwt.i18n.client.Dictionary;
74
import com.google.gwt.user.client.Window;
74
import com.google.gwt.user.client.Window;
75
import com.google.gwt.user.client.ui.RootPanel;
75
import com.google.gwt.user.client.ui.RootPanel;
76
 
76
 
77
public class Mediateur implements Rafraichissable {
77
public class Mediateur implements Rafraichissable {
78
	
78
	
79
	private Viewport viewport;
79
	private Viewport viewport;
80
	private Modele modele = null;
80
	private Modele modele = null;
81
	public static final Constantes i18nC = getI18nConstante();
81
	public static final Constantes i18nC = getI18nConstante();
82
	public static final ErrorMessages i18nM = getI18nMessage();
82
	public static final ErrorMessages i18nM = getI18nMessage();
83
	
83
	
84
	private EnteteVue panneauNord = null;
84
	private EnteteVue panneauNord = null;
85
	private MenuVue panneauOuest = null;
85
	private MenuVue panneauOuest = null;
86
	private ContenuVue panneauCentre = null;
86
	private ContenuVue panneauCentre = null;
87
	private StatutVue panneauSud = null;
87
	private StatutVue panneauSud = null;
88
	
88
	
89
	private IdentificationFenetre fenetreIdentification = null;
89
	private IdentificationFenetre fenetreIdentification = null;
90
	
90
	
91
	public Mediateur() {
91
	public Mediateur() {
92
		// Enregistrement du Médiateur dans le Registre
92
		// Enregistrement du Médiateur dans le Registre
93
		Registry.register(RegistreId.MEDIATEUR, this);
93
		Registry.register(RegistreId.MEDIATEUR, this);
94
 
94
 
95
		//Initialisation du Registre
95
		//Initialisation du Registre
96
		initialiserRegistre();
96
		initialiserRegistre();
97
		
97
		
98
		// Création du Modèle qui s'enregistre lui même dans le Registre
98
		// Création du Modèle qui s'enregistre lui même dans le Registre
99
		modele = new Modele();
99
		modele = new Modele();
100
 
100
 
101
		// Création du Viewport qui contient la disposition globale de l'application
101
		// Création du Viewport qui contient la disposition globale de l'application
102
		viewport = new Viewport();
102
		viewport = new Viewport();
103
		viewport.setLayout(new BorderLayout());
103
		viewport.setLayout(new BorderLayout());
104
 
104
 
105
		// Création des différents panneaux
105
		// Création des différents panneaux
106
	    creerPanneauNord();
106
	    creerPanneauNord();
107
	    creerPanneauOuest();
107
	    creerPanneauOuest();
108
	    creerPanneauCentral();
108
	    creerPanneauCentral();
109
	    creerPanneauSud();
109
	    creerPanneauSud();
110
		
110
		
111
		// Connection de l'utilisateur
111
		// Connection de l'utilisateur
112
		connecterUtilisateur(null, null);
112
		connecterUtilisateur(null, null);
113
		
113
		
114
		// Retour à GWT du Viewport une fois constuit
114
		// Retour à GWT du Viewport une fois constuit
115
		RootPanel.get().add(viewport);
115
		RootPanel.get().add(viewport);
116
	}
116
	}
117
	
117
	
118
	//+----------------------------------------------------------------------------------------------------------------+
118
	//+----------------------------------------------------------------------------------------------------------------+
119
	//												GESTION de l'I18N et du REGISTRE
119
	//												GESTION de l'I18N et du REGISTRE
120
	//+----------------------------------------------------------------------------------------------------------------+
120
	//+----------------------------------------------------------------------------------------------------------------+
121
	protected static Constantes getI18nConstante() {
121
	protected static Constantes getI18nConstante() {
122
		return GWT.create(Constantes.class);
122
		return GWT.create(Constantes.class);
123
	}
123
	}
124
	
124
	
125
	protected static ErrorMessages getI18nMessage() {
125
	protected static ErrorMessages getI18nMessage() {
126
		return GWT.create(ErrorMessages.class);
126
		return GWT.create(ErrorMessages.class);
127
	}
127
	}
128
	
128
	
129
	protected void initialiserRegistre() {
129
	protected void initialiserRegistre() {
130
		Registry.register(RegistreId.APPLI_NOM, i18nC.appliNom());
130
		Registry.register(RegistreId.APPLI_NOM, i18nC.appliNom());
131
		Registry.register(RegistreId.APPLI_CODE, i18nC.appliCode());
131
		Registry.register(RegistreId.APPLI_CODE, i18nC.appliCode());
132
		Registry.register(RegistreId.APPLI_VERSION, i18nC.appliVersionNumero());
132
		Registry.register(RegistreId.APPLI_VERSION, i18nC.appliVersionNumero());
133
		
133
		
134
		APropos apropos = new APropos();
134
		APropos apropos = new APropos();
135
		Registry.register(RegistreId.APPLI_REVISION, apropos.getRevisionGlobale());
135
		Registry.register(RegistreId.APPLI_REVISION, apropos.getRevisionGlobale());
136
		Registry.register(RegistreId.APPLI_COMPILATION_JAVA_VERSION, apropos.getVersionJavaCompilation());
136
		Registry.register(RegistreId.APPLI_COMPILATION_JAVA_VERSION, apropos.getVersionJavaCompilation());
137
		Registry.register(RegistreId.APPLI_COMPILATION_DATE_HEURE, apropos.getDateHeureCompilation());
137
		Registry.register(RegistreId.APPLI_COMPILATION_DATE_HEURE, apropos.getDateHeureCompilation());
138
 
138
 
139
		Registry.register(RegistreId.CONFIG, new Configuration());
139
		Registry.register(RegistreId.CONFIG, new Configuration());
140
		Registry.register(RegistreId.POPUP_CHARGEMENT, new PopupChargement(this));
140
		Registry.register(RegistreId.POPUP_CHARGEMENT, new PopupChargement(this));
141
		Registry.register(RegistreId.UTILISATEUR_COURANT, new Utilisateur());
141
		Registry.register(RegistreId.UTILISATEUR_COURANT, new Utilisateur());
142
		Registry.register(RegistreId.PROJET_COURANT, new Projet());
142
		Registry.register(RegistreId.PROJET_COURANT, new Projet());
143
	}
143
	}
144
	
144
	
145
	//+----------------------------------------------------------------------------------------------------------------+
145
	//+----------------------------------------------------------------------------------------------------------------+
146
	//												GESTION des PANNEAUX PRINCIPAUX
146
	//												GESTION des PANNEAUX PRINCIPAUX
147
	//+----------------------------------------------------------------------------------------------------------------+
147
	//+----------------------------------------------------------------------------------------------------------------+
148
	
148
	
149
	private void creerPanneauNord() {
149
	private void creerPanneauNord() {
150
		panneauNord = new EnteteVue(this);
150
		panneauNord = new EnteteVue(this);
151
		
151
		
152
		BorderLayoutData regionNord = new BorderLayoutData(LayoutRegion.NORTH, 100);  
152
		BorderLayoutData regionNord = new BorderLayoutData(LayoutRegion.NORTH, 100);  
153
		regionNord.setCollapsible(true);
153
		regionNord.setCollapsible(true);
154
		regionNord.setFloatable(true);
154
		regionNord.setFloatable(true);
155
		regionNord.setSplit(false);
155
		regionNord.setSplit(false);
156
		regionNord.setMargins(new Margins(5, 5, 0, 5));
156
		regionNord.setMargins(new Margins(5, 5, 0, 5));
157
		
157
		
158
		viewport.add(panneauNord, regionNord);
158
		viewport.add(panneauNord, regionNord);
159
	}
159
	}
160
	
160
	
161
	private void creerPanneauOuest() {
161
	private void creerPanneauOuest() {
162
		panneauOuest = new MenuVue(this); 
162
		panneauOuest = new MenuVue(this); 
163
		
163
		
164
		BorderLayoutData regionOuest = new BorderLayoutData(LayoutRegion.WEST, 200);  
164
		BorderLayoutData regionOuest = new BorderLayoutData(LayoutRegion.WEST, 200);  
165
		regionOuest.setSplit(true);
165
		regionOuest.setSplit(true);
166
		regionOuest.setCollapsible(true);  
166
		regionOuest.setCollapsible(true);  
167
		regionOuest.setMargins(new Margins(5));
167
		regionOuest.setMargins(new Margins(5));
168
 
168
 
169
		viewport.add(panneauOuest, regionOuest);
169
		viewport.add(panneauOuest, regionOuest);
170
	}
170
	}
171
 
171
 
172
	private void creerPanneauCentral() {
172
	private void creerPanneauCentral() {
173
		panneauCentre = new ContenuVue(this);
173
		panneauCentre = new ContenuVue(this);
174
 
174
 
175
		BorderLayoutData regionCentre = new BorderLayoutData(LayoutRegion.CENTER);  
175
		BorderLayoutData regionCentre = new BorderLayoutData(LayoutRegion.CENTER);  
176
		regionCentre.setMargins(new Margins(5, 5, 5, 0));
176
		regionCentre.setMargins(new Margins(5, 5, 5, 0));
177
 
177
 
178
		viewport.add(panneauCentre, regionCentre);
178
		viewport.add(panneauCentre, regionCentre);
179
	}
179
	}
180
	
180
	
181
	private void creerPanneauSud() {
181
	private void creerPanneauSud() {
182
		panneauSud = new StatutVue();
182
		panneauSud = new StatutVue();
183
		
183
		
184
		BorderLayoutData regionSud = new BorderLayoutData(LayoutRegion.SOUTH, 20); 
184
		BorderLayoutData regionSud = new BorderLayoutData(LayoutRegion.SOUTH, 20); 
185
		regionSud.setCollapsible(true);
185
		regionSud.setCollapsible(true);
186
		regionSud.setFloatable(true);
186
		regionSud.setFloatable(true);
187
		regionSud.setSplit(false);
187
		regionSud.setSplit(false);
188
		regionSud.setMargins(new Margins(0));
188
		regionSud.setMargins(new Margins(0));
189
		
189
		
190
		viewport.add(panneauSud, regionSud);
190
		viewport.add(panneauSud, regionSud);
191
	}
191
	}
192
 
192
 
193
	public void actualiserPanneauCentral() {
193
	public void actualiserPanneauCentral() {
194
		panneauCentre.layout();
194
		panneauCentre.layout();
195
	}
195
	}
196
	
196
	
197
	//+----------------------------------------------------------------------------------------------------------------+
197
	//+----------------------------------------------------------------------------------------------------------------+
198
	//												GESTION du MENU
198
	//												GESTION du MENU
199
	//+----------------------------------------------------------------------------------------------------------------+
199
	//+----------------------------------------------------------------------------------------------------------------+
200
	
200
	
201
	public void clicMenu(String codeMenuClique) {
201
	public void clicMenu(String codeMenuClique) {
202
		activerChargement(codeMenuClique);
202
		activerChargement(codeMenuClique);
203
		panneauOuest.selectionMenu(codeMenuClique);
203
		panneauOuest.selectionMenu(codeMenuClique);
204
		if (codeMenuClique.equals(MenuApplicationId.ACCUEIL)) {
204
		if (codeMenuClique.equals(MenuApplicationId.ACCUEIL)) {
205
			afficherAccueil();
205
			afficherAccueil();
206
		} else if (codeMenuClique.equals(MenuApplicationId.PROJET)) {
206
		} else if (codeMenuClique.equals(MenuApplicationId.PROJET)) {
207
			selectionnerProjets(panneauCentre); 
207
			selectionnerProjet(panneauCentre, null); 
208
		} else if (codeMenuClique.equals(MenuApplicationId.STRUCTURE)) {
208
		} else if (codeMenuClique.equals(MenuApplicationId.STRUCTURE)) {
209
			selectionnerStructure(panneauCentre, null);
209
			selectionnerStructure(panneauCentre, null);
210
		} else if (codeMenuClique.equals(MenuApplicationId.COLLECTION)) { 
210
		} else if (codeMenuClique.equals(MenuApplicationId.COLLECTION)) { 
211
			selectionnerCollection(panneauCentre, null);
211
			selectionnerCollection(panneauCentre, null);
212
		} else if (codeMenuClique.equals(MenuApplicationId.PERSONNE)) { 
212
		} else if (codeMenuClique.equals(MenuApplicationId.PERSONNE)) { 
213
			selectionnerPersonne(panneauCentre, null, null);
213
			selectionnerPersonne(panneauCentre, null, null);
214
		} else if (codeMenuClique.equals(MenuApplicationId.PUBLICATION)) {
214
		} else if (codeMenuClique.equals(MenuApplicationId.PUBLICATION)) {
215
			selectionnerPublication(panneauCentre, null);
215
			selectionnerPublication(panneauCentre, null);
216
		} else {
216
		} else {
217
			GWT.log(i18nM.nonImplemente(codeMenuClique), null);
217
			GWT.log(i18nM.nonImplemente(codeMenuClique), null);
218
		}
218
		}
219
		panneauCentre.layout();
219
		panneauCentre.layout();
220
	}
220
	}
221
 
221
 
222
	public void activerChargement(String message) {
222
	public void activerChargement(String message) {
223
		Debug.log(message);
223
		Debug.log(message);
224
		afficherPopinChargement(); 
224
		afficherPopinChargement(); 
225
		panneauSud.showBusy(i18nC.chargement()+" "+message);
225
		panneauSud.showBusy(i18nC.chargement()+" "+message);
226
	}
226
	}
227
	
227
	
228
	public void desactiverChargement() {
228
	public void desactiverChargement() {
229
		masquerPopinChargement();
229
		masquerPopinChargement();
230
		panneauSud.clear();
230
		panneauSud.clear();
231
	}
231
	}
232
		
232
		
233
	//+----------------------------------------------------------------------------------------------------------------+
233
	//+----------------------------------------------------------------------------------------------------------------+
234
	//												GESTION DES FENÊTRES
234
	//												GESTION DES FENÊTRES
235
	//+----------------------------------------------------------------------------------------------------------------+
235
	//+----------------------------------------------------------------------------------------------------------------+
236
 
236
 
237
	public void ouvrirAide() {
237
	public void ouvrirAide() {
238
		AideFenetre aideFenetre = new AideFenetre();
238
		AideFenetre aideFenetre = new AideFenetre();
239
		aideFenetre.show();
239
		aideFenetre.show();
240
		// FIXME : apparament le fade In/Fade Out pose problème sur les navigateurs...
240
		// FIXME : apparament le fade In/Fade Out pose problème sur les navigateurs...
241
		//aideFenetre.el().fadeIn(FxConfig.NONE);
241
		//aideFenetre.el().fadeIn(FxConfig.NONE);
242
	}
242
	}
243
 
243
 
244
	public void ouvrirParametres() {
244
	public void ouvrirParametres() {
245
		ParametreFenetre parametresFenetre = new ParametreFenetre();
245
		ParametreFenetre parametresFenetre = new ParametreFenetre();
246
		parametresFenetre.show();
246
		parametresFenetre.show();
247
	}
247
	}
248
 
248
 
249
	public void ouvrirIdentification() {
249
	public void ouvrirIdentification() {
250
		fenetreIdentification = new IdentificationFenetre();
250
		fenetreIdentification = new IdentificationFenetre();
251
		fenetreIdentification.show();
251
		fenetreIdentification.show();
252
	}
252
	}
253
 
253
 
254
	public void ouvrirApplis(String id) {
254
	public void ouvrirApplis(String id) {
255
		if (id.equals(ComposantId.MENU_CEL)) {
255
		if (id.equals(ComposantId.MENU_CEL)) {
256
			Window.open(((Configuration) Registry.get(RegistreId.CONFIG)).getCelUrl(), "Carnet en ligne", "");
256
			Window.open(((Configuration) Registry.get(RegistreId.CONFIG)).getCelUrl(), "Carnet en ligne", "");
257
		} else if (id.equals(ComposantId.MENU_BEL)) {
257
		} else if (id.equals(ComposantId.MENU_BEL)) {
258
			Window.open(((Configuration) Registry.get(RegistreId.CONFIG)).getCelUrl(), "Biblio en ligne", "");
258
			Window.open(((Configuration) Registry.get(RegistreId.CONFIG)).getCelUrl(), "Biblio en ligne", "");
259
		}
259
		}
260
	}
260
	}
261
 
261
 
262
	public void afficherFenetreLicence(IdentificationFenetre vue)	{
262
	public void afficherFenetreLicence(IdentificationFenetre vue)	{
263
		LicenceFenetre lf = new LicenceFenetre(vue);
263
		LicenceFenetre lf = new LicenceFenetre(vue);
264
	}
264
	}
265
	
265
	
266
	public void accepterLicence(Rafraichissable vue)	{
266
	public void accepterLicence(Rafraichissable vue)	{
267
		modele.accepterLicence(vue);		
267
		modele.accepterLicence(vue);		
268
	}
268
	}
269
	//+----------------------------------------------------------------------------------------------------------------+
269
	//+----------------------------------------------------------------------------------------------------------------+
270
	//												GESTION de l'UTILISATEUR et de l'IDENTIFICATION
270
	//												GESTION de l'UTILISATEUR et de l'IDENTIFICATION
271
	//+----------------------------------------------------------------------------------------------------------------+
271
	//+----------------------------------------------------------------------------------------------------------------+
272
	/**
272
	/**
273
	 * Retourne l'identifiant de l'utilisateur courrant de l'application.
273
	 * Retourne l'identifiant de l'utilisateur courrant de l'application.
274
	 */
274
	 */
275
	public String getUtilisateurId() {
275
	public String getUtilisateurId() {
276
		String id = null;
276
		String id = null;
277
		Utilisateur utilisateurCourant = (Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT);
277
		Utilisateur utilisateurCourant = (Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT);
278
		if (!utilisateurCourant.getId().equals("")) {
278
		if (!utilisateurCourant.getId().equals("")) {
279
			id = utilisateurCourant.getId();
279
			id = utilisateurCourant.getId();
280
		}
280
		}
281
		return id;
281
		return id;
282
	}
282
	}
283
	
283
	
284
	public Utilisateur getUtilisateur() {
284
	public Utilisateur getUtilisateur() {
285
		Utilisateur utilisateurCourant = (Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT);
285
		Utilisateur utilisateurCourant = (Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT);
286
		return utilisateurCourant;
286
		return utilisateurCourant;
287
	}
287
	}
288
	
288
	
289
	public void connecterUtilisateur(String login, String mdp) {
289
	public void connecterUtilisateur(String login, String mdp) {
290
		modele.connecterUtilisateur(this, login, mdp);
290
		modele.connecterUtilisateur(this, login, mdp);
291
	}
291
	}
292
	
292
	
293
	public void deconnecterUtilisateur() {
293
	public void deconnecterUtilisateur() {
294
		modele.deconnecterUtilisateur(this);
294
		modele.deconnecterUtilisateur(this);
295
	}
295
	}
296
	
296
	
297
	public void mettreAJourEtatIdentification(Utilisateur utilisateur) {
297
	public void mettreAJourEtatIdentification(Utilisateur utilisateur) {
298
		// Mise à jour du registre
298
		// Mise à jour du registre
299
		Registry.register(RegistreId.UTILISATEUR_COURANT, utilisateur);
299
		Registry.register(RegistreId.UTILISATEUR_COURANT, utilisateur);
300
		
300
		
301
		// Création de l'information de mise à jour de l'utilisateur
301
		// Création de l'information de mise à jour de l'utilisateur
302
		Information info = new Information("maj_utilisateur");
302
		Information info = new Information("maj_utilisateur");
303
 
303
 
304
		// Rafraichissement de la fenêtre d'Identification
304
		// Rafraichissement de la fenêtre d'Identification
305
		if (fenetreIdentification != null) {
305
		if (fenetreIdentification != null) {
306
			fenetreIdentification.rafraichir(info);
306
			fenetreIdentification.rafraichir(info);
307
		}
307
		}
308
		
308
		
309
		// Rafraichissement du panneau Nord
309
		// Rafraichissement du panneau Nord
310
		panneauNord.rafraichir(info);
310
		panneauNord.rafraichir(info);
311
 
311
 
312
		// Rafraichissement du panneau Centre
312
		// Rafraichissement du panneau Centre
313
		if (panneauCentre != null) {
313
		if (panneauCentre != null) {
314
			panneauCentre.rafraichir(info);
314
			panneauCentre.rafraichir(info);
315
		}		
315
		}		
316
	}
316
	}
317
	
317
	
318
	public void modifierUtilisateur()	{
318
	public void modifierUtilisateur()	{
319
		Utilisateur utilisateurCourant = (Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT);
319
		Utilisateur utilisateurCourant = (Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT);
320
		panneauNord.rafraichir(utilisateurCourant);
320
		panneauNord.rafraichir(utilisateurCourant);
321
		modele.modifierUtilisateur(this, utilisateurCourant);
321
		modele.modifierUtilisateur(this, utilisateurCourant);
322
	}
322
	}
323
	
323
	
324
	public void mettreAJourPersonneAnnuaire(Utilisateur utilisateur)	{
324
	public void mettreAJourPersonneAnnuaire(Utilisateur utilisateur)	{
325
		panneauNord.rafraichir(utilisateur);
325
		panneauNord.rafraichir(utilisateur);
326
		modele.mettreAJourPersonneAnnuaire(this, utilisateur);
326
		modele.mettreAJourPersonneAnnuaire(this, utilisateur);
327
	}
327
	}
328
 
328
 
329
	//+----------------------------------------------------------------------------------------------------------------+
329
	//+----------------------------------------------------------------------------------------------------------------+
330
	//												GESTION DES VALEURS ET LISTES
330
	//												GESTION DES VALEURS ET LISTES
331
	//+----------------------------------------------------------------------------------------------------------------+
331
	//+----------------------------------------------------------------------------------------------------------------+
332
 
332
 
333
	public void obtenirListeValeurEtRafraichir(Rafraichissable vueARafraichir, String listeId)	{
333
	public void obtenirListeValeurEtRafraichir(Rafraichissable vueARafraichir, String listeId)	{
334
		modele.obtenirListeValeurs(vueARafraichir, ((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(listeId));
334
		modele.obtenirListeValeurs(vueARafraichir, ((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(listeId));
335
	}
335
	}
336
	
336
	
337
	public void obtenirValeurEtRafraichir(Rafraichissable vue, String listeId, String identifiantValeur)	{
337
	public void obtenirValeurEtRafraichir(Rafraichissable vue, String listeId, String identifiantValeur)	{
338
		modele.obtenirValeur(vue, "abv", ((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(listeId), identifiantValeur);
338
		modele.obtenirValeur(vue, "abv", ((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(listeId), identifiantValeur);
339
	}
339
	}
340
	
340
	
341
	public void obtenirListeRegionsEtRafraichir(Rafraichissable vue, String strListeId, String strPays)	{
341
	public void obtenirListeRegionsEtRafraichir(Rafraichissable vue, String strListeId, String strPays)	{
342
		modele.obtenirListeRegion(vue, ((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(strListeId), strPays+".__");
342
		modele.obtenirListeRegion(vue, ((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(strListeId), strPays+".__");
343
	}
343
	}
344
	
344
	
345
	//+----------------------------------------------------------------------------------------------------------------+
345
	//+----------------------------------------------------------------------------------------------------------------+
346
	//												GESTION des APPLETS de l'ACCUEIL
346
	//												GESTION des APPLETS de l'ACCUEIL
347
	//+----------------------------------------------------------------------------------------------------------------+
347
	//+----------------------------------------------------------------------------------------------------------------+
348
	
348
	
349
	public void afficherAccueil() {
349
	public void afficherAccueil() {
350
		if (!(panneauCentre.getContenu() instanceof AccueilVue)) {
350
		if (!(panneauCentre.getContenu() instanceof AccueilVue)) {
351
			panneauCentre.removeAll();
351
			panneauCentre.removeAll();
352
			panneauCentre.add(new AccueilVue(this));
352
			panneauCentre.add(new AccueilVue(this));
353
		}
353
		}
354
	}
354
	}
355
	
355
	
356
	//+----------------------------------------------------------------------------------------------------------------+
356
	//+----------------------------------------------------------------------------------------------------------------+
357
	//												GESTION des PROJETS
357
	//												GESTION des PROJETS
358
	//+----------------------------------------------------------------------------------------------------------------+
358
	//+----------------------------------------------------------------------------------------------------------------+
-
 
359
	
-
 
360
	public void afficherFormProjet(String projetId) {
-
 
361
		panneauCentre.removeAll();
-
 
362
		ProjetForm projetForm = new ProjetForm(this, projetId);
-
 
363
		panneauCentre.add(projetForm);
-
 
364
		
-
 
365
		panneauCentre.layout();
-
 
366
	}
-
 
367
	
-
 
368
	public void afficherListeProjets(ProjetListe projetsACharger)	{
-
 
369
		if (!(panneauCentre.getContenu() instanceof ProjetVue))	{
-
 
370
			panneauCentre.removeAll();
-
 
371
			panneauCentre.add(new ProjetVue(this));
-
 
372
			panneauCentre.setId(ComposantId.PANNEAU_PROJET_LISTE);
-
 
373
			panneauCentre.layout();
-
 
374
		}	
-
 
375
		
-
 
376
		panneauCentre.getContenu().rafraichir(projetsACharger);
-
 
377
	}
-
 
378
	
-
 
379
	public void clicListeProjet(Projet projet) {
-
 
380
		panneauCentre.getContenu().rafraichir(projet);
-
 
381
	}
-
 
382
 
-
 
383
	public void clicSupprimerProjet(final List<Projet> projetListe) {
-
 
384
		if (projetListe.size() <= 0) {
-
 
385
			MessageBox.alert("Attention", "Vous devez sélectionner un projet", null); 
-
 
386
		} else {
-
 
387
			String message = "Voulez-vous vraiment supprimer ces projets ?";
-
 
388
			if (projetListe.size() == 1) {
-
 
389
				message = "Voulez-vous vraiment supprimer ce projet ?";
-
 
390
			}
-
 
391
			
-
 
392
			final Listener<MessageBoxEvent> listenerSuppression = new Listener<MessageBoxEvent>() { 
-
 
393
				public void handleEvent(MessageBoxEvent ce) {  
-
 
394
					Dialog dialog = (Dialog) ce.getComponent();
-
 
395
				    Button btn = ce.getButtonClicked();  
-
 
396
				    	   
-
 
397
				    if (btn.getText().equals(dialog.yesText)) {
-
 
398
				    	modele.supprimerProjet(panneauCentre.getContenu(), projetListe);  
-
 
399
				    }
-
 
400
				}
-
 
401
			};
-
 
402
				     
-
 
403
			MessageBox.confirm("Supprimer un projet", message, listenerSuppression);
-
 
404
		}
-
 
405
		
-
 
406
	}
-
 
407
 
-
 
408
	public void clicModifierProjet(List<Projet> projetsSelectionnes) {
-
 
409
		if (projetsSelectionnes.size() == 0) {
-
 
410
			Info.display("Information", "Veuillez sélectionner un projet.");
-
 
411
		} else if (projetsSelectionnes.size() > 1) {
-
 
412
			Info.display("Information", "Veuillez sélectionner un seul projet à la fois.");
-
 
413
		} else if (projetsSelectionnes.size() == 1) {
-
 
414
			afficherFormProjet(projetsSelectionnes.get(0).getId());
-
 
415
		} else {
-
 
416
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicModifierProjet() du Médiateur.");
-
 
417
		}
-
 
418
	}
-
 
419
 
-
 
420
	public void clicAjouterProjet() {
-
 
421
		afficherFormProjet(null);
-
 
422
	}
-
 
423
 
-
 
424
	public void selectionnerProjet(Rafraichissable vueARafraichir, String projetId) {
-
 
425
		modele.selectionnerProjet(vueARafraichir, projetId);
-
 
426
	}
-
 
427
 
-
 
428
	public void ajouterProjet(Rafraichissable vueARafraichir, Projet projetCollecte) {
-
 
429
		modele.ajouterProjet(vueARafraichir, projetCollecte);
-
 
430
	}
-
 
431
 
-
 
432
	public void modifierProjet(Rafraichissable vueARafraichir, Projet projetCollecte) {
-
 
433
		modele.modifierProjet(vueARafraichir, projetCollecte);	
-
 
434
	}
-
 
435
	
-
 
436
	//+----------------------------------------------------------------------------------------------------------------+
359
	
437
	// SELECTION : projet
360
	/**
438
	/**
361
	 * Retourne l'identifiant du projet courrant de l'application.
439
	 * Retourne l'identifiant du projet courrant de l'application.
362
	 */
440
	 */
363
	public String getProjetId() {
441
	public String getProjetId() {
364
		String id = null;
442
		String id = null;
365
		Projet projetCourant = (Projet) Registry.get(RegistreId.PROJET_COURANT);
443
		Projet projetCourant = (Projet) Registry.get(RegistreId.PROJET_COURANT);
366
		if (projetCourant != null && !projetCourant.getId().equals("")) {
444
		if (projetCourant != null && !projetCourant.getId().equals("")) {
367
			id = projetCourant.getId();
445
			id = projetCourant.getId();
368
		}
446
		}
369
		return id;
447
		return id;
370
	}
448
	}
371
	
449
		
372
	//Greg : ajout d'un écouteur pour le changement liste projet
-
 
373
	public void selectionnerProjets(Rafraichissable vueARafraichir)	{
-
 
374
		modele.selectionnerProjets(vueARafraichir);
-
 
375
	}
-
 
376
	
-
 
377
	public void selectionnerProjetCourant(Projet projetSelectionne) {
450
	public void selectionnerProjetCourant(Projet projetSelectionne) {
378
		Registry.register(RegistreId.PROJET_COURANT, projetSelectionne);
451
		Registry.register(RegistreId.PROJET_COURANT, projetSelectionne);
379
		if (panneauCentre.getContenu() instanceof PersonneVue) {
452
		if (panneauCentre.getContenu() instanceof ProjetVue)	{
380
			//modele.selectionnerPersonne(contenuPanneauCentre, null, getProjetId(), null);
-
 
381
			selectionnerPersonne(panneauCentre, null, getProjetId());
453
			selectionnerProjet(panneauCentre.getContenu(), null);
382
			//FIXME Le rafraichissement du panneau ne se fait pas!
-
 
383
		} else if (panneauCentre.getContenu() instanceof StructureVue)	{
454
		} else if (panneauCentre.getContenu() instanceof StructureVue)	{
384
			modele.selectionnerStructure(panneauCentre.getContenu(), getProjetId(), null);
455
			selectionnerStructure(panneauCentre.getContenu(), null);
385
		} else if (panneauCentre.getContenu() instanceof CollectionVue)	{
456
		} else if (panneauCentre.getContenu() instanceof CollectionVue)	{
386
			modele.selectionnerCollection(panneauCentre.getContenu(), getProjetId(), null);
457
			selectionnerCollection(panneauCentre.getContenu(), null);
-
 
458
		} else if (panneauCentre.getContenu() instanceof PersonneVue) {
-
 
459
			selectionnerPersonne(panneauCentre.getContenu(), null, getProjetId());
-
 
460
		} else if (panneauCentre.getContenu() instanceof PublicationVue) {
-
 
461
			selectionnerPublication(panneauCentre.getContenu(), null);
387
		}
462
		}
388
	}
463
	}
-
 
464
	
389
	
465
	
390
	//+----------------------------------------------------------------------------------------------------------------+
466
	//+----------------------------------------------------------------------------------------------------------------+
391
	//												GESTION DES STRUCTURES
467
	//												GESTION DES STRUCTURES
392
	//+----------------------------------------------------------------------------------------------------------------+
468
	//+----------------------------------------------------------------------------------------------------------------+
393
 
469
 
394
	public void afficherListeStructures(StructureListe structuresACharger) {
470
	public void afficherListeStructures(StructureListe structuresACharger) {
395
		if (!(panneauCentre.getContenu() instanceof StructureVue))	{	
471
		if (!(panneauCentre.getContenu() instanceof StructureVue))	{	
396
			panneauCentre.removeAll();
472
			panneauCentre.removeAll();
397
			panneauCentre.add(new StructureVue(this));
473
			panneauCentre.add(new StructureVue(this));
398
		}
474
		}
399
		panneauCentre.getContenu().rafraichir(structuresACharger);
475
		panneauCentre.getContenu().rafraichir(structuresACharger);
400
	}
476
	}
401
	
477
	
402
	public void afficherFormStructure(String structureId) {
478
	public void afficherFormStructure(String structureId) {
403
		String mode = Formulaire.MODE_AJOUTER;
479
		String mode = Formulaire.MODE_AJOUTER;
404
		if (structureId != null) {
480
		if (structureId != null) {
405
			mode = Formulaire.MODE_MODIFIER;
481
			mode = Formulaire.MODE_MODIFIER;
406
		}
482
		}
407
		
483
		
408
		panneauCentre.removeAll();
484
		panneauCentre.removeAll();
409
		StructureForm structureForm = new StructureForm(this, mode);
485
		StructureForm structureForm = new StructureForm(this, mode);
410
		panneauCentre.add(structureForm);
486
		panneauCentre.add(structureForm);
411
		
487
		
412
		if (mode.equals(Formulaire.MODE_MODIFIER)) {
488
		if (mode.equals(Formulaire.MODE_MODIFIER)) {
413
			selectionnerStructure(structureForm, structureId);
489
			selectionnerStructure(structureForm, structureId);
414
			selectionnerStructureAPersonne(structureForm, structureId, StructureAPersonne.ROLE_EQUIPE);
490
			selectionnerStructureAPersonne(structureForm, structureId, StructureAPersonne.ROLE_EQUIPE);
415
		}
491
		}
416
		
492
		
417
		panneauCentre.layout();
493
		panneauCentre.layout();
418
	}
494
	}
419
	
495
	
420
	public void clicListeStructure(Structure structure) {
496
	public void clicListeStructure(Structure structure) {
421
		panneauCentre.getContenu().rafraichir(structure);
497
		panneauCentre.getContenu().rafraichir(structure);
422
		if (structure != null && structure.getPersonnel() == null) {
498
		if (structure != null && structure.getPersonnel() == null) {
423
			selectionnerStructureAPersonne(panneauCentre.getContenu(), structure.getId(), StructureAPersonne.ROLE_EQUIPE);
499
			selectionnerStructureAPersonne(panneauCentre.getContenu(), structure.getId(), StructureAPersonne.ROLE_EQUIPE);
424
		}
500
		}
425
	}
501
	}
426
 
502
 
427
	public void clicAjouterStructure() {
503
	public void clicAjouterStructure() {
428
		afficherFormStructure(null);
504
		afficherFormStructure(null);
429
	}
505
	}
430
	
506
	
431
	public void clicModifierStructure(List<Structure> structureSelection) {
507
	public void clicModifierStructure(List<Structure> structureSelection) {
432
		if (structureSelection.size() == 0) {
508
		if (structureSelection.size() == 0) {
433
			Info.display("Information", "Veuillez sélectionner une structure.");
509
			Info.display("Information", "Veuillez sélectionner une structure.");
434
		} else if (structureSelection.size() > 1) {
510
		} else if (structureSelection.size() > 1) {
435
			Info.display("Information", "Veuillez sélectionner une seule structure à la fois.");
511
			Info.display("Information", "Veuillez sélectionner une seule structure à la fois.");
436
		} else if (structureSelection.size() == 1) {
512
		} else if (structureSelection.size() == 1) {
437
			afficherFormStructure(structureSelection.get(0).getId());
513
			afficherFormStructure(structureSelection.get(0).getId());
438
		} else {
514
		} else {
439
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicModifierStructure() du Médiateur.");
515
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicModifierStructure() du Médiateur.");
440
		}
516
		}
441
	}
517
	}
442
	
518
	
443
	public void clicSupprimerStructure(final Rafraichissable vue, final List<Structure> structureSelection) {
519
	public void clicSupprimerStructure(final Rafraichissable vue, final List<Structure> structureSelection) {
444
		if (structureSelection.size() == 0) {
520
		if (structureSelection.size() == 0) {
445
			Info.display("Information", "Veuillez sélectionner une structure.");
521
			Info.display("Information", "Veuillez sélectionner une structure.");
446
		} else if(structureSelection.size() > 0) {
522
		} else if(structureSelection.size() > 0) {
447
			String titre = "Supprimer des structures";
523
			String titre = "Supprimer des structures";
448
			String message = "Êtes vous sur de vouloir supprimer les structures sélectionnées ?";
524
			String message = "Êtes vous sur de vouloir supprimer les structures sélectionnées ?";
449
			if (structureSelection.size() == 1) {
525
			if (structureSelection.size() == 1) {
450
				titre = "Supprimer une structure";
526
				titre = "Supprimer une structure";
451
				message = "Êtes vous sur de vouloir supprimer la structure sélectionnée ?";
527
				message = "Êtes vous sur de vouloir supprimer la structure sélectionnée ?";
452
			}
528
			}
453
			
529
			
454
			final Listener<MessageBoxEvent> suppressionEcouteur = new Listener<MessageBoxEvent>() { 
530
			final Listener<MessageBoxEvent> suppressionEcouteur = new Listener<MessageBoxEvent>() { 
455
				public void handleEvent(MessageBoxEvent ce) {  
531
				public void handleEvent(MessageBoxEvent ce) {  
456
					Dialog dialog = (Dialog) ce.getComponent();
532
					Dialog dialog = (Dialog) ce.getComponent();
457
					Button btn = ce.getButtonClicked();  
533
					Button btn = ce.getButtonClicked();  
458
 
534
 
459
					if (btn.getText().equals(dialog.yesText))	{
535
					if (btn.getText().equals(dialog.yesText))	{
460
						String idStr = "" ;
536
						String idStr = "" ;
461
						for(int i = 0 ; i < structureSelection.size() ; i++) {
537
						for(int i = 0 ; i < structureSelection.size() ; i++) {
462
							idStr += structureSelection.get(i).getId()+","; 
538
							idStr += structureSelection.get(i).getId()+","; 
463
						}
539
						}
464
						supprimerStructure(vue, idStr);
540
						supprimerStructure(vue, idStr);
465
					}
541
					}
466
				}
542
				}
467
			};
543
			};
468
			
544
			
469
			MessageBox.confirm(titre, message, suppressionEcouteur);
545
			MessageBox.confirm(titre, message, suppressionEcouteur);
470
		} else {
546
		} else {
471
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicSupprimerStructure() du Médiateur.");
547
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicSupprimerStructure() du Médiateur.");
472
		}
548
		}
473
	}
549
	}
474
	
550
	
475
	public void selectionnerStructure(Rafraichissable vueARafraichir, String structureId) {
551
	public void selectionnerStructure(Rafraichissable vueARafraichir, String structureId) {
476
		modele.selectionnerStructure(vueARafraichir, getProjetId(), structureId);
552
		modele.selectionnerStructure(vueARafraichir, getProjetId(), structureId);
477
	}
553
	}
478
	
554
	
479
	public void selectionnerStructureParProjet(Rafraichissable vueARafraichir, String projetId) {
555
	public void selectionnerStructureParProjet(Rafraichissable vueARafraichir, String projetId) {
480
		modele.selectionnerStructure(vueARafraichir, projetId, null);
556
		modele.selectionnerStructure(vueARafraichir, projetId, null);
481
	}
557
	}
482
	
558
	
483
	public void ajouterStructure(Rafraichissable vueARafraichir, Structure structure, StructureConservation conservation, StructureValorisation valorisation) {
559
	public void ajouterStructure(Rafraichissable vueARafraichir, Structure structure, StructureConservation conservation, StructureValorisation valorisation) {
484
		modele.ajouterStructure(vueARafraichir, structure, conservation, valorisation);
560
		modele.ajouterStructure(vueARafraichir, structure, conservation, valorisation);
485
	}
561
	}
486
	
562
	
487
	public void modifierStructure(Rafraichissable vueARafraichir, String structureId, Structure structure, StructureConservation conservation, StructureValorisation valorisation) {
563
	public void modifierStructure(Rafraichissable vueARafraichir, String structureId, Structure structure, StructureConservation conservation, StructureValorisation valorisation) {
488
		modele.modifierStructure(vueARafraichir, structureId, structure, conservation, valorisation);
564
		modele.modifierStructure(vueARafraichir, structureId, structure, conservation, valorisation);
489
	}
565
	}
490
	
566
	
491
	public void supprimerStructure(Rafraichissable vueARafraichir, String IdentifiantsStructureSepareParVirgule) {
567
	public void supprimerStructure(Rafraichissable vueARafraichir, String IdentifiantsStructureSepareParVirgule) {
492
		modele.supprimerStructure(vueARafraichir, IdentifiantsStructureSepareParVirgule);
568
		modele.supprimerStructure(vueARafraichir, IdentifiantsStructureSepareParVirgule);
493
	}
569
	}
494
	
570
	
495
	//+----------------------------------------------------------------------------------------------------------------+
571
	//+----------------------------------------------------------------------------------------------------------------+
496
	// GESTION de la relation STRUCTURE A PERSONNE
572
	// GESTION de la relation STRUCTURE A PERSONNE
497
	public void selectionnerStructureAPersonne(Rafraichissable vueARafraichir, String structureId, String roleId) {
573
	public void selectionnerStructureAPersonne(Rafraichissable vueARafraichir, String structureId, String roleId) {
498
		modele.selectionnerStructureAPersonne(vueARafraichir, structureId, roleId);
574
		modele.selectionnerStructureAPersonne(vueARafraichir, structureId, roleId);
499
	}
575
	}
500
	
576
	
501
	public void ajouterStructureAPersonne(Rafraichissable vueARafraichir, String structureId, StructureAPersonneListe personnelAjoute) {
577
	public void ajouterStructureAPersonne(Rafraichissable vueARafraichir, String structureId, StructureAPersonneListe personnelAjoute) {
502
		if (personnelAjoute != null && personnelAjoute.size() > 0) {
578
		if (personnelAjoute != null && personnelAjoute.size() > 0) {
503
			for (Iterator<String> it = personnelAjoute.keySet().iterator(); it.hasNext();) {
579
			for (Iterator<String> it = personnelAjoute.keySet().iterator(); it.hasNext();) {
504
				modele.ajouterStructureAPersonne(vueARafraichir, structureId, (StructureAPersonne) personnelAjoute.get(it.next()));
580
				modele.ajouterStructureAPersonne(vueARafraichir, structureId, (StructureAPersonne) personnelAjoute.get(it.next()));
505
			}
581
			}
506
		}
582
		}
507
	}
583
	}
508
	
584
	
509
	public void modifierStructureAPersonne(Rafraichissable vueARafraichir, StructureAPersonneListe personnelModifie) {
585
	public void modifierStructureAPersonne(Rafraichissable vueARafraichir, StructureAPersonneListe personnelModifie) {
510
		if (personnelModifie != null && personnelModifie.size() > 0) {
586
		if (personnelModifie != null && personnelModifie.size() > 0) {
511
			for (Iterator<String> it = personnelModifie.keySet().iterator(); it.hasNext();) {
587
			for (Iterator<String> it = personnelModifie.keySet().iterator(); it.hasNext();) {
512
				modele.modifierStructureAPersonne(vueARafraichir, (StructureAPersonne) personnelModifie.get(it.next()));
588
				modele.modifierStructureAPersonne(vueARafraichir, (StructureAPersonne) personnelModifie.get(it.next()));
513
			}
589
			}
514
		}
590
		}
515
	}
591
	}
516
	
592
	
517
	public void supprimerStructureAPersonne(Rafraichissable vueARafraichir, StructureAPersonneListe personnelSupprime) {
593
	public void supprimerStructureAPersonne(Rafraichissable vueARafraichir, StructureAPersonneListe personnelSupprime) {
518
		if (personnelSupprime != null && personnelSupprime.size() > 0) {
594
		if (personnelSupprime != null && personnelSupprime.size() > 0) {
519
			String idStructureAPersonneSepareParVirgule = "" ;
595
			String idStructureAPersonneSepareParVirgule = "" ;
520
			Iterator<String> it = personnelSupprime.keySet().iterator();
596
			Iterator<String> it = personnelSupprime.keySet().iterator();
521
			while (it.hasNext()) {
597
			while (it.hasNext()) {
522
				idStructureAPersonneSepareParVirgule += personnelSupprime.get(it.next()).getId();
598
				idStructureAPersonneSepareParVirgule += personnelSupprime.get(it.next()).getId();
523
				idStructureAPersonneSepareParVirgule += (it.hasNext()) ? "," : "";
599
				idStructureAPersonneSepareParVirgule += (it.hasNext()) ? "," : "";
524
			}
600
			}
525
			supprimerStructureAPersonne(vueARafraichir, idStructureAPersonneSepareParVirgule);
601
			supprimerStructureAPersonne(vueARafraichir, idStructureAPersonneSepareParVirgule);
526
		}
602
		}
527
	}
603
	}
528
	
604
	
529
	public void supprimerStructureAPersonne(Rafraichissable vueARafraichir, String idStructureAPersonneSeparesParVirgule) {
605
	public void supprimerStructureAPersonne(Rafraichissable vueARafraichir, String idStructureAPersonneSeparesParVirgule) {
530
		modele.supprimerStructureAPersonne(vueARafraichir, idStructureAPersonneSeparesParVirgule);
606
		modele.supprimerStructureAPersonne(vueARafraichir, idStructureAPersonneSeparesParVirgule);
531
	}
607
	}
532
	
608
	
533
	public void supprimerStructureAPersonne(final Rafraichissable vueARafraichir, final List<Structure> structuresListe) {
609
	public void supprimerStructureAPersonne(final Rafraichissable vueARafraichir, final List<Structure> structuresListe) {
534
		if (structuresListe.size() != 0) {
610
		if (structuresListe.size() != 0) {
535
			String idStructureSepareParVirgule = "" ;
611
			String idStructureSepareParVirgule = "" ;
536
			Iterator<Structure> it = structuresListe.iterator();
612
			Iterator<Structure> it = structuresListe.iterator();
537
			while (it.hasNext()) {
613
			while (it.hasNext()) {
538
				Structure structure = it.next();
614
				Structure structure = it.next();
539
				idStructureSepareParVirgule += structure.getId();
615
				idStructureSepareParVirgule += structure.getId();
540
				idStructureSepareParVirgule += it.hasNext() ? "," : "";
616
				idStructureSepareParVirgule += it.hasNext() ? "," : "";
541
			}
617
			}
542
			supprimerStructureAPersonne(vueARafraichir, idStructureSepareParVirgule);
618
			supprimerStructureAPersonne(vueARafraichir, idStructureSepareParVirgule);
543
		}
619
		}
544
	}
620
	}
545
	
621
	
546
	//+----------------------------------------------------------------------------------------------------------------+
622
	//+----------------------------------------------------------------------------------------------------------------+
547
	//												GESTION des COLLECTIONS
623
	//												GESTION des COLLECTIONS
548
	//+----------------------------------------------------------------------------------------------------------------+
624
	//+----------------------------------------------------------------------------------------------------------------+
549
	
625
	
550
	public void afficherListeCollections(CollectionListe collectionsACharger) {
626
	public void afficherListeCollections(CollectionListe collectionsACharger) {
551
		if (!(panneauCentre.getContenu() instanceof CollectionVue)) {
627
		if (!(panneauCentre.getContenu() instanceof CollectionVue)) {
552
			panneauCentre.removeAll();
628
			panneauCentre.removeAll();
553
			panneauCentre.add(new CollectionVue(this));
629
			panneauCentre.add(new CollectionVue(this));
554
		}
630
		}
555
		
631
		
556
		panneauCentre.getContenu().rafraichir(collectionsACharger);
632
		panneauCentre.getContenu().rafraichir(collectionsACharger);
557
	}
633
	}
558
	
634
	
559
	public void afficherFormCollection(String collectionId) {
635
	public void afficherFormCollection(String collectionId) {
560
		panneauCentre.removeAll();
636
		panneauCentre.removeAll();
561
		CollectionForm collectionForm = new CollectionForm(this, collectionId);
637
		CollectionForm collectionForm = new CollectionForm(this, collectionId);
562
		panneauCentre.add(collectionForm);
638
		panneauCentre.add(collectionForm);
563
		
639
		
564
		panneauCentre.layout();
640
		panneauCentre.layout();
565
	}
641
	}
566
	
642
	
567
	public void clicListeCollection(Collection collectionCliquee) {
643
	public void clicListeCollection(Collection collectionCliquee) {
568
		panneauCentre.getContenu().rafraichir(collectionCliquee);
644
		panneauCentre.getContenu().rafraichir(collectionCliquee);
569
		if (collectionCliquee != null) {
645
		if (collectionCliquee != null) {
570
			selectionnerCollectionAPersonne(panneauCentre.getContenu(), collectionCliquee.getId(), null);
646
			selectionnerCollectionAPersonne(panneauCentre.getContenu(), collectionCliquee.getId(), null);
571
			selectionnerCollectionAPublication(panneauCentre.getContenu(), collectionCliquee.getId());
647
			selectionnerCollectionAPublication(panneauCentre.getContenu(), collectionCliquee.getId());
572
		} 
648
		} 
573
	}
649
	}
574
	
650
	
575
	public void clicAjouterCollection() {
651
	public void clicAjouterCollection() {
576
		afficherFormCollection(null);
652
		afficherFormCollection(null);
577
	}
653
	}
578
 
654
 
579
	public void clicModifierCollection(List<Collection> selection) {
655
	public void clicModifierCollection(List<Collection> selection) {
580
		if (selection.size() == 0) {
656
		if (selection.size() == 0) {
581
			Info.display("Information", "Veuillez sélectionner une collection.");
657
			Info.display("Information", "Veuillez sélectionner une collection.");
582
		} else if (selection.size() > 1) {
658
		} else if (selection.size() > 1) {
583
			Info.display("Information", "Veuillez sélectionner une seule collection à la fois.");
659
			Info.display("Information", "Veuillez sélectionner une seule collection à la fois.");
584
		} else if (selection.size() == 1) {
660
		} else if (selection.size() == 1) {
585
			afficherFormCollection(selection.get(0).getId());
661
			afficherFormCollection(selection.get(0).getId());
586
		} else {
662
		} else {
587
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicModifierCollection() du Médiateur.");
663
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicModifierCollection() du Médiateur.");
588
		}
664
		}
589
	}
665
	}
590
 
666
 
591
	public void clicSupprimerCollection(CollectionListeVue collectionListeVue, List<Collection> collectionsASupprimer) {
667
	public void clicSupprimerCollection(CollectionListeVue collectionListeVue, List<Collection> collectionsASupprimer) {
592
		// TODO Auto-generated method stub	
668
		// TODO Auto-generated method stub	
593
	}
669
	}
594
 
670
 
595
	public void selectionnerCollection(Rafraichissable vueARafraichir, String collectionId) {
671
	public void selectionnerCollection(Rafraichissable vueARafraichir, String collectionId) {
596
		modele.selectionnerCollection(vueARafraichir, getProjetId(), collectionId);
672
		modele.selectionnerCollection(vueARafraichir, getProjetId(), collectionId);
597
	}
673
	}
598
	
674
	
599
	public void selectionnerCollectionParProjet(Rafraichissable vueARafraichir, String projetId) {
675
	public void selectionnerCollectionParProjet(Rafraichissable vueARafraichir, String projetId) {
600
		modele.selectionnerCollection(vueARafraichir, projetId, null);
676
		modele.selectionnerCollection(vueARafraichir, projetId, null);
601
	}
677
	}
602
	
678
	
603
	public void ajouterCollection(Rafraichissable vueARafraichir, Collection collection) {
679
	public void ajouterCollection(Rafraichissable vueARafraichir, Collection collection) {
604
		modele.ajouterCollection(vueARafraichir, getUtilisateurId(), collection);
680
		modele.ajouterCollection(vueARafraichir, getUtilisateurId(), collection);
605
	}
681
	}
606
	
682
	
607
	public void modifierCollection(Rafraichissable vueARafraichir, Collection collection) {
683
	public void modifierCollection(Rafraichissable vueARafraichir, Collection collection) {
608
		modele.modifierCollection(vueARafraichir, collection);
684
		modele.modifierCollection(vueARafraichir, collection);
609
	}
685
	}
610
	
686
	
611
	public void supprimerCollection(Rafraichissable vueARafraichir, String IdentifiantsCollectionSepareParVirgule) {
687
	public void supprimerCollection(Rafraichissable vueARafraichir, String IdentifiantsCollectionSepareParVirgule) {
612
		modele.supprimerCollection(vueARafraichir, getUtilisateurId(), IdentifiantsCollectionSepareParVirgule);
688
		modele.supprimerCollection(vueARafraichir, getUtilisateurId(), IdentifiantsCollectionSepareParVirgule);
613
	}
689
	}
614
	
690
	
615
	//+----------------------------------------------------------------------------------------------------------------+
691
	//+----------------------------------------------------------------------------------------------------------------+
616
	// GESTION de la relation COLLECTION A PERSONNE
692
	// GESTION de la relation COLLECTION A PERSONNE
617
	
693
	
618
	public void selectionnerCollectionAPersonne(Rafraichissable vueARafraichir, String collectionId, String roleId) {
694
	public void selectionnerCollectionAPersonne(Rafraichissable vueARafraichir, String collectionId, String roleId) {
619
		modele.selectionnerCollectionAPersonne(vueARafraichir, collectionId, roleId);
695
		modele.selectionnerCollectionAPersonne(vueARafraichir, collectionId, roleId);
620
	}
696
	}
621
	
697
	
622
	public void ajouterCollectionAPersonne(Rafraichissable vueARafraichir, String collectionId, CollectionAPersonneListe personnesAjoutees) {
698
	public void ajouterCollectionAPersonne(Rafraichissable vueARafraichir, String collectionId, CollectionAPersonneListe personnesAjoutees) {
623
		if (personnesAjoutees != null && personnesAjoutees.size() > 0) {
699
		if (personnesAjoutees != null && personnesAjoutees.size() > 0) {
624
			for (Iterator<String> it = personnesAjoutees.keySet().iterator(); it.hasNext();) {
700
			for (Iterator<String> it = personnesAjoutees.keySet().iterator(); it.hasNext();) {
625
				modele.ajouterCollectionAPersonne(vueARafraichir, collectionId, (CollectionAPersonne) personnesAjoutees.get(it.next()));
701
				modele.ajouterCollectionAPersonne(vueARafraichir, collectionId, (CollectionAPersonne) personnesAjoutees.get(it.next()));
626
			}
702
			}
627
		}
703
		}
628
	}
704
	}
629
	
705
	
630
	public void modifierCollectionAPersonne(Rafraichissable vueARafraichir, CollectionAPersonneListe personnesModifiees) {
706
	public void modifierCollectionAPersonne(Rafraichissable vueARafraichir, CollectionAPersonneListe personnesModifiees) {
631
		if (personnesModifiees != null && personnesModifiees.size() > 0) {
707
		if (personnesModifiees != null && personnesModifiees.size() > 0) {
632
			for (Iterator<String> it = personnesModifiees.keySet().iterator(); it.hasNext();) {
708
			for (Iterator<String> it = personnesModifiees.keySet().iterator(); it.hasNext();) {
633
				modele.modifierCollectionAPersonne(vueARafraichir, (CollectionAPersonne) personnesModifiees.get(it.next()));
709
				modele.modifierCollectionAPersonne(vueARafraichir, (CollectionAPersonne) personnesModifiees.get(it.next()));
634
			}
710
			}
635
		}
711
		}
636
	}
712
	}
637
	
713
	
638
	public void supprimerCollectionAPersonne(Rafraichissable vueARafraichir, CollectionAPersonneListe personnesSupprimees) {
714
	public void supprimerCollectionAPersonne(Rafraichissable vueARafraichir, CollectionAPersonneListe personnesSupprimees) {
639
		if (personnesSupprimees != null && personnesSupprimees.size() > 0) {
715
		if (personnesSupprimees != null && personnesSupprimees.size() > 0) {
640
			String idCollectionAPersonneSeparesParVirgule = "" ;
716
			String idCollectionAPersonneSeparesParVirgule = "" ;
641
			for (Iterator<String> it = personnesSupprimees.keySet().iterator(); it.hasNext();) {
717
			for (Iterator<String> it = personnesSupprimees.keySet().iterator(); it.hasNext();) {
642
				idCollectionAPersonneSeparesParVirgule += personnesSupprimees.get(it.next()).getId();
718
				idCollectionAPersonneSeparesParVirgule += personnesSupprimees.get(it.next()).getId();
643
				if (it.hasNext()) {
719
				if (it.hasNext()) {
644
					idCollectionAPersonneSeparesParVirgule += ",";
720
					idCollectionAPersonneSeparesParVirgule += ",";
645
				}
721
				}
646
			}
722
			}
647
			modele.supprimerCollectionAPersonne(vueARafraichir, idCollectionAPersonneSeparesParVirgule);
723
			modele.supprimerCollectionAPersonne(vueARafraichir, idCollectionAPersonneSeparesParVirgule);
648
		}
724
		}
649
	}
725
	}
650
	
726
	
651
	//+----------------------------------------------------------------------------------------------------------------+
727
	//+----------------------------------------------------------------------------------------------------------------+
652
	// GESTION de la relation COLLECTION A PUBLICATION
728
	// GESTION de la relation COLLECTION A PUBLICATION
653
	
729
	
654
	public void selectionnerCollectionAPublication(Rafraichissable vueARafraichir, String collectionId) {
730
	public void selectionnerCollectionAPublication(Rafraichissable vueARafraichir, String collectionId) {
655
		modele.selectionnerCollectionAPublication(vueARafraichir, collectionId);
731
		modele.selectionnerCollectionAPublication(vueARafraichir, collectionId);
656
	}
732
	}
657
	
733
	
658
	public void ajouterCollectionAPublication(Rafraichissable vueARafraichir, String collectionId, CollectionAPublicationListe publicationsAjoutees) {
734
	public void ajouterCollectionAPublication(Rafraichissable vueARafraichir, String collectionId, CollectionAPublicationListe publicationsAjoutees) {
659
		if (publicationsAjoutees != null && publicationsAjoutees.size() > 0) {
735
		if (publicationsAjoutees != null && publicationsAjoutees.size() > 0) {
660
			for (Iterator<String> it = publicationsAjoutees.keySet().iterator(); it.hasNext();) {
736
			for (Iterator<String> it = publicationsAjoutees.keySet().iterator(); it.hasNext();) {
661
				modele.ajouterCollectionAPublication(vueARafraichir, collectionId, (CollectionAPublication) publicationsAjoutees.get(it.next()));
737
				modele.ajouterCollectionAPublication(vueARafraichir, collectionId, (CollectionAPublication) publicationsAjoutees.get(it.next()));
662
			}
738
			}
663
		}
739
		}
664
	}
740
	}
665
	
741
	
666
	public void modifierCollectionAPublication(Rafraichissable vueARafraichir, CollectionAPublicationListe publicationsModifiees) {
742
	public void modifierCollectionAPublication(Rafraichissable vueARafraichir, CollectionAPublicationListe publicationsModifiees) {
667
		if (publicationsModifiees != null && publicationsModifiees.size() > 0) {
743
		if (publicationsModifiees != null && publicationsModifiees.size() > 0) {
668
			for (Iterator<String> it = publicationsModifiees.keySet().iterator(); it.hasNext();) {
744
			for (Iterator<String> it = publicationsModifiees.keySet().iterator(); it.hasNext();) {
669
				modele.modifierCollectionAPublication(vueARafraichir, (CollectionAPublication) publicationsModifiees.get(it.next()));
745
				modele.modifierCollectionAPublication(vueARafraichir, (CollectionAPublication) publicationsModifiees.get(it.next()));
670
			}
746
			}
671
		}
747
		}
672
	}
748
	}
673
	
749
	
674
	public void supprimerCollectionAPublication(Rafraichissable vueARafraichir, CollectionAPublicationListe publicationsSupprimees) {
750
	public void supprimerCollectionAPublication(Rafraichissable vueARafraichir, CollectionAPublicationListe publicationsSupprimees) {
675
		if (publicationsSupprimees != null && publicationsSupprimees.size() > 0) {
751
		if (publicationsSupprimees != null && publicationsSupprimees.size() > 0) {
676
			String idCollectionAPublicationSeparesParVirgule = "" ;
752
			String idCollectionAPublicationSeparesParVirgule = "" ;
677
			for (Iterator<String> it = publicationsSupprimees.keySet().iterator(); it.hasNext();) {
753
			for (Iterator<String> it = publicationsSupprimees.keySet().iterator(); it.hasNext();) {
678
				idCollectionAPublicationSeparesParVirgule += publicationsSupprimees.get(it.next()).getId();
754
				idCollectionAPublicationSeparesParVirgule += publicationsSupprimees.get(it.next()).getId();
679
				if (it.hasNext()) {
755
				if (it.hasNext()) {
680
					idCollectionAPublicationSeparesParVirgule += ",";
756
					idCollectionAPublicationSeparesParVirgule += ",";
681
				}
757
				}
682
			}
758
			}
683
			modele.supprimerCollectionAPublication(vueARafraichir, idCollectionAPublicationSeparesParVirgule);
759
			modele.supprimerCollectionAPublication(vueARafraichir, idCollectionAPublicationSeparesParVirgule);
684
		}
760
		}
685
	}
761
	}
686
	
762
	
687
	//+----------------------------------------------------------------------------------------------------------------+
763
	//+----------------------------------------------------------------------------------------------------------------+
688
	// GESTION de la relation COLLECTION A PUBLICATION
764
	// GESTION de la relation COLLECTION A PUBLICATION
689
	
765
	
690
	//+----------------------------------------------------------------------------------------------------------------+
766
	//+----------------------------------------------------------------------------------------------------------------+
691
	// GESTION de la relation COLLECTION A COMMENTAIRE
767
	// GESTION de la relation COLLECTION A COMMENTAIRE
692
	
768
	
693
	//+----------------------------------------------------------------------------------------------------------------+
769
	//+----------------------------------------------------------------------------------------------------------------+
694
	//												GESTION DES PERSONNES
770
	//												GESTION DES PERSONNES
695
	//+----------------------------------------------------------------------------------------------------------------+
771
	//+----------------------------------------------------------------------------------------------------------------+
696
 
772
 
697
	public void afficherListePersonnes(PersonneListe personnesACharger)	{
773
	public void afficherListePersonnes(PersonneListe personnesACharger)	{
698
		if (!(panneauCentre.getContenu() instanceof PersonneVue))	{
774
		if (!(panneauCentre.getContenu() instanceof PersonneVue))	{
699
			panneauCentre.removeAll();
775
			panneauCentre.removeAll();
700
			panneauCentre.add(new PersonneVue(this));
776
			panneauCentre.add(new PersonneVue(this));
701
			panneauCentre.setId(ComposantId.PANNEAU_PERSONNE_LISTES);
777
			panneauCentre.setId(ComposantId.PANNEAU_PERSONNE_LISTES);
702
		}	
778
		}	
703
		
779
		
704
		panneauCentre.getContenu().rafraichir(personnesACharger);
780
		panneauCentre.getContenu().rafraichir(personnesACharger);
705
	}
781
	}
706
	
782
	
707
	public void afficherFormPersonne(String personneId)	{
783
	public void afficherFormPersonne(String personneId)	{
708
		panneauCentre.removeAll();
784
		panneauCentre.removeAll();
709
		PersonneForm personneForm = new PersonneForm(this, personneId);
785
		PersonneForm personneForm = new PersonneForm(this, personneId);
710
		panneauCentre.add(personneForm);
786
		panneauCentre.add(personneForm);
711
		
787
		
712
		panneauCentre.layout();
788
		panneauCentre.layout();
713
	}
789
	}
714
 
790
 
715
	public void clicListePersonne(Personne personne)	{
791
	public void clicListePersonne(Personne personne)	{
716
		panneauCentre.getContenu().rafraichir(personne);
792
		panneauCentre.getContenu().rafraichir(personne);
717
	}
793
	}
718
 
794
 
719
	public void clicAjouterPersonne()	{
795
	public void clicAjouterPersonne()	{
720
		afficherFormPersonne(null);
796
		afficherFormPersonne(null);
721
	}
797
	}
722
	
798
	
723
	public void clicModifierPersonne(List<Personne> selection)	{
799
	public void clicModifierPersonne(List<Personne> selection)	{
724
		if (selection.size() == 0) {
800
		if (selection.size() == 0) {
725
			Info.display("Information", "Veuillez sélectionner une personne.");
801
			Info.display("Information", "Veuillez sélectionner une personne.");
726
		} else if (selection.size() > 1) {
802
		} else if (selection.size() > 1) {
727
			Info.display("Information", "Veuillez sélectionner une seule personne à la fois.");
803
			Info.display("Information", "Veuillez sélectionner une seule personne à la fois.");
728
		} else if (selection.size() == 1) {
804
		} else if (selection.size() == 1) {
729
			afficherFormPersonne(selection.get(0).getId());
805
			afficherFormPersonne(selection.get(0).getId());
730
		} else {
806
		} else {
731
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicModifierPersonne() du Médiateur.");
807
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicModifierPersonne() du Médiateur.");
732
		}			
808
		}			
733
	}
809
	}
734
	
810
	
735
	
811
	
736
	public void clicSupprimerPersonne(final Rafraichissable vue, final List<Personne> personneSelection) {
812
	public void clicSupprimerPersonne(final Rafraichissable vue, final List<Personne> personneSelection) {
737
		//Empecher suppression utilisateur
813
		//Empecher suppression utilisateur
738
		for (int i=0; i < personneSelection.size(); i++)	{
814
		for (int i=0; i < personneSelection.size(); i++)	{
739
			Personne courante = personneSelection.get(i);
815
			Personne courante = personneSelection.get(i);
740
			if (courante.getId().equals(getUtilisateurId()))	{
816
			if (courante.getId().equals(getUtilisateurId()))	{
741
				Info.display("Information", "Vous ne pouvez pas supprimer votre compte");
817
				Info.display("Information", "Vous ne pouvez pas supprimer votre compte");
742
				personneSelection.remove(courante);
818
				personneSelection.remove(courante);
743
			}
819
			}
744
		}
820
		}
745
		
821
		
746
		if (personneSelection.size() == 0) {
822
		if (personneSelection.size() == 0) {
747
			Info.display("Information", "Veuillez sélectionner une personne.");
823
			Info.display("Information", "Veuillez sélectionner une personne.");
748
		} else if(personneSelection.size() > 0) {
824
		} else if(personneSelection.size() > 0) {
749
			String message = "Êtes vous sur de vouloir supprimer les personnes sélectionnées ?";
825
			String message = "Êtes vous sur de vouloir supprimer les personnes sélectionnées ?";
750
			if (personneSelection.size() == 1) {
826
			if (personneSelection.size() == 1) {
751
				message = "Êtes vous sur de vouloir supprimer la personne sélectionnée ?";
827
				message = "Êtes vous sur de vouloir supprimer la personne sélectionnée ?";
752
			}
828
			}
753
			
829
			
754
			final Listener<MessageBoxEvent> listenerSuppression = new Listener<MessageBoxEvent>() { 
830
			final Listener<MessageBoxEvent> listenerSuppression = new Listener<MessageBoxEvent>() { 
755
				public void handleEvent(MessageBoxEvent ce) {
831
				public void handleEvent(MessageBoxEvent ce) {
756
					Dialog dialog = (Dialog) ce.getComponent();
832
					Dialog dialog = (Dialog) ce.getComponent();
757
					Button btn = ce.getButtonClicked();
833
					Button btn = ce.getButtonClicked();
758
 
834
 
759
					if (btn.getText().equals(dialog.yesText)) {
835
					if (btn.getText().equals(dialog.yesText)) {
760
						String idPersonneSepareParVirgule = "" ;
836
						String idPersonneSepareParVirgule = "" ;
761
						Iterator<Personne> itPersonne = personneSelection.iterator();
837
						Iterator<Personne> itPersonne = personneSelection.iterator();
762
						while (itPersonne.hasNext()) {
838
						while (itPersonne.hasNext()) {
763
							Personne personneCourante = itPersonne.next();
839
							Personne personneCourante = itPersonne.next();
764
							idPersonneSepareParVirgule += personneCourante.getId();
840
							idPersonneSepareParVirgule += personneCourante.getId();
765
							idPersonneSepareParVirgule +=",";
841
							idPersonneSepareParVirgule +=",";
766
						}
842
						}
767
						modele.supprimerPersonne(vue, idPersonneSepareParVirgule);  
843
						modele.supprimerPersonne(vue, idPersonneSepareParVirgule);  
768
					}
844
					}
769
				}
845
				}
770
			};
846
			};
771
			
847
			
772
			MessageBox.confirm("Supprimer une personne", message, listenerSuppression);
848
			MessageBox.confirm("Supprimer une personne", message, listenerSuppression);
773
		} else {
849
		} else {
774
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicSupprimerPersonne() du Médiateur.");
850
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicSupprimerPersonne() du Médiateur.");
775
		}
851
		}
776
	}
852
	}
777
 
853
 
778
	public void selectionnerPersonne(Rafraichissable vueARafraichir, Personne personne, String projetId)	{
854
	public void selectionnerPersonne(Rafraichissable vueARafraichir, Personne personne, String projetId)	{
779
		int nbElements = Integer.valueOf(((Dictionary) Dictionary.getDictionary("configuration")).get("nbElementsPage")); 
855
		int nbElements = Integer.valueOf(((Dictionary) Dictionary.getDictionary("configuration")).get("nbElementsPage")); 
780
		selectionnerPersonne(vueARafraichir, personne, projetId, 0, nbElements);
856
		selectionnerPersonne(vueARafraichir, personne, projetId, 0, nbElements);
781
	}
857
	}
782
	
858
	
783
	public void selectionnerPersonne(Rafraichissable vueARafraichir, Personne personne, String projetId, int start, int nbElements)	{
859
	public void selectionnerPersonne(Rafraichissable vueARafraichir, Personne personne, String projetId, int start, int nbElements)	{
784
		String personneId = null;
860
		String personneId = null;
785
		if (personne != null)	{
861
		if (personne != null)	{
786
			personneId = personne.getId();
862
			personneId = personne.getId();
787
		}
863
		}
788
		modele.selectionnerPersonne(vueARafraichir, personneId, projetId, null, start, nbElements);
864
		modele.selectionnerPersonne(vueARafraichir, personneId, projetId, null, start, nbElements);
789
	}
865
	}
790
	
866
	
791
	public void selectionnerPersonneParNomComplet(Rafraichissable vueARafraichir, String projetId, String nomComplet) {
867
	public void selectionnerPersonneParNomComplet(Rafraichissable vueARafraichir, String projetId, String nomComplet) {
792
		modele.selectionnerPersonne(vueARafraichir, null, projetId, nomComplet, 0, -1);		
868
		modele.selectionnerPersonne(vueARafraichir, null, projetId, nomComplet, 0, -1);		
793
	}
869
	}
794
	
870
	
795
	public void selectionnerPersonneParProjet(Rafraichissable vueARafraichir, String projetId) {
871
	public void selectionnerPersonneParProjet(Rafraichissable vueARafraichir, String projetId) {
796
		modele.selectionnerPersonne(vueARafraichir, null, projetId, null, 0, -1);		
872
		modele.selectionnerPersonne(vueARafraichir, null, projetId, null, 0, -1);		
797
	}
873
	}
798
	
874
	
799
	public void enregistrerPersonne(Rafraichissable vue, Personne personne){
875
	public void enregistrerPersonne(Rafraichissable vue, Personne personne){
800
		if (personne.getId() != null && !personne.getId().trim().equals("")) {	
876
		if (personne.getId() != null && !personne.getId().trim().equals("")) {	
801
			modele.modifierPersonne(vue, personne);
877
			modele.modifierPersonne(vue, personne);
802
		}	else {
878
		}	else {
803
			modele.ajouterPersonne(vue, personne);
879
			modele.ajouterPersonne(vue, personne);
804
		}
880
		}
805
	}
881
	}
806
	
882
	
807
	//+----------------------------------------------------------------------------------------------------------------+
883
	//+----------------------------------------------------------------------------------------------------------------+
808
	//												GESTION DES PUBLICATIONS
884
	//												GESTION DES PUBLICATIONS
809
	//+----------------------------------------------------------------------------------------------------------------+
885
	//+----------------------------------------------------------------------------------------------------------------+
810
 
886
 
811
	public void afficherListePublication(PublicationListe nouvelleDonnees) {
887
	public void afficherListePublication(PublicationListe nouvelleDonnees) {
812
		if (!(panneauCentre.getContenu() instanceof PublicationVue))	{
888
		if (!(panneauCentre.getContenu() instanceof PublicationVue))	{
813
			panneauCentre.removeAll();
889
			panneauCentre.removeAll();
814
			panneauCentre.add(new PublicationVue(this));
890
			panneauCentre.add(new PublicationVue(this));
815
		}	
891
		}	
816
		
892
		
817
		panneauCentre.getContenu().rafraichir(nouvelleDonnees);	
893
		panneauCentre.getContenu().rafraichir(nouvelleDonnees);	
818
	}
894
	}
819
	
895
	
820
	public void afficherFormPublication(String publicationId) {
896
	public void afficherFormPublication(String publicationId) {
821
		panneauCentre.removeAll();
897
		panneauCentre.removeAll();
822
		PublicationForm publicationForm = new PublicationForm(this, publicationId);
898
		PublicationForm publicationForm = new PublicationForm(this, publicationId);
823
		panneauCentre.add(publicationForm);
899
		panneauCentre.add(publicationForm);
824
		
900
		
825
		panneauCentre.layout();
901
		panneauCentre.layout();
826
	}
902
	}
827
	
903
	
828
	public void clicListePublication(Publication publication) {
904
	public void clicListePublication(Publication publication) {
829
		if (publication != null) {
905
		if (publication != null) {
830
			panneauCentre.getContenu().rafraichir(publication);	
906
			panneauCentre.getContenu().rafraichir(publication);	
831
		}
907
		}
832
	}
908
	}
833
 
909
 
834
	public void clicAjouterPublication() {
910
	public void clicAjouterPublication() {
835
		afficherFormPublication(null);
911
		afficherFormPublication(null);
836
	}
912
	}
837
	
913
	
838
	public void clicModifierPublication(List<Publication> selection) {
914
	public void clicModifierPublication(List<Publication> selection) {
839
		if (selection.size() == 0) {
915
		if (selection.size() == 0) {
840
			Info.display("Information", "Veuillez sélectionner une publication.");
916
			Info.display("Information", "Veuillez sélectionner une publication.");
841
		} else if (selection.size() > 1) {
917
		} else if (selection.size() > 1) {
842
			Info.display("Information", "Veuillez sélectionner une seule publication à la fois.");
918
			Info.display("Information", "Veuillez sélectionner une seule publication à la fois.");
843
		} else if (selection.size() == 1) {
919
		} else if (selection.size() == 1) {
844
			afficherFormPublication(selection.get(0).getId());
920
			afficherFormPublication(selection.get(0).getId());
845
		} else {
921
		} else {
846
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicModifierPublication() du Médiateur.");
922
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicModifierPublication() du Médiateur.");
847
		}
923
		}
848
	}
924
	}
849
	
925
	
850
	public void clicSupprimerPublication(final List<Publication> publicationListe) {
926
	public void clicSupprimerPublication(final List<Publication> publicationListe) {
851
		if (publicationListe.size() <= 0) {
927
		if (publicationListe.size() <= 0) {
852
			MessageBox.alert("Attention", "Vous devez sélectionner une publication", null); 
928
			MessageBox.alert("Attention", "Vous devez sélectionner une publication", null); 
853
		} else {
929
		} else {
854
			String message = "Voulez-vous vraiment supprimer ces publications ?";
930
			String message = "Voulez-vous vraiment supprimer ces publications ?";
855
			if (publicationListe.size() == 1) {
931
			if (publicationListe.size() == 1) {
856
				message = "Voulez-vous vraiment supprimer cette publication ?";
932
				message = "Voulez-vous vraiment supprimer cette publication ?";
857
			}
933
			}
858
			
934
			
859
			final Listener<MessageBoxEvent> listenerSuppression = new Listener<MessageBoxEvent>() { 
935
			final Listener<MessageBoxEvent> listenerSuppression = new Listener<MessageBoxEvent>() { 
860
				public void handleEvent(MessageBoxEvent ce) {  
936
				public void handleEvent(MessageBoxEvent ce) {  
861
					Dialog dialog = (Dialog) ce.getComponent();
937
					Dialog dialog = (Dialog) ce.getComponent();
862
				    Button btn = ce.getButtonClicked();  
938
				    Button btn = ce.getButtonClicked();  
863
				    	   
939
				    	   
864
				    if (btn.getText().equals(dialog.yesText)) {
940
				    if (btn.getText().equals(dialog.yesText)) {
865
				    	supprimerPublication(panneauCentre.getContenu(), publicationListe);
941
				    	supprimerPublication(panneauCentre.getContenu(), publicationListe);
866
				    	supprimerPublicationAPersonne(panneauCentre.getContenu(), publicationListe.get(0).getId());
942
				    	supprimerPublicationAPersonne(panneauCentre.getContenu(), publicationListe.get(0).getId());
867
				    }
943
				    }
868
				}
944
				}
869
			};
945
			};
870
				     
946
				     
871
			MessageBox.confirm("Supprimer une publication", message, listenerSuppression);
947
			MessageBox.confirm("Supprimer une publication", message, listenerSuppression);
872
		}
948
		}
873
	}
949
	}
874
	
950
	
875
	public void selectionnerPublication(Rafraichissable vueARafraichir, String publicationId) {
951
	public void selectionnerPublication(Rafraichissable vueARafraichir, String publicationId) {
876
		modele.selectionnerPublication(vueARafraichir, publicationId, getProjetId(), null);
952
		modele.selectionnerPublication(vueARafraichir, publicationId, getProjetId(), null);
877
	}
953
	}
878
	
954
	
879
	public void selectionnerPublicationParNomComplet(Rafraichissable vueARafraichir, String projetId, String nomComplet) {
955
	public void selectionnerPublicationParNomComplet(Rafraichissable vueARafraichir, String projetId, String nomComplet) {
880
		modele.selectionnerPublication(vueARafraichir, null, projetId, nomComplet);		
956
		modele.selectionnerPublication(vueARafraichir, null, projetId, nomComplet);		
881
	}
957
	}
882
	
958
	
883
	public void ajouterPublication(Rafraichissable vueARafraichir, Publication publication) {
959
	public void ajouterPublication(Rafraichissable vueARafraichir, Publication publication) {
884
		modele.ajouterPublication(vueARafraichir, publication);
960
		modele.ajouterPublication(vueARafraichir, publication);
885
	}
961
	}
886
	
962
	
887
	public void modifierPublication(Rafraichissable vueARafraichir, Publication publication) {
963
	public void modifierPublication(Rafraichissable vueARafraichir, Publication publication) {
888
		modele.modifierPublication(vueARafraichir, publication);
964
		modele.modifierPublication(vueARafraichir, publication);
889
	}
965
	}
890
	
966
	
891
	public void supprimerPublication(Rafraichissable vueARafraichir, List<Publication> publicationsListe) {
967
	public void supprimerPublication(Rafraichissable vueARafraichir, List<Publication> publicationsListe) {
892
		if (publicationsListe != null && publicationsListe.size() > 0) {
968
		if (publicationsListe != null && publicationsListe.size() > 0) {
893
			String idPublicationSeparesParVirgule = "" ;
969
			String idPublicationSeparesParVirgule = "" ;
894
			Iterator<Publication> it = publicationsListe.iterator();
970
			Iterator<Publication> it = publicationsListe.iterator();
895
			while (it.hasNext()) {
971
			while (it.hasNext()) {
896
				idPublicationSeparesParVirgule += it.next().getId();
972
				idPublicationSeparesParVirgule += it.next().getId();
897
				if (it.hasNext()) {
973
				if (it.hasNext()) {
898
					idPublicationSeparesParVirgule += ",";
974
					idPublicationSeparesParVirgule += ",";
899
				}
975
				}
900
			}
976
			}
901
			modele.supprimerPublication(vueARafraichir, idPublicationSeparesParVirgule);
977
			modele.supprimerPublication(vueARafraichir, idPublicationSeparesParVirgule);
902
			modele.supprimerPublicationAPersonne(vueARafraichir, idPublicationSeparesParVirgule);
978
			modele.supprimerPublicationAPersonne(vueARafraichir, idPublicationSeparesParVirgule);
903
		}
979
		}
904
	}
980
	}
905
 
981
 
906
	public void clicObtenirListeEditeurs(Rafraichissable vueARafraichir) {
982
	public void clicObtenirListeEditeurs(Rafraichissable vueARafraichir) {
907
		selectionnerStructureParProjet(vueARafraichir, null);
983
		selectionnerStructureParProjet(vueARafraichir, null);
908
	}
984
	}
909
 
985
 
910
	public void clicObtenirListeAuteurs(Rafraichissable vueARafraichir) {
986
	public void clicObtenirListeAuteurs(Rafraichissable vueARafraichir) {
911
		selectionnerPersonneParProjet(vueARafraichir, null);
987
		selectionnerPersonneParProjet(vueARafraichir, null);
912
	}
988
	}
913
	
989
	
914
	//+----------------------------------------------------------------------------------------------------------------+
990
	//+----------------------------------------------------------------------------------------------------------------+
915
	// GESTION de la relation PUBLICATION A PERSONNE
991
	// GESTION de la relation PUBLICATION A PERSONNE
916
 
992
 
917
	public void selectionnerPublicationAPersonne(Rafraichissable vueARafraichir, String publicationId, String personnesId, String roleId) {
993
	public void selectionnerPublicationAPersonne(Rafraichissable vueARafraichir, String publicationId, String personnesId, String roleId) {
918
		modele.selectionPublicationAPersonne(vueARafraichir, publicationId, personnesId, roleId);
994
		modele.selectionPublicationAPersonne(vueARafraichir, publicationId, personnesId, roleId);
919
	}
995
	}
920
	
996
	
921
	public void ajouterPublicationAPersonne(Rafraichissable vueARafraichir, String publicationId, PublicationAPersonneListe personnesAjoutees, String roleId) {
997
	public void ajouterPublicationAPersonne(Rafraichissable vueARafraichir, String publicationId, PublicationAPersonneListe personnesAjoutees, String roleId) {
922
		if (personnesAjoutees != null && personnesAjoutees.size() > 0) {
998
		if (personnesAjoutees != null && personnesAjoutees.size() > 0) {
923
			String idPublicationAPersonneSepareParVirgule = "" ;
999
			String idPublicationAPersonneSepareParVirgule = "" ;
924
			for (Iterator<String> it = personnesAjoutees.keySet().iterator(); it.hasNext();) {
1000
			for (Iterator<String> it = personnesAjoutees.keySet().iterator(); it.hasNext();) {
925
				idPublicationAPersonneSepareParVirgule += personnesAjoutees.get(it.next()).getIdPersonne();
1001
				idPublicationAPersonneSepareParVirgule += personnesAjoutees.get(it.next()).getIdPersonne();
926
				if (it.hasNext()) {
1002
				if (it.hasNext()) {
927
					idPublicationAPersonneSepareParVirgule += ",";
1003
					idPublicationAPersonneSepareParVirgule += ",";
928
				}
1004
				}
929
			}
1005
			}
930
			modele.ajouterPublicationAPersonne(vueARafraichir, publicationId, idPublicationAPersonneSepareParVirgule, roleId);
1006
			modele.ajouterPublicationAPersonne(vueARafraichir, publicationId, idPublicationAPersonneSepareParVirgule, roleId);
931
		}
1007
		}
932
	}
1008
	}
933
	
1009
	
934
	public void supprimerPublicationAPersonne(Rafraichissable vueARafraichir, PublicationAPersonneListe personnesSupprimees) {
1010
	public void supprimerPublicationAPersonne(Rafraichissable vueARafraichir, PublicationAPersonneListe personnesSupprimees) {
935
		if (personnesSupprimees != null && personnesSupprimees.size() > 0) {
1011
		if (personnesSupprimees != null && personnesSupprimees.size() > 0) {
936
			String idPublicationAPersonneSepareParVirgule = "" ;
1012
			String idPublicationAPersonneSepareParVirgule = "" ;
937
			for (Iterator<String> it = personnesSupprimees.keySet().iterator(); it.hasNext();) {
1013
			for (Iterator<String> it = personnesSupprimees.keySet().iterator(); it.hasNext();) {
938
				idPublicationAPersonneSepareParVirgule += personnesSupprimees.get(it.next()).getId();
1014
				idPublicationAPersonneSepareParVirgule += personnesSupprimees.get(it.next()).getId();
939
				if (it.hasNext()) {
1015
				if (it.hasNext()) {
940
					idPublicationAPersonneSepareParVirgule += ",";
1016
					idPublicationAPersonneSepareParVirgule += ",";
941
				}
1017
				}
942
			}
1018
			}
943
			supprimerPublicationAPersonne(vueARafraichir, idPublicationAPersonneSepareParVirgule);
1019
			supprimerPublicationAPersonne(vueARafraichir, idPublicationAPersonneSepareParVirgule);
944
		}
1020
		}
945
	}
1021
	}
946
	
1022
	
947
	public void supprimerPublicationAPersonne(Rafraichissable vueARafraichir, String idPublicationSeparesParVirgule) {
1023
	public void supprimerPublicationAPersonne(Rafraichissable vueARafraichir, String idPublicationSeparesParVirgule) {
948
		modele.supprimerPublicationAPersonne(vueARafraichir, idPublicationSeparesParVirgule);
1024
		modele.supprimerPublicationAPersonne(vueARafraichir, idPublicationSeparesParVirgule);
949
	}
1025
	}
950
	
1026
	
951
	//+----------------------------------------------------------------------------------------------------------------+
1027
	//+----------------------------------------------------------------------------------------------------------------+
952
	//												RAFRAICHISSEMENT
1028
	//												RAFRAICHISSEMENT
953
	//+----------------------------------------------------------------------------------------------------------------+
1029
	//+----------------------------------------------------------------------------------------------------------------+
954
	
1030
	
955
	public void rafraichir(Object nouvellesDonnees) {
1031
	public void rafraichir(Object nouvellesDonnees) {
956
		if (nouvellesDonnees instanceof Utilisateur) {
1032
		if (nouvellesDonnees instanceof Utilisateur) {
957
			mettreAJourEtatIdentification((Utilisateur) nouvellesDonnees);
1033
			mettreAJourEtatIdentification((Utilisateur) nouvellesDonnees);
958
		} else	{
1034
		} else	{
959
			GWT.log(i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()), null);
1035
			GWT.log(i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()), null);
960
		}
1036
		}
961
	}
1037
	}
962
	
1038
	
963
	//+----------------------------------------------------------------------------------------------------------------+
1039
	//+----------------------------------------------------------------------------------------------------------------+
964
	//												GESTION du STATUT
1040
	//												GESTION du STATUT
965
	//+----------------------------------------------------------------------------------------------------------------+
1041
	//+----------------------------------------------------------------------------------------------------------------+
966
	
1042
	
967
	public void afficherPopinChargement()	{
1043
	public void afficherPopinChargement()	{
968
		((PopupChargement) Registry.get(RegistreId.POPUP_CHARGEMENT)).center();
1044
		((PopupChargement) Registry.get(RegistreId.POPUP_CHARGEMENT)).center();
969
	}
1045
	}
970
		
1046
		
971
	public void masquerPopinChargement()	{		
1047
	public void masquerPopinChargement()	{		
972
		((PopupChargement) Registry.get(RegistreId.POPUP_CHARGEMENT)).hide();
1048
		((PopupChargement) Registry.get(RegistreId.POPUP_CHARGEMENT)).hide();
973
	}
1049
	}
974
	
-
 
975
	public void afficherFormProjet(String projetId) {
-
 
976
		panneauCentre.removeAll();
-
 
977
		ProjetForm projetForm = new ProjetForm(this, projetId);
-
 
978
		panneauCentre.add(projetForm);
-
 
979
		
-
 
980
		panneauCentre.layout();
-
 
981
	}
-
 
982
	
-
 
983
	public void afficherListeProjets(ProjetListe projetsACharger)	{
-
 
984
		if (!(panneauCentre.getContenu() instanceof ProjetVue))	{
-
 
985
			panneauCentre.removeAll();
-
 
986
			panneauCentre.add(new ProjetVue(this));
-
 
987
			panneauCentre.setId(ComposantId.PANNEAU_PROJET_LISTE);
-
 
988
			panneauCentre.layout();
-
 
989
		}	
-
 
990
		
-
 
991
		panneauCentre.getContenu().rafraichir(projetsACharger);
-
 
992
	}
-
 
993
 
-
 
994
	
-
 
995
	//+----------------------------------------------------------------------------------------------------------------+
-
 
996
	//												GESTION des projets
-
 
997
	//+----------------------------------------------------------------------------------------------------------------+
-
 
998
	public void clicListeProjet(Projet projet) {
-
 
999
		panneauCentre.getContenu().rafraichir(projet);
-
 
1000
	}
-
 
1001
 
-
 
1002
	public void clicSupprimerProjet(final List<Projet> projetListe) {
-
 
1003
		if (projetListe.size() <= 0) {
-
 
1004
			MessageBox.alert("Attention", "Vous devez sélectionner un projet", null); 
-
 
1005
		} else {
-
 
1006
			String message = "Voulez-vous vraiment supprimer ces projets ?";
-
 
1007
			if (projetListe.size() == 1) {
-
 
1008
				message = "Voulez-vous vraiment supprimer ce projet ?";
-
 
1009
			}
-
 
1010
			
-
 
1011
			final Listener<MessageBoxEvent> listenerSuppression = new Listener<MessageBoxEvent>() { 
-
 
1012
				public void handleEvent(MessageBoxEvent ce) {  
-
 
1013
					Dialog dialog = (Dialog) ce.getComponent();
-
 
1014
				    Button btn = ce.getButtonClicked();  
-
 
1015
				    	   
-
 
1016
				    if (btn.getText().equals(dialog.yesText)) {
-
 
1017
				    	modele.supprimerProjet(panneauCentre.getContenu(), projetListe);  
-
 
1018
				    }
-
 
1019
				}
-
 
1020
			};
-
 
1021
				     
-
 
1022
			MessageBox.confirm("Supprimer un projet", message, listenerSuppression);
-
 
1023
		}
-
 
1024
		
-
 
1025
	}
-
 
1026
 
-
 
1027
	public void clicModifierProjet(List<Projet> projetsSelectionnes) {
-
 
1028
		if (projetsSelectionnes.size() == 0) {
-
 
1029
			Info.display("Information", "Veuillez sélectionner un projet.");
-
 
1030
		} else if (projetsSelectionnes.size() > 1) {
-
 
1031
			Info.display("Information", "Veuillez sélectionner un seul projet à la fois.");
-
 
1032
		} else if (projetsSelectionnes.size() == 1) {
-
 
1033
			afficherFormProjet(projetsSelectionnes.get(0).getId());
-
 
1034
		} else {
-
 
1035
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicModifierProjet() du Médiateur.");
-
 
1036
		}
-
 
1037
	}
-
 
1038
 
-
 
1039
	public void clicAjouterProjet() {
-
 
1040
		afficherFormProjet(null);
-
 
1041
	}
-
 
1042
 
-
 
1043
	public void selectionnerProjet(Rafraichissable vueARafraichir, String projetId) {
-
 
1044
		modele.selectionnerProjet(vueARafraichir, projetId);
-
 
1045
	}
-
 
1046
 
-
 
1047
	public void ajouterProjet(Rafraichissable vueARafraichir, Projet projetCollecte) {
-
 
1048
		modele.ajouterProjet(vueARafraichir, projetCollecte);
-
 
1049
	}
-
 
1050
 
-
 
1051
	public void modifierProjet(Rafraichissable vueARafraichir, Projet projetCollecte) {
-
 
1052
		modele.modifierProjet(vueARafraichir, projetCollecte);	
-
 
1053
	}
-
 
1054
 
1050
 
1055
}
1051
}