Subversion Repositories eFlore/Applications.coel

Rev

Rev 548 | Rev 716 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 548 Rev 705
Line 6... Line 6...
6
import java.util.Set;
6
import java.util.Set;
Line 7... Line 7...
7
 
7
 
8
import org.tela_botanica.client.Mediateur;
8
import org.tela_botanica.client.Mediateur;
9
import org.tela_botanica.client.RegistreId;
9
import org.tela_botanica.client.RegistreId;
-
 
10
import org.tela_botanica.client.interfaces.Rafraichissable;
10
import org.tela_botanica.client.interfaces.Rafraichissable;
11
import org.tela_botanica.client.modeles.Information;
11
import org.tela_botanica.client.modeles.Personne;
12
import org.tela_botanica.client.modeles.Personne;
12
import org.tela_botanica.client.modeles.PersonneListe;
13
import org.tela_botanica.client.modeles.PersonneListe;
-
 
14
import org.tela_botanica.client.modeles.Publication;
13
import org.tela_botanica.client.modeles.Publication;
15
import org.tela_botanica.client.modeles.PublicationListe;
14
import org.tela_botanica.client.modeles.Structure;
16
import org.tela_botanica.client.modeles.Structure;
Line 15... Line 17...
15
import org.tela_botanica.client.modeles.StructureListe;
17
import org.tela_botanica.client.modeles.StructureListe;
16
 
18
 
-
 
19
import com.extjs.gxt.ui.client.Registry;
17
import com.extjs.gxt.ui.client.Registry;
20
import com.extjs.gxt.ui.client.Style.HorizontalAlignment;
-
 
21
import com.extjs.gxt.ui.client.event.BaseEvent;
-
 
22
import com.extjs.gxt.ui.client.event.ButtonEvent;
18
import com.extjs.gxt.ui.client.Style.HorizontalAlignment;
23
import com.extjs.gxt.ui.client.event.Events;
19
import com.extjs.gxt.ui.client.event.ButtonEvent;
24
import com.extjs.gxt.ui.client.event.Listener;
20
import com.extjs.gxt.ui.client.event.SelectionListener;
25
import com.extjs.gxt.ui.client.event.SelectionListener;
21
import com.extjs.gxt.ui.client.store.ListStore;
26
import com.extjs.gxt.ui.client.store.ListStore;
-
 
27
import com.extjs.gxt.ui.client.widget.HorizontalPanel;
22
import com.extjs.gxt.ui.client.widget.HorizontalPanel;
28
import com.extjs.gxt.ui.client.widget.LayoutContainer;
23
import com.extjs.gxt.ui.client.widget.LayoutContainer;
29
import com.extjs.gxt.ui.client.widget.MessageBox;
24
import com.extjs.gxt.ui.client.widget.button.Button;
30
import com.extjs.gxt.ui.client.widget.button.Button;
25
import com.extjs.gxt.ui.client.widget.form.ComboBox;
31
import com.extjs.gxt.ui.client.widget.form.ComboBox;
26
import com.extjs.gxt.ui.client.widget.form.DateField;
32
import com.extjs.gxt.ui.client.widget.form.DateField;
Line 30... Line 36...
30
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction;
36
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction;
31
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
37
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
32
import com.extjs.gxt.ui.client.widget.layout.FlowLayout;
38
import com.extjs.gxt.ui.client.widget.layout.FlowLayout;
33
import com.extjs.gxt.ui.client.widget.layout.FormData;
39
import com.extjs.gxt.ui.client.widget.layout.FormData;
34
import com.extjs.gxt.ui.client.widget.layout.FormLayout;
40
import com.extjs.gxt.ui.client.widget.layout.FormLayout;
-
 
41
import com.google.gwt.core.client.GWT;
-
 
42
import com.google.gwt.user.client.Window;
35
import com.google.gwt.user.client.ui.HTML;
43
import com.google.gwt.user.client.ui.HTML;
-
 
44
import com.google.gwt.user.client.ui.Label;
Line 36... Line 45...
36
 
45
 
