Subversion Repositories eFlore/Applications.coel

Rev

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

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