Subversion Repositories eFlore/Applications.coel

Rev

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

Rev 332 Rev 345
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.interfaces.Rafraichissable;
9
import org.tela_botanica.client.interfaces.Rafraichissable;
10
import org.tela_botanica.client.modeles.Configuration;
10
import org.tela_botanica.client.modeles.Configuration;
11
import org.tela_botanica.client.modeles.Information;
11
import org.tela_botanica.client.modeles.Information;
12
import org.tela_botanica.client.modeles.Menu;
-
 
13
import org.tela_botanica.client.modeles.MenuApplicationId;
12
import org.tela_botanica.client.modeles.MenuApplicationId;
14
import org.tela_botanica.client.modeles.Personne;
13
import org.tela_botanica.client.modeles.Personne;
15
import org.tela_botanica.client.modeles.PersonneListe;
14
import org.tela_botanica.client.modeles.PersonneListe;
16
import org.tela_botanica.client.modeles.Projet;
15
import org.tela_botanica.client.modeles.Projet;
17
import org.tela_botanica.client.modeles.ProjetListe;
16
import org.tela_botanica.client.modeles.ProjetListe;
18
import org.tela_botanica.client.modeles.Publication;
17
import org.tela_botanica.client.modeles.Publication;
19
import org.tela_botanica.client.modeles.PublicationListe;
18
import org.tela_botanica.client.modeles.PublicationListe;
20
import org.tela_botanica.client.modeles.Structure;
19
import org.tela_botanica.client.modeles.Structure;
21
import org.tela_botanica.client.modeles.StructureAPersonne;
20
import org.tela_botanica.client.modeles.StructureAPersonne;
22
import org.tela_botanica.client.modeles.StructureAPersonneListe;
21
import org.tela_botanica.client.modeles.StructureAPersonneListe;
23
import org.tela_botanica.client.modeles.StructureConservation;
22
import org.tela_botanica.client.modeles.StructureConservation;
24
import org.tela_botanica.client.modeles.StructureListe;
23
import org.tela_botanica.client.modeles.StructureListe;
25
import org.tela_botanica.client.modeles.StructureValorisation;
24
import org.tela_botanica.client.modeles.StructureValorisation;
26
import org.tela_botanica.client.modeles.Utilisateur;
25
import org.tela_botanica.client.modeles.Utilisateur;
27
import org.tela_botanica.client.modeles.ValeurListe;
26
import org.tela_botanica.client.modeles.ValeurListe;
28
import org.tela_botanica.client.vues.ContenuPanneauVue;
27
import org.tela_botanica.client.vues.ContenuPanneauVue;
29
import org.tela_botanica.client.vues.EntetePanneauVue;
28
import org.tela_botanica.client.vues.EntetePanneauVue;
30
import org.tela_botanica.client.vues.FormPersonneVue;
29
import org.tela_botanica.client.vues.FormPersonneVue;
31
import org.tela_botanica.client.vues.FormPublicationVue;
30
import org.tela_botanica.client.vues.FormPublicationVue;
32
import org.tela_botanica.client.vues.FormStructureVue;
31
import org.tela_botanica.client.vues.FormStructureVue;
33
import org.tela_botanica.client.vues.PersonneDetailPanneauVue;
32
import org.tela_botanica.client.vues.PersonneDetailPanneauVue;
34
import org.tela_botanica.client.vues.PersonneVue;
33
import org.tela_botanica.client.vues.PersonneVue;
35
import org.tela_botanica.client.vues.PopupChargement;
34
import org.tela_botanica.client.vues.PopupChargement;
36
import org.tela_botanica.client.vues.PublicationDetailPanneauVue;
35
import org.tela_botanica.client.vues.PublicationDetailPanneauVue;
37
import org.tela_botanica.client.vues.PublicationVue;
36
import org.tela_botanica.client.vues.PublicationVue;
38
import org.tela_botanica.client.vues.StructureDetailPanneauVue;
37
import org.tela_botanica.client.vues.StructureDetailPanneauVue;
39
import org.tela_botanica.client.vues.StructureVue;
38
import org.tela_botanica.client.vues.StructureVue;
40
import org.tela_botanica.client.vues.MenuPanneauVue;
39
import org.tela_botanica.client.vues.MenuPanneauVue;
41
 
40
 
42
import com.extjs.gxt.ui.client.Registry;
41
import com.extjs.gxt.ui.client.Registry;
43
import com.extjs.gxt.ui.client.Style.LayoutRegion;
42
import com.extjs.gxt.ui.client.Style.LayoutRegion;
44
import com.extjs.gxt.ui.client.event.ComponentEvent;
43
import com.extjs.gxt.ui.client.event.ComponentEvent;
45
import com.extjs.gxt.ui.client.event.Listener;
44
import com.extjs.gxt.ui.client.event.Listener;
46
import com.extjs.gxt.ui.client.util.Margins;
45
import com.extjs.gxt.ui.client.util.Margins;
47
import com.extjs.gxt.ui.client.widget.Dialog;
46
import com.extjs.gxt.ui.client.widget.Dialog;
48
import com.extjs.gxt.ui.client.widget.Info;
47
import com.extjs.gxt.ui.client.widget.Info;
49
import com.extjs.gxt.ui.client.widget.MessageBox;
48
import com.extjs.gxt.ui.client.widget.MessageBox;
50
import com.extjs.gxt.ui.client.widget.Viewport;
49
import com.extjs.gxt.ui.client.widget.Viewport;
51
import com.extjs.gxt.ui.client.widget.button.Button;
50
import com.extjs.gxt.ui.client.widget.button.Button;
52
import com.extjs.gxt.ui.client.widget.layout.BorderLayout;
51
import com.extjs.gxt.ui.client.widget.layout.BorderLayout;
53
import com.extjs.gxt.ui.client.widget.layout.BorderLayoutData;
52
import com.extjs.gxt.ui.client.widget.layout.BorderLayoutData;
54
import com.google.gwt.core.client.GWT;
53
import com.google.gwt.core.client.GWT;
55
import com.google.gwt.user.client.Window;
54
import com.google.gwt.user.client.Window;
56
import com.google.gwt.user.client.ui.RootPanel;
55
import com.google.gwt.user.client.ui.RootPanel;
57
 
56
 