Line 37... Line 46...
37
public class PublicationForm extends LayoutContainer implements Rafraichissable {
46
public class PublicationForm extends LayoutContainer implements Rafraichissable {
Line 58... Line 67...
58
	private TextField<String> tomPub = null;
67
	private TextField<String> tomPub = null;
59
	private TextField<String> fasciculePub = null;
68
	private TextField<String> fasciculePub = null;
60
	private TextField<String> pagesPub = null;
69
	private TextField<String> pagesPub = null;
61
	private String mode = "AJOUT";
70
	private String mode = "AJOUT";
Line -... Line 71...
-
 
71
	
-
 
72
	private boolean formValide = false;
-
 
73
	private boolean validationPublication = false;
-
 
74
	private boolean validationAuteurs = false;
62
	
75
	
Line 63... Line 76...
63
	FieldSet fieldSetAuteurs = null;
76
	FieldSet fieldSetAuteurs = null;
Line -... Line 77...
-
 
77
 
-
 
78
	private Publication publi;
-
 
79
 
-
 
80
	protected boolean listeAuteurInitialisee = false;
-
 
81
 
-
 
82
	private LayoutContainer conteneurChamps;
-
 
83
 
-
 
84
	private Button annulerBtn;
64
 
85
 
-
 
86
	private Button validerBtn;
-
 
87
 
65
	private Publication publi;
88
	public PublicationForm() {
66
 
89
 
Line 67... Line 90...
67
	public PublicationForm() {
90
		setId("x-form-pub");
68
		setLayout(new FitLayout());
91
		setLayout(new FitLayout());
Line 76... Line 99...
76
		layoutFieldset.setLabelWidth(200);
99
		layoutFieldset.setLabelWidth(200);
77
		//layoutFieldset.setPadding(4);
100
		//layoutFieldset.setPadding(4);
Line 78... Line 101...
78
 
101
 
79
		//+-----------------------------------------------------------------------------------------------------------+
102
		//+-----------------------------------------------------------------------------------------------------------+
80
		// Création du panneau Formulaire
103
		// Création du panneau Formulaire
81
		panel = new FormPanel();  
104
		panel = new FormPanel();
82
		panel.setFrame(true);
105
		panel.setFrame(true);
83
		panel.setIconStyle("icone-form-ajouter");  
106
		panel.setIconStyle("icone-form-ajouter");  
84
		panel.setCollapsible(false);  
107
		panel.setCollapsible(false);  
85
		panel.setHeading("Ajout d'une publication");  
108
		panel.setHeading("Ajout d'une publication");  
Line 158... Line 181...
158
		
181
		
159
		pagesPub = new TextField<String>();
182
		pagesPub = new TextField<String>();
Line 160... Line 183...
160
		pagesPub.setFieldLabel("Pages");
183
		pagesPub.setFieldLabel("Pages");
161
		
184
		
162
		fieldSetEdition.add(comboListeEditeurs, new FormData(500, 20));
185
		fieldSetEdition.add(comboListeEditeurs, new FormData(500, 20));
163
		fieldSetEdition.add(datePub, new FormData(75, 20));
186
		fieldSetEdition.add(datePub, new FormData(100, 20));
164
		fieldSetEdition.add(tomPub);
187
		fieldSetEdition.add(tomPub);
Line 165... Line 188...
165
		fieldSetEdition.add(fasciculePub);
188
		fieldSetEdition.add(fasciculePub);
166
		fieldSetEdition.add(pagesPub, new FormData(100, 20));
189
		fieldSetEdition.add(pagesPub, new FormData(100, 20));
167
		
190
		
168
		// Ajout des boutons au panneau formulaire
191
		// Ajout des boutons au panneau formulaire
169
		Button annulerBtn = new Button("Annuler");
192
		annulerBtn = new Button("Annuler");
170
		annulerBtn.addSelectionListener(new SelectionListener<ButtonEvent>() {
193
		annulerBtn.addSelectionListener(new SelectionListener<ButtonEvent>() {
171
			@Override
194
			@Override
172
			public void componentSelected(ButtonEvent be) {
195
			public void componentSelected(ButtonEvent be) {
173
				mediateur.clicMenu("Publications");
196
				mediateur.clicMenu("Publications");
-
 
197
			}
174
			}
198
		});
175
		});
199
		panel.addButton(annulerBtn);
176
		panel.addButton(annulerBtn);
200
		
177
		Button validerBtn = new Button("Valider");
201
		validerBtn = new Button("Valider");
178
		validerBtn.addSelectionListener(new SelectionListener<ButtonEvent>() {
202
		validerBtn.addSelectionListener(new SelectionListener<ButtonEvent>() {
179
			@Override
203
			@Override
180
			public void componentSelected(ButtonEvent be) {
204
			public void componentSelected(ButtonEvent be) {
-
 
205
				soumettreFormulaire();
181
				soumettreFormulaire();
206
			}
Line 182... Line -...
182
			}
-
 
183
		});
207
		});
-
 
208
		
184
		panel.addButton(validerBtn);
209
		panel.addButton(validerBtn);
Line 185... Line 210...
185
		
210
		
Line 186... Line 211...
186
		mediateur.clicObtenirListeAuteurs(this);
211
		mediateur.clicObtenirListeEditeurs(this);
187
		mediateur.clicObtenirListeEditeurs(this);
212
		mediateur.clicObtenirListeAuteurs(this);
188
	}
213
	}
Line 189... Line 214...
189
	
214
	
190
	public void rafraichir(Object nouvelleDonnees) {
215
	public void rafraichir(Object nouvellesDonnees) {
191
		
-
 
-
 
216
		
192
		// Si on a reçu les details d'une publication
217
		// Si on a reçu les details d'une publication
193
		if (nouvelleDonnees instanceof Publication) {
218
		if (nouvellesDonnees instanceof Publication) {
194
			mode = "MODIF" ;
219
			mode = "MODIF" ;
195
			
220
			
196
			publi = (Publication) nouvelleDonnees;
221
			publi = (Publication) nouvellesDonnees;
Line 210... Line 235...
210
			
235
			
211
			panel.setHeading("Modification d'une publication");
236
			panel.setHeading("Modification d'une publication");
Line 212... Line 237...
212
		}
237
		}
213
		
238
		
214
		// Si on a reçu une liste des editeurs
239
		// Si on a reçu une liste des editeurs
215
		if (nouvelleDonnees instanceof StructureListe) {
240
		if(nouvellesDonnees instanceof StructureListe) {
216
			storeEditeurs.removeAll();
241
			storeEditeurs.removeAll();
Line 217... Line 242...
217
			StructureListe listeStructure = (StructureListe) nouvelleDonnees;
242
			StructureListe listeStructure = (StructureListe) nouvellesDonnees;
218
			storeEditeurs.add((List<Structure>) listeStructure.toList());
243
			storeEditeurs.add((List<Structure>) listeStructure.toList());
219
			
244
			
220
			if (mode.equals("MODIF")) {	
245
			if (mode.equals("MODIF")) {	
221
				comboListeEditeurs.setValue((Structure) listeStructure.get(idStructureEdition));
246
				comboListeEditeurs.setValue((Structure) listeStructure.get(idStructureEdition));
Line 222... Line 247...
222
			}
247
			}
223
			comboListeEditeurs.expand();
248
			comboListeEditeurs.expand();
-
 
249
		}
-
 
250
		
224
		}
251
		if (nouvellesDonnees instanceof Information) {
225
		
252
			Information nouvellesInfos = (Information)nouvellesDonnees;
226
		if (nouvelleDonnees instanceof PersonneListe) {
253
			
227
			storeAuteurs.removeAll();
254
			if(nouvellesInfos.getType().equals("liste_personne")) {
-
 
255
				listePersonneAuteur = (PersonneListe)nouvellesInfos.getDonnee(0);
-
 
256
				storeAuteurs.removeAll();
-
 
257
				for (Iterator<String> it = listePersonneAuteur.keySet().iterator(); it.hasNext();) {
-
 
258
					Personne p = listePersonneAuteur.get(it.next());
-
 
259
					storeAuteurs.add(p);
-
 
260
				}
-
 
261
				
-
 
262
				if (mode.equals("MODIF")) {	
-
 
263
					genererChampsAuteur(publi.getIdAuteur(), false);
228
			listePersonneAuteur = (PersonneListe)nouvelleDonnees;
264
				} else {
Line -... Line 265...
-
 
265
					listeAuteurs.get(0).expand();
-
 
266
				}
-
 
267
				listeAuteurInitialisee = true;
-
 
268
			}
-
 
269
			
229
			Set<String> listeStructureSet = listePersonneAuteur.keySet();
270
			if (nouvellesInfos.getType().equals("publication_valide")) {
-
 
271
				Window.alert("Ajout de publication terminé ! "+nouvellesInfos.getDeboguage(0));
-
 
272
				validationPublication = true;		
-
 
273
			}
-
 
274
				
230
			for (Iterator<String> it = listeStructureSet.iterator(); it.hasNext();) {
275
			if (nouvellesInfos.getType().equals("auteur_valide")) {
231
				storeAuteurs.add(listePersonneAuteur.get(it.next()));
276
				validationAuteurs = true;
232
			}
277
			}
233
			
278
				
Line 234... Line 279...
234
			if (mode.equals("MODIF")) {	
279
			if(formValide && validationPublication && validationAuteurs) {
235
				genererChampsAuteur(publi.getIdAuteur(), false);
280
				mediateur.rechargerListePublication();
-
 
281
			}
236
			}
282
		}
-
 
283
	}
237
		}
284
	
-
 
285
	private void soumettreFormulaire() {
238
	}
286
		String auteur = "";
239
	
287
		String idAuteur = "";
-
 
288
		for (int i = 0; i < listeAuteurs.size(); i++) {
-
 
289
			if(listeAuteurs.get(i).getValue() != null) {
240
	private void soumettreFormulaire() {
290
				idAuteur += listeAuteurs.get(i).getValue().getId();
241
		String auteur = "";
291
				auteur += listeAuteurs.get(i).getValue().getNom()+ " "+listeAuteurs.get(i).getValue().getPrenom();
-
 
292
				if (i != listeAuteurs.size() -1) {
-
 
293
					auteur += "|";
-
 
294
					idAuteur += "|";
-
 
295
				}
-
 
296
			}
-
 
297
		}
-
 
298
		
242
		for (int i = 0; i < listeAuteurs.size(); i++) {
299
		String erreurs = "";
-
 
300
		
243
			auteur += listeAuteurs.get(i).getValue();
301
		if(idAuteur == null || idAuteur.equals("")) {
-
 
302
			erreurs += "Veuillez entrer au moins un auteur ! ";
-
 
303
		}
244
			if (i != listeAuteurs.size() -1) {
304
		
-
 
305
		String nomArt = nomArticle.getValue();
-
 
306
		if(nomArt == null || nomArt.equals("")) {
-
 
307
			erreurs += "Veuillez entrer le nom de l'article ! ";
-
 
308
		}
-
 
309
		
-
 
310
		String collPub = intituleCollPub.getValue();
245
				auteur += "|";
311
		if(collPub == null || collPub.equals("")) {
-
 
312
			erreurs += "Veuillez entrer l'intitulé de la collection ! ";
-
 
313
		}
-
 
314
		
-
 
315
		String pub = nomArticle.getValue()+" "+intituleCollPub.getValue();
-
 
316
		
-
 
317
		String uri = uriPub.getValue();
-
 
318
		if(uri == null || uri.equals("")) {
-
 
319
			erreurs += "Veuillez entrer l'uri associée à la publication ! ";
-
 
320
		}
246
			}
321
		
-
 
322
		String editeur = "";
-
 
323
		
-
 
324
		if(comboListeEditeurs.getValue() == null) {
-
 
325
			erreurs += "Veuillez sélectionner un éditeur ! ";
-
 
326
		} else {
247
		}
327
			editeur = comboListeEditeurs.getValue().getId();
-
 
328
			if(editeur == null || editeur.equals("")) {
-
 
329
				erreurs += "Veuillez sélectionner un éditeur ! ";
-
 
330
			}
248
		String nomArt = nomArticle.getValue();
331
		}
-
 
332
		
-
 
333
		String datePar = datePub.getRawValue();
-
 
334
		if(datePar == null || datePar.equals("")) {
249
		String pub = nomArticle.getValue()+" "+intituleCollPub.getValue(); 
335
			erreurs += "Veuillez entrer une date ! ";
-
 
336
		}
-
 
337
		String tome = tomPub.getValue();
-
 
338
		if(tome == null || tome.equals("")) {
250
		String collPub = intituleCollPub.getValue();
339
			erreurs += "Veuillez entrer un tome ! ";
-
 
340
		}
-
 
341
		String fascicule = fasciculePub.getValue();
-
 
342
		if(fascicule == null || fascicule.equals("")) {
-
 
343
			erreurs += "Veuillez entrer un fascicule ! ";
-
 
344
		}
-
 
345
		String pages = pagesPub.getValue();
-
 
346
		if(pages == null || pages.equals("")) {
-
 
347
			erreurs += "Veuillez entrer des pages ! ";
-
 
348
		}
-
 
349
		
-
 
350
		if(erreurs.length() > 0) {
-
 
351
			MessageBox.alert("Erreur dans la saisie des champs", erreurs, null);
Line 251... Line 352...
251
		String uri = uriPub.getValue();
352
			return;
252
		String editeur = comboListeEditeurs.getValue().getId();
353
		}
253
		String datePar = datePub.getRawValue();
354
		
254
		String tome = tomPub.getValue();
355
		formValide = true;
255
		String fascicule = fasciculePub.getValue();
356
		this.setEnabled(false);
256
		String pages = pagesPub.getValue();
357
		mediateur.afficherPopinChargement();
257
		
358
		
258
		if (mode.equals("AJOUT")) {
359
		if (mode.equals("AJOUT")) {
Line 259... Line 360...
259
			Publication publi = new Publication(pub,uri,auteur,collPub,nomArt,editeur,datePar,tome,fascicule,pages);
360
			Publication publi = new Publication(pub,uri,auteur, idAuteur, collPub,nomArt,editeur,datePar,tome,fascicule,pages);
260
			mediateur.ajouterPublication(this, publi);
361
			mediateur.ajouterPublication(this, publi);
261
		} else if (mode.equals("MODIF")) {
362
		} else if (mode.equals("MODIF")) {
Line 262... Line 363...
262
			Publication publi = new Publication(idPublication,idProjet,pub,uri,auteur,collPub,nomArt,editeur,datePar,tome,fascicule,pages);
363
			Publication publi = new Publication(idPublication,idProjet,pub,uri,auteur,idAuteur, collPub,nomArt,editeur,datePar,tome,fascicule,pages);
263
			mediateur.modifierPublication(this, publi);
364
			mediateur.modifierPublication(this, publi);
264
		}
365
		}
265
	}
366
	}
266
	
367
	
267
	private void genererChampsAuteur(String auteursStr, boolean ajouter) {
368
	private void genererChampsAuteur(String auteursStr, boolean ajouter) {
Line 268... Line 369...
268
		String[] auteurs = auteursStr.split(";;");
369
		String[] auteurs = auteursStr.split("|");
269
		LayoutContainer conteneurChamps = new LayoutContainer(); 
-
 
270
		
-
 
271
		if (auteurs.length != 0) {
-
 
272
			listeAuteurs = new ArrayList<ComboBox<Personne>>(auteurs.length);
-
 
273
		} else {
370
		conteneurChamps = new LayoutContainer(); 
Line 274... Line 371...
274
			listeAuteurs = new ArrayList<ComboBox<Personne>>(1);
371
		
275
			ajouter = true ;
372
		if (auteurs.length != 0) {
276
		}
373
			listeAuteurs = new ArrayList<ComboBox<Personne>>(auteurs.length);
Line 293... Line 390...
293
		Button ajoutAuteurBtn = new Button("Ajouter un auteur");
390
		Button ajoutAuteurBtn = new Button("Ajouter un auteur");
294
		ajoutAuteurBtn.addSelectionListener(new SelectionListener<ButtonEvent>() {
391
		ajoutAuteurBtn.addSelectionListener(new SelectionListener<ButtonEvent>() {
Line 295... Line 392...
295
 
392
 
296
			@Override
393
			@Override
297
			public void componentSelected(ButtonEvent be) {
394
			public void componentSelected(ButtonEvent be) {
298
				String idsAuteurs = "" ;
-
 
299
				
395
				creerTextFieldEtBouton("");
300
				for(int i = 0 ; i < listeAuteurs.size() ; i++) {
396
				int nbAuteurs = 1;
301
					Personne enCours = listeAuteurs.get(i).getValue();
-
 
302
					String valeurChampAuteur = " ";
397
				for(Iterator<ComboBox<Personne>> it = listeAuteurs.iterator(); it.hasNext();) {
303
					if(enCours != null) {
398
					if(listeAuteurs.size() > 1) {
304
						valeurChampAuteur = enCours.getId();
399
						it.next().setFieldLabel("Auteur "+nbAuteurs);
305
					} else {
-
 
306
						valeurChampAuteur = null;
-
 
307
					}
-
 
308
					if(valeurChampAuteur != null) {
-
 
309
						idsAuteurs += valeurChampAuteur;
400
						nbAuteurs++;
310
					}
-
 
311
					idsAuteurs += ";;";
401
					}
312
				}
402
				}
313
				genererChampsAuteur(idsAuteurs,true);
403
				fieldSetAuteurs.layout(true);
Line 314... Line 404...
314
			}
404
			}
Line 315... Line 405...
315
			
405
			
316
		});
406
		});
317
		
407
		
318
		fieldSetAuteurs.add(conteneurChamps);
408
		fieldSetAuteurs.add(conteneurChamps);
Line 319... Line 409...
319
		fieldSetAuteurs.add(ajoutAuteurBtn);
409
		fieldSetAuteurs.add(ajoutAuteurBtn);
320
		fieldSetAuteurs.layout();
410
		fieldSetAuteurs.layout(true);
Line 321... Line 411...
321
	}
411
	}
322
	
412
	
323
	public HorizontalPanel creerTextFieldEtBouton(String valeurDefaut) {
413
	public HorizontalPanel creerTextFieldEtBouton(String valeurDefaut) {
Line 324... Line 414...
324
		HorizontalPanel p = new HorizontalPanel();
414
		final HorizontalPanel p = new HorizontalPanel();
325
		
415
		
326
		// Création de la disposition : FIELDSET
416
		// Création de la disposition : FIELDSET
-
 
417
		FormLayout layoutPanelTF = new FormLayout();
-
 
418
		p.setLayout(layoutPanelTF);
-
 
419
		
327
		FormLayout layoutPanelTF = new FormLayout();
420
		final ComboBox<Personne> tf = new ComboBox<Personne>();
328
		p.setLayout(layoutPanelTF);
421
		tf.setDisplayField("fmt_nom_complet");
329
		
422
		tf.setStore(storeAuteurs);
330
		final ComboBox<Personne> tf = new ComboBox<Personne>();
423
		tf.setEmptyText("Selectionnez un auteur...");
331
		tf.setDisplayField("fmt_nom_complet");
-
 
332
		tf.setStore(storeAuteurs);
424
		String label = "Auteur ";
Line -... Line 425...
-
 
425
		tf.setFieldLabel(label);
-
 
426
		if(valeurDefaut != null && !valeurDefaut.equals("") ) {
-
 
427
			Personne auteur = listePersonneAuteur.get(valeurDefaut);
-
 
428
			tf.setValue(auteur);
-
 
429
		}
333
		if(valeurDefaut != null && !valeurDefaut.equals("") ) {
430
		listeAuteurs.add(tf);
334
			Personne auteur = listePersonneAuteur.get((String)valeurDefaut);
431
		
335
			tf.setValue(auteur);
432
		tf.setSize(200, 20);
336
		}
433
		LayoutContainer lc = new LayoutContainer();
337
		tf.setSize(200, 20);
434
		lc.setLayout(new FormLayout());
338
		listeAuteurs.add(tf);
435
		lc.add(tf);
339
		
-
 
340
		Button supp = new Button("-");
-
 
341
		supp.addSelectionListener(new SelectionListener<ButtonEvent>() {
-
 
342
			@Override
436
		
343
			public void componentSelected(ButtonEvent be) {
-
 
344
				String idsAuteurs = "";
-
 
345
				listeAuteurs.remove(tf);
-
 
346
				
-
 
347
				for (int i = 0; i < listeAuteurs.size(); i++) {
-
 
348
					
-
 
349
					Personne enCours = listeAuteurs.get(i).getValue() ;
-
 
350
					String valeurChampAuteur = " ";
-
 
351
					if (enCours != null) {
437
		Button supp = new Button("-");
352
						valeurChampAuteur = enCours.getId();
-
 
353
					} else {
438
		supp.addSelectionListener(new SelectionListener<ButtonEvent>() {
354
						valeurChampAuteur = null;
-
 
355
					}
-
 
356
					
-
 
357
					if (valeurChampAuteur != null & !valeurChampAuteur.equals("")) {
439
			@Override
358
						idsAuteurs += valeurChampAuteur;
440
			public void componentSelected(ButtonEvent be) {
-
 
441
				int nbAuteurs = 1;
-
 
442
				if(listeAuteurs.size() != 1) {
359
					} else {
443
					for(Iterator<ComboBox<Personne>> it = listeAuteurs.iterator(); it.hasNext();) {
360
						idsAuteurs += " ";
444
							it.next().setFieldLabel("Auteur "+nbAuteurs);
Line 361... Line 445...
361
					}
445
							nbAuteurs++;
362
					if (i != listeAuteurs.size() - 1) {
446
					}
363
						idsAuteurs += ";;";
447
				}
-
 
448
				listeAuteurs.remove(tf);
364
					}
449
				conteneurChamps.remove(p);
Line 365... Line 450...
365
				}
450
				fieldSetAuteurs.layout(true);
366
				genererChampsAuteur(idsAuteurs,false);
451
			}
-
 
452
			
-
 
453
		});
-
 
454
		p.add(lc);
-
 
455
		p.add(supp);
-
 
456
		conteneurChamps.add(p);
367
			}
457
		fieldSetAuteurs.layout(true);
368
			
458