58
public class Mediateur implements Rafraichissable {
57
public class Mediateur implements Rafraichissable {
59
	
58
	
60
	private Modele modele = null;
59
	private Modele modele = null;
61
	
60
	
62
	private Viewport viewport;
61
	private Viewport viewport;
63
	private EntetePanneauVue panneauNord = null;
62
	private EntetePanneauVue panneauNord = null;
64
	private MenuPanneauVue panneauOuest = null;
63
	private MenuPanneauVue panneauOuest = null;
65
	private ContenuPanneauVue panneauCentre = null;
64
	private ContenuPanneauVue panneauCentre = null;
66
	private Rafraichissable contenuPanneauCentre = null;
65
	private Rafraichissable contenuPanneauCentre = null;
67
	
66
	
68
	public Mediateur() {
67
	public Mediateur() {
69
		// Enregistrement du Médiateur dans le Registre
68
		// Enregistrement du Médiateur dans le Registre
70
		Registry.register(RegistreId.MEDIATEUR, this);
69
		Registry.register(RegistreId.MEDIATEUR, this);
71
		// Création du Modèle qui s'enregistre lui même dans le Registre
70
		// Création du Modèle qui s'enregistre lui même dans le Registre
72
		modele = new Modele();
71
		modele = new Modele();
73
	    // Création de l'utilisateur courrant
72
	    // Création de l'utilisateur courrant
74
		Registry.register(RegistreId.UTILISATEUR_COURANT, new Utilisateur(null, false));
73
		Registry.register(RegistreId.UTILISATEUR_COURANT, new Utilisateur(null, false));
75
		this.connecterUtilisateur(null, null);
74
		this.connecterUtilisateur(null, null);
76
	    // Création du projet courrant
75
	    // Création du projet courrant
77
		Registry.register(RegistreId.PROJET_COURANT, new Projet());
76
		Registry.register(RegistreId.PROJET_COURANT, new Projet());
78
		
77
		
79
		// Création du Viewport qui contient la disposition globale de l'application
78
		// Création du Viewport qui contient la disposition globale de l'application
80
		viewport = new Viewport();
79
		viewport = new Viewport();
81
		viewport.setLayout(new BorderLayout());
80
		viewport.setLayout(new BorderLayout());
82
		
81
		
83
		// Création des différents panneaux
82
		// Création des différents panneaux
84
	    creerPanneauNord();
83
	    creerPanneauNord();
85
	    creerPanneauOuest();
84
	    creerPanneauOuest();
86
	    creerPanneauCentral();
85
	    creerPanneauCentral();
87
 
86
 
88
		// Registry utile car présent partout!
87
		// Registry utile car présent partout!
89
		Registry.register(RegistreId.VIEWPORT, viewport);
88
		Registry.register(RegistreId.VIEWPORT, viewport);
90
		Registry.register(RegistreId.PANNEAU_OUEST, panneauOuest);
89
		Registry.register(RegistreId.PANNEAU_OUEST, panneauOuest);
91
		Registry.register(RegistreId.PANNEAU_CENTRE, panneauCentre);
90
		Registry.register(RegistreId.PANNEAU_CENTRE, panneauCentre);
92
 
91
 
93
		// Chargement du menu
92
		// Chargement du menu
94
		chargeMenuApplication();
93
		chargeMenuApplication();
95
		
94
		
96
		// Retour à GWT du Viewport une fois constuit
95
		// Retour à GWT du Viewport une fois constuit
97
		RootPanel.get().add(viewport);
96
		RootPanel.get().add(viewport);
98
		
97
		
99
		masquerPopinChargement(); 
98
		masquerPopinChargement(); 
100
	}
99
	}
101
	
100
	
102
	//+----------------------------------------------------------------------------------------------------------------+
101
	//+----------------------------------------------------------------------------------------------------------------+
103
	//												GESTION des PANNEAUX PRINCIPAUX
102
	//												GESTION des PANNEAUX PRINCIPAUX
104
	//+----------------------------------------------------------------------------------------------------------------+
103
	//+----------------------------------------------------------------------------------------------------------------+
105
	
104
	
106
	private void creerPanneauNord() {
105
	private void creerPanneauNord() {
107
		panneauNord = new EntetePanneauVue(); 
106
		panneauNord = new EntetePanneauVue(); 
108
		
107
		
109
		BorderLayoutData regionNord = new BorderLayoutData(LayoutRegion.NORTH, 100);  
108
		BorderLayoutData regionNord = new BorderLayoutData(LayoutRegion.NORTH, 100);  
110
		regionNord.setCollapsible(true);
109
		regionNord.setCollapsible(true);
111
		regionNord.setFloatable(true);
110
		regionNord.setFloatable(true);
112
		regionNord.setSplit(false);
111
		regionNord.setSplit(false);
113
		regionNord.setMargins(new Margins(5, 5, 0, 5));
112
		regionNord.setMargins(new Margins(5, 5, 0, 5));
114
		
113
		
115
		viewport.add(panneauNord, regionNord);
114
		viewport.add(panneauNord, regionNord);
116
	}
115
	}
117
	
116
	
118
	private void creerPanneauOuest() {
117
	private void creerPanneauOuest() {
119
		panneauOuest = new MenuPanneauVue(); 
118
		panneauOuest = new MenuPanneauVue(); 
120
		
119
		
121
		BorderLayoutData regionOuest = new BorderLayoutData(LayoutRegion.WEST, 200);  
120
		BorderLayoutData regionOuest = new BorderLayoutData(LayoutRegion.WEST, 200);  
122
		regionOuest.setSplit(true);
121
		regionOuest.setSplit(true);
123
		regionOuest.setCollapsible(true);  
122
		regionOuest.setCollapsible(true);  
124
		regionOuest.setMargins(new Margins(5));
123
		regionOuest.setMargins(new Margins(5));
125
 
124
 
126
		viewport.add(panneauOuest, regionOuest);
125
		viewport.add(panneauOuest, regionOuest);
127
	}
126
	}
128
 
127
 
129
	private void creerPanneauCentral() {
128
	private void creerPanneauCentral() {
130
		panneauCentre = new ContenuPanneauVue();
129
		panneauCentre = new ContenuPanneauVue();
131
 
130
 
132
		BorderLayoutData regionCentre = new BorderLayoutData(LayoutRegion.CENTER);  
131
		BorderLayoutData regionCentre = new BorderLayoutData(LayoutRegion.CENTER);  
133
		regionCentre.setMargins(new Margins(5, 5, 5, 0));
132
		regionCentre.setMargins(new Margins(5, 5, 5, 0));
134
 
133
 
135
		viewport.add(panneauCentre, regionCentre);
134
		viewport.add(panneauCentre, regionCentre);
136
	}
135
	}
137
 
136
 
138
	//+----------------------------------------------------------------------------------------------------------------+
137
	//+----------------------------------------------------------------------------------------------------------------+
139
	//												GESTION du MENU
138
	//												GESTION du MENU
140
	//+----------------------------------------------------------------------------------------------------------------+
139
	//+----------------------------------------------------------------------------------------------------------------+
141
	
140
	
142
	public void chargeMenuApplication() {
141
	public void chargeMenuApplication() {
143
		((MenuPanneauVue) Registry.get(RegistreId.PANNEAU_OUEST)).chargerMenus();		
142
		((MenuPanneauVue) Registry.get(RegistreId.PANNEAU_OUEST)).chargerMenus();		
144
	}
143
	}
145
 
144
 
146
	public void clicMenu(String codeMenuClique) {
145
	public void clicMenu(String codeMenuClique) {
147
		
146
		
148
		afficherPopinChargement(); 
147
		afficherPopinChargement(); 
149
		
148
		
150
		panneauCentre.removeAll();
149
		panneauCentre.removeAll();
151
		if (codeMenuClique.equals(MenuApplicationId.STRUCTURE)) {
150
		if (codeMenuClique.equals(MenuApplicationId.STRUCTURE)) {
152
			modele.selectionnerStructure(panneauCentre, getProjetId(), null);
151
			modele.selectionnerStructure(panneauCentre, getProjetId(), null);
153
		} else if (codeMenuClique.equals(MenuApplicationId.PUBLICATION)) {
152
		} else if (codeMenuClique.equals(MenuApplicationId.PUBLICATION)) {
154
			modele.selectionnerPublications(panneauCentre);
153
			modele.selectionnerPublications(panneauCentre);
155
		} else if (codeMenuClique.equals(MenuApplicationId.PERSONNE)) { 
154
		} else if (codeMenuClique.equals(MenuApplicationId.PERSONNE)) { 
156
			modele.selectionnerPersonne(panneauCentre, null, getProjetId(), null);
155
			modele.selectionnerPersonne(panneauCentre, null, getProjetId(), null);
157
		}
156
		}
158
		else {
157
		else {
159
			GWT.log("Non implémenté! Menu id : "+codeMenuClique, null);
158
			GWT.log("Non implémenté! Menu id : "+codeMenuClique, null);
160
		}
159
		}
161
		panneauCentre.layout();
160
		panneauCentre.layout();
162
	}
161
	}
163
	
162
	
164
	//+----------------------------------------------------------------------------------------------------------------+
163
	//+----------------------------------------------------------------------------------------------------------------+
165
	//												GESTION DES FENÊTRES
164
	//												GESTION DES FENÊTRES
166
	//+----------------------------------------------------------------------------------------------------------------+
165
	//+----------------------------------------------------------------------------------------------------------------+
167
 
166
 
168
	public void ouvrirAide() {
167
	public void ouvrirAide() {
169
		AideFenetre aideFenetre = new AideFenetre();
168
		AideFenetre aideFenetre = new AideFenetre();
170
		aideFenetre.show();
169
		aideFenetre.show();
171
		// FIXME : apparament le fade In/Fade Out pose problème sur les navigateurs...
170
		// FIXME : apparament le fade In/Fade Out pose problème sur les navigateurs...
172
		//aideFenetre.el().fadeIn(FxConfig.NONE);
171
		//aideFenetre.el().fadeIn(FxConfig.NONE);
173
	}
172
	}
174
 
173
 
175
	public void ouvrirParametres() {
174
	public void ouvrirParametres() {
176
		ParametreFenetre parametresFenetre = new ParametreFenetre();
175
		ParametreFenetre parametresFenetre = new ParametreFenetre();
177
		parametresFenetre.show();
176
		parametresFenetre.show();
178
	}
177
	}
179
 
178
 
180
	public void ouvrirIdentification() {
179
	public void ouvrirIdentification() {
181
		IdentificationFenetre identifFenetre = new IdentificationFenetre();
180
		IdentificationFenetre identifFenetre = new IdentificationFenetre();
182
		identifFenetre.show();
181
		identifFenetre.show();
183
	}
182
	}
184
 
183
 
185
	public void ouvrirApplis(String id) {
184
	public void ouvrirApplis(String id) {
186
		if (id.equals(ComposantId.MENU_CEL)) {
185
		if (id.equals(ComposantId.MENU_CEL)) {
187
			Window.open(((Configuration) Registry.get(RegistreId.CONFIG)).getCelUrl(), "Carnet en ligne", "");
186
			Window.open(((Configuration) Registry.get(RegistreId.CONFIG)).getCelUrl(), "Carnet en ligne", "");
188
		} else if (id.equals(ComposantId.MENU_BEL)) {
187
		} else if (id.equals(ComposantId.MENU_BEL)) {
189
			Window.open(((Configuration) Registry.get(RegistreId.CONFIG)).getCelUrl(), "Biblio en ligne", "");
188
			Window.open(((Configuration) Registry.get(RegistreId.CONFIG)).getCelUrl(), "Biblio en ligne", "");
190
		}
189
		}
191
	}
190
	}
192
 
191
 
193
	//+----------------------------------------------------------------------------------------------------------------+
192
	//+----------------------------------------------------------------------------------------------------------------+
194
	//												GESTION de l'UTILISATEUR et de l'IDENTIFICATION
193
	//												GESTION de l'UTILISATEUR et de l'IDENTIFICATION
195
	//+----------------------------------------------------------------------------------------------------------------+
194
	//+----------------------------------------------------------------------------------------------------------------+
196
	/**
195
	/**
197
	 * Retourne l'identifiant de l'utilisateur courrant de l'application.
196
	 * Retourne l'identifiant de l'utilisateur courrant de l'application.
198
	 */
197
	 */
199
	public String getUtilisateurId() {
198
	public String getUtilisateurId() {
200
		String id = null;
199
		String id = null;
201
		Utilisateur utilisateurCourant = (Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT);
200
		Utilisateur utilisateurCourant = (Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT);
202
		if (!utilisateurCourant.getId().equals("")) {
201
		if (!utilisateurCourant.getId().equals("")) {
203
			id = utilisateurCourant.getId();
202
			id = utilisateurCourant.getId();
204
		}
203
		}
205
		return id;
204
		return id;
206
	}
205
	}
207
	
206
	
208
	public void clicIdentification() {
207
	public void clicIdentification() {
209
		// Gestion du login
208
		// Gestion du login
210
		IdentificationFenetre dialog = new IdentificationFenetre();
209
		IdentificationFenetre dialog = new IdentificationFenetre();
211
	    dialog.setClosable(false);
210
	    dialog.setClosable(false);
212
	    dialog.show();
211
	    dialog.show();
213
	}
212
	}
214
	
213
	
215
	public void connecterUtilisateur(String login, String mdp) {
214
	public void connecterUtilisateur(String login, String mdp) {
216
		modele.connecterUtilisateur(this, login, mdp);
215
		modele.connecterUtilisateur(this, login, mdp);
217
	}
216
	}
218
	
217
	
219
	public void deconnecterUtilisateur() {
218
	public void deconnecterUtilisateur() {
220
		modele.deconnecterUtilisateur(this);
219
		modele.deconnecterUtilisateur(this);
221
	}
220
	}
222
	
221
	
223
	public void mettreAJourEtatIdentification(Utilisateur utilisateur) {
222
	public void mettreAJourEtatIdentification(Utilisateur utilisateur) {
224
		// Mise à jour du registre
223
		// Mise à jour du registre
225
		Registry.register(RegistreId.UTILISATEUR_COURANT, utilisateur);
224
		Registry.register(RegistreId.UTILISATEUR_COURANT, utilisateur);
226
		
225
		
227
		// Création de l'information de mise à jour de l'utilisateur
226
		// Création de l'information de mise à jour de l'utilisateur
228
		Information info = new Information("maj_utilisateur");
227
		Information info = new Information("maj_utilisateur");
229
		
228
		
230
		// Rafraichissement du panneau Nord
229
		// Rafraichissement du panneau Nord
231
		panneauNord.rafraichir(info);
230
		panneauNord.rafraichir(info);
232
 
231
 
233
		// Rafraichissement du panneau Centre
232
		// Rafraichissement du panneau Centre
234
		if (contenuPanneauCentre != null) {
233
		if (contenuPanneauCentre != null) {
235
			contenuPanneauCentre.rafraichir(info);
234
			contenuPanneauCentre.rafraichir(info);
236
		}
235
		}
237
	}
236
	}
238
 
237
 
239
	//+----------------------------------------------------------------------------------------------------------------+
238
	//+----------------------------------------------------------------------------------------------------------------+
240
	//												GESTION DES PERSONNES
239
	//												GESTION DES PERSONNES
241
	//+----------------------------------------------------------------------------------------------------------------+
240
	//+----------------------------------------------------------------------------------------------------------------+
242
 
241
 
243
	public void clicListePersonne(Personne personne)	{
242
	public void clicListePersonne(Personne personne)	{
244
		((PersonneDetailPanneauVue) Registry.get(RegistreId.PANNEAU_PERSONNE_DETAIL)).rafraichir(personne);
243
		((PersonneDetailPanneauVue) Registry.get(RegistreId.PANNEAU_PERSONNE_DETAIL)).rafraichir(personne);
245
		
244
		
246
	}
245
	}
247
 
246
 
248
	public void afficherListePersonnes(PersonneListe personnesACharger)	{
247
	public void afficherListePersonnes(PersonneListe personnesACharger)	{
249
		if ( !(contenuPanneauCentre instanceof PersonneVue) ) {
248
		if ( !(contenuPanneauCentre instanceof PersonneVue) ) {
250
			PersonneVue personneVue = new PersonneVue();
249
			PersonneVue personneVue = new PersonneVue();
251
			contenuPanneauCentre = personneVue;
250
			contenuPanneauCentre = personneVue;
252
			panneauCentre.add(personneVue);
251
			panneauCentre.add(personneVue);
253
		}
252
		}
254
		contenuPanneauCentre.rafraichir(personnesACharger);
253
		contenuPanneauCentre.rafraichir(personnesACharger);
255
		//contenuPanneauCentre.layout();
254
		//contenuPanneauCentre.layout();
256
	}
255
	}
257
 
256
 
258
	public void clicAjouterPersonne()	{
257
	public void clicAjouterPersonne()	{
259
		
258
		
260
		afficherPopinChargement();
259
		afficherPopinChargement();
261
		 
260
		 
262
		panneauCentre.removeAll();
261
		panneauCentre.removeAll();
263
		FormPersonneVue formulairePersonneVue = new FormPersonneVue();
262
		FormPersonneVue formulairePersonneVue = new FormPersonneVue();
264
		contenuPanneauCentre = formulairePersonneVue;
263
		contenuPanneauCentre = formulairePersonneVue;
265
		panneauCentre.add(formulairePersonneVue);
264
		panneauCentre.add(formulairePersonneVue);
266
		panneauCentre.layout();
265
		panneauCentre.layout();
267
	}
266
	}
268
	
267
	
269
	public void clicModifierPersonne(Personne personne)	{
268
	public void clicModifierPersonne(Personne personne)	{
270
		if (personne!=null)	{
269
		if (personne!=null)	{
271
			panneauCentre.removeAll();
270
			panneauCentre.removeAll();
272
			FormPersonneVue formulairePersonneVue = new FormPersonneVue();
271
			FormPersonneVue formulairePersonneVue = new FormPersonneVue();
273
			contenuPanneauCentre = formulairePersonneVue;
272
			contenuPanneauCentre = formulairePersonneVue;
274
			panneauCentre.add(formulairePersonneVue);
273
			panneauCentre.add(formulairePersonneVue);
275
			formulairePersonneVue.rafraichir(personne);
274
			formulairePersonneVue.rafraichir(personne);
276
			panneauCentre.layout();	
275
			panneauCentre.layout();	
277
		}
276
		}
278
	}
277
	}
279
	
278
	
280
	
279
	
281
	public void clicSupprimerPersonne(final Rafraichissable vue,final List<Personne> personneSelection) {
280
	public void clicSupprimerPersonne(final Rafraichissable vue,final List<Personne> personneSelection) {
282
		
281
		
283
		String ids = "" ;
282
		String ids = "" ;
284
		
283
		
285
		if (personneSelection.size() == 0) {
284
		if (personneSelection.size() == 0) {
286
			Info.display("Information", "Veuillez sélectionner une personne.");
285
			Info.display("Information", "Veuillez sélectionner une personne.");
287
		} else if(personneSelection.size() > 0) {
286
		} else if(personneSelection.size() > 0) {
288
			String message = "Êtes vous sur de vouloir supprimer les personnes sélectionnées ?";
287
			String message = "Êtes vous sur de vouloir supprimer les personnes sélectionnées ?";
289
			if (personneSelection.size() == 1) {
288
			if (personneSelection.size() == 1) {
290
				message = "Êtes vous sur de vouloir supprimer la personne sélectionnée ?";
289
				message = "Êtes vous sur de vouloir supprimer la personne sélectionnée ?";
291
			}
290
			}
292
			
291
			
293
			
292
			
294
			final Listener listenerSuppression = new Listener<ComponentEvent>() { 
293
			final Listener listenerSuppression = new Listener<ComponentEvent>() { 
295
				
294
				
296
				public void handleEvent(ComponentEvent ce) {
295
				public void handleEvent(ComponentEvent ce) {
297
					Dialog dialog = (Dialog) ce.component;
296
					Dialog dialog = (Dialog) ce.component;
298
					Button btn = dialog.getButtonPressed();  
297
					Button btn = dialog.getButtonPressed();  
299
 
298
 
300
					if (btn.getText().equals(dialog.yesText)) {
299
					if (btn.getText().equals(dialog.yesText)) {
301
						String idStr = "" ;
300
						String idStr = "" ;
302
						for(int i = 0 ; i < personneSelection.size() ; i++) {
301
						for(int i = 0 ; i < personneSelection.size() ; i++) {
303
							idStr += personneSelection.get(i).getId()+"," ; 
302
							idStr += personneSelection.get(i).getId()+"," ; 
304
						}
303
						}
305
						modele.supprimerPersonne(vue, idStr);  
304
						modele.supprimerPersonne(vue, idStr);  
306
					}
305
					}
307
				}
306
				}
308
			};
307
			};
309
				     
308
				     
310
			MessageBox.confirm("Supprimer une personne", message, listenerSuppression);
309
			MessageBox.confirm("Supprimer une personne", message, listenerSuppression);
311
			
310
			
312
			
311
			
313
		} else {
312
		} else {
314
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicSupprimerPersonne() du Médiateur.");
313
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicSupprimerPersonne() du Médiateur.");
315
		}
314
		}
316
	}
315
	}
317
 
316
 
318
	public void selectionnerPersonneParNomComplet(Rafraichissable vue, String projetId, String nomComplet) {
317
	public void selectionnerPersonneParNomComplet(Rafraichissable vue, String projetId, String nomComplet) {
319
		modele.selectionnerPersonne(vue, null, projetId, nomComplet);
318
		modele.selectionnerPersonne(vue, null, projetId, nomComplet);
320
	}
319
	}
321
	
320
	
322
	//+----------------------------------------------------------------------------------------------------------------+
321
	//+----------------------------------------------------------------------------------------------------------------+
323
	//												GESTION DES VALEURS ET LISTES
322
	//												GESTION DES VALEURS ET LISTES
324
	//+----------------------------------------------------------------------------------------------------------------+
323
	//+----------------------------------------------------------------------------------------------------------------+
325
 
324
 
326
	public void afficherListeValeurs(ValeurListe nouvelleDonnees) {
325
	public void afficherListeValeurs(ValeurListe nouvelleDonnees) {
327
		if (panneauCentre.getId().equals(ComposantId.PANNEAU_STRUCTURE_FORM)) {
326
		if (panneauCentre.getId().equals(ComposantId.PANNEAU_STRUCTURE_FORM)) {
328
			((FormStructureVue) panneauCentre.getItem(0)).rafraichir(nouvelleDonnees);
327
			((FormStructureVue) panneauCentre.getItem(0)).rafraichir(nouvelleDonnees);
329
		} else {
328
		} else {
330
			GWT.log("Aucun panneau trouvé pour afficher la liste de valeur", null);
329
			GWT.log("Aucun panneau trouvé pour afficher la liste de valeur", null);
331
		}
330
		}
332
	}
331
	}
333
 
332
 
334
	//+----------------------------------------------------------------------------------------------------------------+
333
	//+----------------------------------------------------------------------------------------------------------------+
335
	//												GESTION DES PUBLICATIONS
334
	//												GESTION DES PUBLICATIONS
336
	//+----------------------------------------------------------------------------------------------------------------+
335
	//+----------------------------------------------------------------------------------------------------------------+
337
 
336
 
338
	public void afficherListePublication(PublicationListe nouvelleDonnees) {
337
	public void afficherListePublication(PublicationListe nouvelleDonnees) {
339
		PublicationVue publicationVue = new PublicationVue() ;
338
		PublicationVue publicationVue = new PublicationVue() ;
340
		panneauCentre.removeAll();
339
		panneauCentre.removeAll();
341
		panneauCentre.add(publicationVue);
340
		panneauCentre.add(publicationVue);
342
		contenuPanneauCentre = publicationVue;
341
		contenuPanneauCentre = publicationVue;
343
		publicationVue.rafraichir(nouvelleDonnees);
342
		publicationVue.rafraichir(nouvelleDonnees);
344
		
343
		
345
	}
344
	}
346
 
345
 
347
	public void clicListePublication(Publication publication) {
346
	public void clicListePublication(Publication publication) {
348
		
347
		
349
		((PublicationDetailPanneauVue) Registry.get(RegistreId.PANNEAU_PUBLICATION_DETAIL)).rafraichir(publication);	
348
		((PublicationDetailPanneauVue) Registry.get(RegistreId.PANNEAU_PUBLICATION_DETAIL)).rafraichir(publication);	
350
	}
349
	}
351
 
350
 
352
	public void clicAjouterPublication() {
351
	public void clicAjouterPublication() {
353
		panneauCentre.removeAll();
352
		panneauCentre.removeAll();
354
		FormPublicationVue formPublicationVue = new FormPublicationVue();
353
		FormPublicationVue formPublicationVue = new FormPublicationVue();
355
		panneauCentre.add(formPublicationVue);
354
		panneauCentre.add(formPublicationVue);
356
		panneauCentre.setId(ComposantId.PANNEAU_FORM_PUBLICATION);
355
		panneauCentre.setId(ComposantId.PANNEAU_FORM_PUBLICATION);
357
		panneauCentre.layout();
356
		panneauCentre.layout();
358
	}
357
	}
359
	
358
	
360
	public void clicModifierPublication(List<Publication> publicationListe) {
359
	public void clicModifierPublication(List<Publication> publicationListe) {
361
		if(publicationListe.size() <= 0) {
360
		if(publicationListe.size() <= 0) {
362
			MessageBox.alert("Attention", "Vous devez sélectionner une publication", null);
361
			MessageBox.alert("Attention", "Vous devez sélectionner une publication", null);
363
		}
362
		}
364
		else {
363
		else {
365
			Publication pubAModifier = publicationListe.get(publicationListe.size() -1);
364
			Publication pubAModifier = publicationListe.get(publicationListe.size() -1);
366
			panneauCentre.removeAll();
365
			panneauCentre.removeAll();
367
			FormPublicationVue formPublicationVue = new FormPublicationVue();
366
			FormPublicationVue formPublicationVue = new FormPublicationVue();
368
			panneauCentre.add(formPublicationVue);
367
			panneauCentre.add(formPublicationVue);
369
			panneauCentre.setId(ComposantId.PANNEAU_FORM_PUBLICATION);
368
			panneauCentre.setId(ComposantId.PANNEAU_FORM_PUBLICATION);
370
			panneauCentre.layout();
369
			panneauCentre.layout();
371
			formPublicationVue.rafraichir(pubAModifier);
370
			formPublicationVue.rafraichir(pubAModifier);
372
		}
371
		}
373
		
372
		
374
	}
373
	}
375
	
374
	
376
	
375
	
377
	public void clicSupprimerPublication(final List<Publication> publicationListe) {
376
	public void clicSupprimerPublication(final List<Publication> publicationListe) {
378
		if(publicationListe.size() <= 0) {
377
		if(publicationListe.size() <= 0) {
379
			MessageBox.alert("Attention", "Vous devez sélectionner une publication", null); 
378
			MessageBox.alert("Attention", "Vous devez sélectionner une publication", null); 
380
		}
379
		}
381
		else {
380
		else {
382
			String message = "" ;
381
			String message = "" ;
383
			if(publicationListe.size() == 1) {
382
			if(publicationListe.size() == 1) {
384
				message = "Voulez-vous vraiment supprimer cette publication ?";
383
				message = "Voulez-vous vraiment supprimer cette publication ?";
385
			}
384
			}
386
			else {
385
			else {
387
				message = "Voulez-vous vraiment supprimer ces publication ?";
386
				message = "Voulez-vous vraiment supprimer ces publication ?";
388
			}
387
			}
389
			
388
			
390
			
389
			
391
			final Listener listenerSuppression = new Listener<ComponentEvent>() { 
390
			final Listener listenerSuppression = new Listener<ComponentEvent>() { 
392
				public void handleEvent(ComponentEvent ce) {  
391
				public void handleEvent(ComponentEvent ce) {  
393
				    	   
392
				    	   
394
					Dialog dialog = (Dialog) ce.component;
393
					Dialog dialog = (Dialog) ce.component;
395
				    Button btn = dialog.getButtonPressed();  
394
				    Button btn = dialog.getButtonPressed();  
396
				    	   
395
				    	   
397
				    if (btn.getText().equals(dialog.yesText))	{
396
				    if (btn.getText().equals(dialog.yesText))	{
398
				    	modele.supprimerPublication(contenuPanneauCentre, getUtilisateurId(),publicationListe);  
397
				    	modele.supprimerPublication(contenuPanneauCentre, getUtilisateurId(),publicationListe);  
399
				    }
398
				    }
400
				}
399
				}
401
			};
400
			};
402
				     
401
				     
403
			MessageBox.confirm("Supprimer une publication", message, listenerSuppression);
402
			MessageBox.confirm("Supprimer une publication", message, listenerSuppression);
404
		}
403
		}
405
		
404
		
406
	}
405
	}
407
 
406
 
408
	public void ajouterPublication(FormPublicationVue formPublicationVue, Publication publi) {
407
	public void ajouterPublication(FormPublicationVue formPublicationVue, Publication publi) {
409
		modele.ajouterPublication(contenuPanneauCentre, getUtilisateurId(),publi);
408
		modele.ajouterPublication(contenuPanneauCentre, getUtilisateurId(),publi);
410
	}
409
	}
411
	
410
	
412
	public void modifierPublication(FormPublicationVue formPublicationVue, Publication publi) {
411
	public void modifierPublication(FormPublicationVue formPublicationVue, Publication publi) {
413
		modele.modifierPublication(contenuPanneauCentre, getUtilisateurId(),publi);
412
		modele.modifierPublication(contenuPanneauCentre, getUtilisateurId(),publi);
414
	}
413
	}
415
 
414
 
416
	public void clicObtenirListeEditeurs(Rafraichissable vue) {
415
	public void clicObtenirListeEditeurs(Rafraichissable vue) {
417
		modele.selectionnerStructure(vue, null, null);
416
		modele.selectionnerStructure(vue, null, null);
418
		
417
		
419
	}
418
	}
420
 
419
 
421
	public void clicObtenirListeAuteurs(Rafraichissable vue) {
420
	public void clicObtenirListeAuteurs(Rafraichissable vue) {
422
		modele.selectionnerPersonne(vue, null, null, null);
421
		modele.selectionnerPersonne(vue, null, null, null);
423
	}
422
	}
424
	
423
	
425
	//+----------------------------------------------------------------------------------------------------------------+
424
	//+----------------------------------------------------------------------------------------------------------------+
426
	//												GESTION DES STRUCTURES
425
	//												GESTION DES STRUCTURES
427
	//+----------------------------------------------------------------------------------------------------------------+
426
	//+----------------------------------------------------------------------------------------------------------------+
428
 
427
 
429
	public void clicListeInstitution(Structure institution) {
428
	public void clicListeInstitution(Structure institution) {
430
		((StructureDetailPanneauVue) Registry.get(RegistreId.PANNEAU_INSTITUTION_DETAIL)).rafraichir(institution);		
429
		((StructureDetailPanneauVue) Registry.get(RegistreId.PANNEAU_INSTITUTION_DETAIL)).rafraichir(institution);		
431
	}
430
	}
432
 
431
 
433
	public void afficherListeStructures(StructureListe structuresACharger) {
432
	public void afficherListeStructures(StructureListe structuresACharger) {
434
		// TODO : créer dès l'initialisation de l'application InsitutionVue et la cacher
433
		// TODO : créer dès l'initialisation de l'application InsitutionVue et la cacher
435
		StructureVue institutionVue = new StructureVue();
434
		StructureVue institutionVue = new StructureVue();
436
		panneauCentre.add(institutionVue);
435
		panneauCentre.add(institutionVue);
437
		panneauCentre.setId(ComposantId.PANNEAU_STRUCTURE_LISTE);
436
		panneauCentre.setId(ComposantId.PANNEAU_STRUCTURE_LISTE);
438
		contenuPanneauCentre = institutionVue;
437
		contenuPanneauCentre = institutionVue;
439
		institutionVue.rafraichir(structuresACharger);
438
		institutionVue.rafraichir(structuresACharger);
440
	}
439
	}
441
	
440
	
442
	public void clicAjouterStructure() {
441
	public void clicAjouterStructure() {
443
		panneauCentre.removeAll();
442
		panneauCentre.removeAll();
444
		FormStructureVue formStructureVue = new FormStructureVue(FormStructureVue.MODE_AJOUTER);
443
		FormStructureVue formStructureVue = new FormStructureVue(FormStructureVue.MODE_AJOUTER);
445
		panneauCentre.add(formStructureVue);
444
		panneauCentre.add(formStructureVue);
446
		panneauCentre.setId(ComposantId.PANNEAU_STRUCTURE_FORM);
445
		panneauCentre.setId(ComposantId.PANNEAU_STRUCTURE_FORM);
447
		panneauCentre.layout();
446
		panneauCentre.layout();
448
	}
447
	}
449
	
448
	
450
	public void clicModifierStructure(List<Structure> structureSelection) {
449
	public void clicModifierStructure(List<Structure> structureSelection) {
451
		if (structureSelection.size() == 0) {
450
		if (structureSelection.size() == 0) {
452
			Info.display("Information", "Veuillez sélectionner une structure.");
451
			Info.display("Information", "Veuillez sélectionner une structure.");
453
		} else if(structureSelection.size() > 1) {
452
		} else if(structureSelection.size() > 1) {
454
			Info.display("Information", "Veuillez sélectionner une seule structure à la fois.");
453
			Info.display("Information", "Veuillez sélectionner une seule structure à la fois.");
455
		} else if(structureSelection.size() == 1) {
454
		} else if(structureSelection.size() == 1) {
456
			panneauCentre.removeAll();
455
			panneauCentre.removeAll();
457
			FormStructureVue formStructureVue = new FormStructureVue(FormStructureVue.MODE_MODIFIER);
456
			FormStructureVue formStructureVue = new FormStructureVue(FormStructureVue.MODE_MODIFIER);
458
			panneauCentre.add(formStructureVue);
457
			panneauCentre.add(formStructureVue);
459
			panneauCentre.setId(ComposantId.PANNEAU_STRUCTURE_FORM);
458
			panneauCentre.setId(ComposantId.PANNEAU_STRUCTURE_FORM);
460
			
459
			
461
			selectionnerStructure(formStructureVue, structureSelection.get(0).getId());
460
			selectionnerStructure(formStructureVue, structureSelection.get(0).getId());
462
			selectionnerStructureAPersonne(formStructureVue, structureSelection.get(0).getId(), StructureAPersonne.ROLE_EQUIPE);
461
			selectionnerStructureAPersonne(formStructureVue, structureSelection.get(0).getId(), StructureAPersonne.ROLE_EQUIPE);
463
			
462
			
464
			panneauCentre.layout();
463
			panneauCentre.layout();
465
		} else {
464
		} else {
466
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicModifierStructure() du Médiateur.");
465
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicModifierStructure() du Médiateur.");
467
		}
466
		}
468
		
467
		
469
	}
468
	}
470
	
469
	
471
	public void clicSupprimerStructure(final Rafraichissable vue, final List<Structure> structureSelection) {
470
	public void clicSupprimerStructure(final Rafraichissable vue, final List<Structure> structureSelection) {
472
		if (structureSelection.size() == 0) {
471
		if (structureSelection.size() == 0) {
473
			Info.display("Information", "Veuillez sélectionner une structure.");
472
			Info.display("Information", "Veuillez sélectionner une structure.");
474
		} else if(structureSelection.size() > 0) {
473
		} else if(structureSelection.size() > 0) {
475
			String message = "Êtes vous sur de vouloir supprimer les structures sélectionnées ?";
474
			String message = "Êtes vous sur de vouloir supprimer les structures sélectionnées ?";
476
			if (structureSelection.size() == 1) {
475
			if (structureSelection.size() == 1) {
477
				message = "Êtes vous sur de vouloir supprimer la structure sélectionnée ?";
476
				message = "Êtes vous sur de vouloir supprimer la structure sélectionnée ?";
478
			}
477
			}
479
			
478
			
480
			
479
			
481
			final Listener listenerSuppression = new Listener<ComponentEvent>() { 
480
			final Listener listenerSuppression = new Listener<ComponentEvent>() { 
482
				
481
				
483
			       public void handleEvent(ComponentEvent ce) {  
482
			       public void handleEvent(ComponentEvent ce) {  
484
			    	   
483
			    	   
485
			    	   Dialog dialog = (Dialog) ce.component;
484
			    	   Dialog dialog = (Dialog) ce.component;
486
			    	   Button btn = dialog.getButtonPressed();  
485
			    	   Button btn = dialog.getButtonPressed();  
487
			    	   
486
			    	   
488
			    	   if (btn.getText().equals(dialog.yesText))	{
487
			    	   if (btn.getText().equals(dialog.yesText))	{
489
			    		   	String idStr = "" ;
488
			    		   	String idStr = "" ;
490
							for(int i = 0 ; i < structureSelection.size() ; i++) {
489
							for(int i = 0 ; i < structureSelection.size() ; i++) {
491
								idStr += structureSelection.get(i).getId()+"," ; 
490
								idStr += structureSelection.get(i).getId()+"," ; 
492
							}
491
							}
493
							modele.supprimerStructure(vue, getUtilisateurId(), idStr); 
492
							modele.supprimerStructure(vue, getUtilisateurId(), idStr); 
494
					       }
493
					       }
495
				      }
494
				      }
496
				     };
495
				     };
497
				     
496
				     
498
			MessageBox.confirm("Supprimer une structure", message, listenerSuppression);
497
			MessageBox.confirm("Supprimer une structure", message, listenerSuppression);
499
			
498
			
500
		} else {
499
		} else {
501
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicSupprimerStructure() du Médiateur.");
500
			Info.display("Erreur", "Une erreur est survenue dans la méthode clicSupprimerStructure() du Médiateur.");
502
		}
501
		}
503
	}
502
	}
504
	
503
	
505
	public void selectionnerStructure(Rafraichissable vue, String structureId) {
504
	public void selectionnerStructure(Rafraichissable vue, String structureId) {
506
		GWT.log("Structure : "+structureId, null);
505
		GWT.log("Structure : "+structureId, null);
507
		modele.selectionnerStructure(vue, null, structureId);
506
		modele.selectionnerStructure(vue, null, structureId);
508
	}
507
	}
509
	
508
	
510
	/**
509
	/**
511
	 * TODO : afficher un message du type "Structure ajoutée".  
510
	 * TODO : afficher un message du type "Structure ajoutée".  
512
	 * Lance la creation d'une structure
511
	 * Lance la creation d'une structure
513
	 * @param les données de la structure saisie
512
	 * @param les données de la structure saisie
514
	 */
513
	 */
515
	public void ajouterStructure(Rafraichissable vue, Structure structure, StructureConservation conservation, StructureValorisation valorisation) {
514
	public void ajouterStructure(Rafraichissable vue, Structure structure, StructureConservation conservation, StructureValorisation valorisation) {
516
		modele.ajouterStructure(vue, getUtilisateurId(), structure, conservation, valorisation);
515
		modele.ajouterStructure(vue, getUtilisateurId(), structure, conservation, valorisation);
517
	}
516
	}
518
	
517
	
519
	public void modifierStructure(Rafraichissable vue, String structureId, Structure structure, StructureConservation conservation, StructureValorisation valorisation) {
518
	public void modifierStructure(Rafraichissable vue, String structureId, Structure structure, StructureConservation conservation, StructureValorisation valorisation) {
520
		modele.modifierStructure(vue, getUtilisateurId(), structureId, structure, conservation, valorisation);
519
		modele.modifierStructure(vue, getUtilisateurId(), structureId, structure, conservation, valorisation);
521
	}
520
	}
522
 
521
 
523
	//+----------------------------------------------------------------------------------------------------------------+
522
	//+----------------------------------------------------------------------------------------------------------------+
524
	// GESTION de la relation STRUCTURE A PERSONNE
523
	// GESTION de la relation STRUCTURE A PERSONNE
525
	public void selectionnerStructureAPersonne(Rafraichissable vue, String structureId, String roleId) {
524
	public void selectionnerStructureAPersonne(Rafraichissable vue, String structureId, String roleId) {
526
		GWT.log("Structure : "+structureId, null);
525
		GWT.log("Structure : "+structureId, null);
527
		modele.selectionnerStructureAPersonne(vue, getUtilisateurId(), null, structureId, roleId);
526
		modele.selectionnerStructureAPersonne(vue, getUtilisateurId(), null, structureId, roleId);
528
	}
527
	}
529
	
528
	
530
	public void modifierStructureAPersonne(Rafraichissable vue, StructureAPersonneListe personnelModifie) {
529
	public void modifierStructureAPersonne(Rafraichissable vue, StructureAPersonneListe personnelModifie) {
531
		if (personnelModifie != null && personnelModifie.size() > 0) {
530
		if (personnelModifie != null && personnelModifie.size() > 0) {
532
			GWT.log("Mediateur :modif", null);
531
			GWT.log("Mediateur :modif", null);
533
			for (Iterator<String> it = personnelModifie.keySet().iterator(); it.hasNext();) {
532
			for (Iterator<String> it = personnelModifie.keySet().iterator(); it.hasNext();) {
534
				modele.modifierStructureAPersonne(vue, getUtilisateurId(), (StructureAPersonne) personnelModifie.get(it.next()));
533
				modele.modifierStructureAPersonne(vue, getUtilisateurId(), (StructureAPersonne) personnelModifie.get(it.next()));
535
			}
534
			}
536
		}
535
		}
537
	}
536
	}
538
	
537
	
539
	public void ajouterStructureAPersonne(Rafraichissable vue, String structureId, StructureAPersonneListe personnelAjoute) {
538
	public void ajouterStructureAPersonne(Rafraichissable vue, String structureId, StructureAPersonneListe personnelAjoute) {
540
		if (personnelAjoute != null && personnelAjoute.size() > 0) {
539
		if (personnelAjoute != null && personnelAjoute.size() > 0) {
541
			for (Iterator<String> it = personnelAjoute.keySet().iterator(); it.hasNext();) {
540
			for (Iterator<String> it = personnelAjoute.keySet().iterator(); it.hasNext();) {
542
				modele.ajouterStructureAPersonne(vue, getUtilisateurId(), structureId, (StructureAPersonne) personnelAjoute.get(it.next()));
541
				modele.ajouterStructureAPersonne(vue, getUtilisateurId(), structureId, (StructureAPersonne) personnelAjoute.get(it.next()));
543
			}
542
			}
544
		}
543
		}
545
	}
544
	}
546
	
545
	
547
	public void supprimerStructureAPersonne(Rafraichissable vue, StructureAPersonneListe personnelSupprime) {
546
	public void supprimerStructureAPersonne(Rafraichissable vue, StructureAPersonneListe personnelSupprime) {
548
		if (personnelSupprime != null && personnelSupprime.size() > 0) {
547
		if (personnelSupprime != null && personnelSupprime.size() > 0) {
549
			String idStrAPer = "" ;
548
			String idStrAPer = "" ;
550
			for (Iterator<String> it = personnelSupprime.keySet().iterator(); it.hasNext();) {
549
			for (Iterator<String> it = personnelSupprime.keySet().iterator(); it.hasNext();) {
551
					idStrAPer += personnelSupprime.get(it.next()).getId()+"," ;
550
					idStrAPer += personnelSupprime.get(it.next()).getId()+"," ;
552
			}
551
			}
553
			modele.supprimerStructureAPersonne(vue, getUtilisateurId(), idStrAPer);
552
			modele.supprimerStructureAPersonne(vue, getUtilisateurId(), idStrAPer);
554
		}
553
		}
555
	}
554
	}
556
 
555
 
557
	//+----------------------------------------------------------------------------------------------------------------+
556
	//+----------------------------------------------------------------------------------------------------------------+
558
	//												GESTION des PROJETS
557
	//												GESTION des PROJETS
559
	//+----------------------------------------------------------------------------------------------------------------+
558
	//+----------------------------------------------------------------------------------------------------------------+
560
	
559
	
561
	/**
560
	/**
562
	 * Retourne l'identifiant du projet courrant de l'application.
561
	 * Retourne l'identifiant du projet courrant de l'application.
563
	 */
562
	 */
564
	public String getProjetId() {
563
	public String getProjetId() {
565
		String id = null;
564
		String id = null;
566
		Projet projetCourant = (Projet) Registry.get(RegistreId.PROJET_COURANT);
565
		Projet projetCourant = (Projet) Registry.get(RegistreId.PROJET_COURANT);
567
		if (projetCourant != null && !projetCourant.getId().equals("")) {
566
		if (projetCourant != null && !projetCourant.getId().equals("")) {
568
			id = projetCourant.getId();
567
			id = projetCourant.getId();
569
		}
568
		}
570
		return id;
569
		return id;
571
	}
570
	}
572
	
571
	
573
	//Greg : ajout d'un écouteur pour le changement liste projet
572
	//Greg : ajout d'un écouteur pour le changement liste projet
574
	public void selectionnerProjets(Rafraichissable vue)	{
573
	public void selectionnerProjets(Rafraichissable vue)	{
575
		modele.selectionnerProjets(vue);
574
		modele.selectionnerProjets(vue);
576
	}
575
	}
577
	
576
	
578
	public void afficherListeProjets(ProjetListe projets)	{
577
	public void afficherListeProjets(ProjetListe projets)	{
579
		panneauOuest.rafraichir(projets);
578
		panneauOuest.rafraichir(projets);
580
	}
579
	}
581
	
580
	
582
	public void selectionnerProjetCourant(Projet projetSelectionne) {
581
	public void selectionnerProjetCourant(Projet projetSelectionne) {
583
		Registry.register(RegistreId.PROJET_COURANT, projetSelectionne);
582
		Registry.register(RegistreId.PROJET_COURANT, projetSelectionne);
584
		if (contenuPanneauCentre instanceof PersonneVue)	{
583
		if (contenuPanneauCentre instanceof PersonneVue)	{
585
			modele.selectionnerPersonne(contenuPanneauCentre, null, getProjetId(), null);
584
			modele.selectionnerPersonne(contenuPanneauCentre, null, getProjetId(), null);
586
			//FIXME Le rafraichissement du panneau ne se fait pas!
585
			//FIXME Le rafraichissement du panneau ne se fait pas!
587
		} else if (contenuPanneauCentre instanceof StructureVue)	{
586
		} else if (contenuPanneauCentre instanceof StructureVue)	{
588
			modele.obtenirListeStructures(contenuPanneauCentre, getProjetId());
587
			modele.obtenirListeStructures(contenuPanneauCentre, getProjetId());
589
		}
588
		}
590
	}
589
	}
591
	
590
	
592
	//+----------------------------------------------------------------------------------------------------------------+
591
	//+----------------------------------------------------------------------------------------------------------------+
593
	//	RAFRAICHISSEMENT
592
	//	RAFRAICHISSEMENT
594
	//+----------------------------------------------------------------------------------------------------------------+
593
	//+----------------------------------------------------------------------------------------------------------------+
595
	
594
	
596
	public void rafraichir(Object nouvelleDonnees) {
595
	public void rafraichir(Object nouvelleDonnees) {
597
		if (nouvelleDonnees instanceof Utilisateur) {
596
		if (nouvelleDonnees instanceof Utilisateur) {
598
			mettreAJourEtatIdentification((Utilisateur) nouvelleDonnees);
597
			mettreAJourEtatIdentification((Utilisateur) nouvelleDonnees);
599
		} else {
598
		} else {
600
			GWT.log("Pas de correspondance dans la méthode rafraichir() de la classe "+this.getClass(), null);
599
			GWT.log("Pas de correspondance dans la méthode rafraichir() de la classe "+this.getClass(), null);
601
		}
600
		}
602
	}
601
	}
603
	
602
	
604
	/**
603
	/**
605
	 * Récupère la liste et rafraichit la vue donnée
604
	 * Récupère la liste et rafraichit la vue donnée
606
	 * 
605
	 * 
607
	 * @param la vue à rafraichir
606
	 * @param la vue à rafraichir
608
	 * @param l'id de la liste à récupérer
607
	 * @param l'id de la liste à récupérer
609
	 * */
608
	 * */
610
	public void obtenirListeValeurEtRafraichir(Rafraichissable vue, String strListeId)	{
609
	public void obtenirListeValeurEtRafraichir(Rafraichissable vue, String strListeId)	{
611
		
610
		
612
		modele.obtenirListeValeurs(vue, ((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(strListeId));
611
		modele.obtenirListeValeurs(vue, ((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(strListeId));
613
	}
612
	}
614
	
613
	
615
	public void obtenirValeurEtRafraichir(Rafraichissable vue, String strListeId, String identifiantValeur)	{
614
	public void obtenirValeurEtRafraichir(Rafraichissable vue, String strListeId, String identifiantValeur)	{
616
		
615
		
617
		modele.obtenirValeur(vue, "abv", ((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(strListeId), identifiantValeur);
616
		modele.obtenirValeur(vue, "abv", ((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(strListeId), identifiantValeur);
618
	}
617
	}
619
	
618
	
620
	public void obtenirListeRegionsEtRafraichir(Rafraichissable vue, String strListeId, String strPays)	{
619
	public void obtenirListeRegionsEtRafraichir(Rafraichissable vue, String strListeId, String strPays)	{
621
		modele.obtenirListeRegion(vue, ((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(strListeId), strPays+".__");
620
		modele.obtenirListeRegion(vue, ((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(strListeId), strPays+".__");
622
	}
621
	}
623
	
622
	
624
	/**
623
	/**
625
	 * 	Affiche la popin de chargement
624
	 * 	Affiche la popin de chargement
626
	 */
625
	 */
627
	public void afficherPopinChargement()	{
626
	public void afficherPopinChargement()	{
628
		
627
		
629
		((PopupChargement) Registry.get(RegistreId.POPUP_CHARGEMENT)).center();
628
		((PopupChargement) Registry.get(RegistreId.POPUP_CHARGEMENT)).center();
630
		
629
		
631
	}
630
	}
632
	
631
	
633
	
632
	
634
	public void masquerPopinChargement()	{		
633
	public void masquerPopinChargement()	{		
635
		((PopupChargement) Registry.get(RegistreId.POPUP_CHARGEMENT)).hide();
634
		((PopupChargement) Registry.get(RegistreId.POPUP_CHARGEMENT)).hide();
636
		
635
		
637
	}
636
	}
638
}
637
}