Subversion Repositories eFlore/Applications.coel

Rev

Rev 1485 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1485 Rev 1487
Line 88... Line 88...
88
	private Button publicationsBoutonSupprimer = null;
88
	private Button publicationsBoutonSupprimer = null;
89
	private Button publicationsBoutonModifier = null;
89
	private Button publicationsBoutonModifier = null;
90
	private ComboBox<Valeur> typeRelationCombo = null;
90
	private ComboBox<Valeur> typeRelationCombo = null;
91
	private List<Valeur> roles = null;
91
	private List<Valeur> roles = null;
92
	private PublicationAPersonneListe listePublicationsLiees = new PublicationAPersonneListe();
92
	private PublicationAPersonneListe listePublicationsLiees = new PublicationAPersonneListe();
-
 
93
	boolean personneRecue = false;
-
 
94
	boolean rolesRecus = false;
Line 93... Line 95...
93
	
95
	
Line 94... Line 96...
94
	private FenetreForm fenetreFormulaire = null;
96
	private FenetreForm fenetreFormulaire = null;
95
	
97
	
Line 117... Line 119...
117
		publicationsAjoutees = new PublicationAPersonneListe();
119
		publicationsAjoutees = new PublicationAPersonneListe();
118
		publicationsSupprimees = new PublicationAPersonneListe();
120
		publicationsSupprimees = new PublicationAPersonneListe();
119
	}
121
	}
Line 120... Line 122...
120
	
122
	
121
	public void mettreAJourPersonne()	{
-
 
122
		
123
	public void mettreAJourPersonne()	{
123
		personneSelectionnee = ((PersonneForm) formulaire).personneSelectionnee;	
-
 
124
 
-
 
125
		//Boucle sur les role pour trouver les publication à personne
-
 
126
 
-
 
127
		// FIXME !
-
 
128
		//-------------------
-
 
129
		// Author : Cyprien
-
 
130
		//-------------------
-
 
131
		// J'ai rajouté le test (toString()!="") parce que bien que l'objet personneSelectionne soit vide, (personneSelectionnee!=null) retournait
-
 
132
		// tout de meme VRAI
-
 
133
		// Mais le vrai problème, c'est que personneSelectionne puisse être nul ! personneSelectionne devrait toujours etre affecté à quelqu'un.
-
 
134
		// De plus, il y a un étrange comportement lorsque l'on clique sur "modifier" une personne : je ne sais pas pourquoi mais les opérations 
-
 
135
		// s'effectuent deux fois au lieu d'une, c-a-d que le formulaire lance deux fois l'operation rafraichir au lieu d'une ... et l'opération
-
 
136
		// rafraichir lance à son tour de nombreuses opérations qui en conséquence sont effectuées deux fois au lieu d'une
-
 
137
		if ((roles != null) && (personneSelectionnee!=null) && (!personneSelectionnee.toString().equals("")))	{
-
 
138
 
-
 
139
			mediateur.selectionnerPublicationAPersonne(this, null, personneSelectionnee.getId(), roles, null);
-
 
140
		} 	
124
		personneSelectionnee = ((PersonneForm) formulaire).personneSelectionnee;	
Line 141... Line 125...
141
	}
125
	}
142
	
126
	
Line 344... Line 328...
344
		});
328
		});
Line 345... Line 329...
345
		
329
		
346
		publicationsCombo.getCombo().addListener(Events.Select, new Listener<BaseEvent>() {
330
		publicationsCombo.getCombo().addListener(Events.Select, new Listener<BaseEvent>() {
347
			public void handleEvent(BaseEvent be) {
331
			public void handleEvent(BaseEvent be) {
348
				if (publicationsSaisiesComboBox.getValeur() instanceof ModelData) {
-
 
349
					
-
 
350
					Debug.log("modeldata = "+publicationsSaisiesComboBox.getValeur().getProperties().toString());
-
 
351
					
332
				if (publicationsSaisiesComboBox.getValeur() instanceof ModelData) {
352
					Publication publicationSaisieSelectionne = new Publication(publicationsSaisiesComboBox.getValeur(), false);
-
 
353
					
-
 
354
					Debug.log("publicationSaisieSelectionne="+publicationSaisieSelectionne.toString());
-
 
355
					
333
					Publication publicationSaisieSelectionne = new Publication(publicationsSaisiesComboBox.getValeur(), false);					
356
					ajouterDansGrille(publicationSaisieSelectionne);
-
 
357
					
334
					ajouterDansGrille(publicationSaisieSelectionne);
358
					publicationsSaisiesComboBox.getCombo().setValue(null);
335
					publicationsSaisiesComboBox.getCombo().setValue(null);
359
				}
336
				}
360
			}
337
			}
Line 375... Line 352...
375
				publicationLiee.setPublicationLiee(publication);
352
				publicationLiee.setPublicationLiee(publication);
376
				publicationLiee.setIdPublication(publication.getId());
353
				publicationLiee.setIdPublication(publication.getId());
Line 377... Line 354...
377
 
354
 
378
				publicationLiee.set("_etat_", aDonnee.ETAT_AJOUTE);
355
				publicationLiee.set("_etat_", aDonnee.ETAT_AJOUTE);
379
				listePublicationsLiees.put(publication.getId(), publicationLiee);
-
 
380
 
-
 
Line 381... Line 356...
381
				Debug.log("insertion de : "+publicationLiee.toString());
356
				listePublicationsLiees.put(publication.getId(), publicationLiee);
382
				
357
				
383
				// Ajout à la grille
358
				// Ajout à la grille
384
				grille.getGrille().stopEditing();
359
				grille.getGrille().stopEditing();
Line 434... Line 409...
434
		modelTypePublicationAPersonne.addField("cpu_fascicule");
409
		modelTypePublicationAPersonne.addField("cpu_fascicule");
435
		modelTypePublicationAPersonne.addField("cpu_truk_pages");
410
		modelTypePublicationAPersonne.addField("cpu_truk_pages");
436
		modelTypePublicationAPersonne.addField("cpu_indication_nvt");
411
		modelTypePublicationAPersonne.addField("cpu_indication_nvt");
Line 437... Line 412...
437
		
412
		
438
		// Proxy
413
		// Proxy
Line 439... Line 414...
439
		ProxyPublicationsAPersonne<ModelData> proxyPublicationsAPersonne = new ProxyPublicationsAPersonne<ModelData>(null, null);		
414
		ProxyPublicationsAPersonne<ModelData> proxyPublicationsAPersonne = new ProxyPublicationsAPersonne<ModelData>(null, null, null);		
440
 
415
 
441
		// Colonnes
416
		// Colonnes
442
		List<ColumnConfig> colonnes = new ArrayList<ColumnConfig>();
417
		List<ColumnConfig> colonnes = new ArrayList<ColumnConfig>();
Line 460... Line 435...
460
		colonnes.add(creerColonneAnneePublication());
435
		colonnes.add(creerColonneAnneePublication());
461
		colonnes.add(new ColumnConfig("cpu_indication_nvt", i18nC.publicationNvt(), 75));
436
		colonnes.add(new ColumnConfig("cpu_indication_nvt", i18nC.publicationNvt(), 75));
462
		colonnes.add(new ColumnConfig("cpu_fascicule", i18nC.publicationFascicule(), 75));
437
		colonnes.add(new ColumnConfig("cpu_fascicule", i18nC.publicationFascicule(), 75));
463
		colonnes.add(new ColumnConfig("cpu_truk_pages", i18nC.publicationPage(), 50));
438
		colonnes.add(new ColumnConfig("cpu_truk_pages", i18nC.publicationPage(), 50));
Line 464... Line -...
464
		
-
 
465
		
439
		
466
		HashMap<String, String> virtualFields = new HashMap<String, String>();
440
		HashMap<String, String> virtualFields = new HashMap<String, String>();
467
		virtualFields.put("_editeur_", "cpu_ce_truk_editeur");
441
		virtualFields.put("_editeur_", "cpu_ce_truk_editeur");
468
		virtualFields.put("_annee_", "cpu_date_parution");
442
		virtualFields.put("_annee_", "cpu_date_parution");
469
		virtualFields.put("_role_", "cpuap_id_role");
443
		virtualFields.put("_role_", "cpuap_id_role");
Line 567... Line 541...
567
						Valeur valeurOntologie = (Valeur) valeur;
541
						Valeur valeurOntologie = (Valeur) valeur;
568
						retour = valeurOntologie.getId();
542
						retour = valeurOntologie.getId();
569
					}
543
					}
570
				}
544
				}
571
				return retour;  
545
				return retour;  
572
			}  
546
			}
573
		};
547
		};
Line 574... Line 548...
574
		
548
		
575
		GridCellRenderer<ModelData> relationRendu = new GridCellRenderer<ModelData>() {
549
		GridCellRenderer<ModelData> relationRendu = new GridCellRenderer<ModelData>() {
576
			public String render(ModelData modele, String property, ColumnData config, int rowIndex, int colIndex, ListStore<ModelData> store, Grid<ModelData> grille) {
550
			public String render(ModelData modele, String property, ColumnData config, int rowIndex, int colIndex, ListStore<ModelData> store, Grid<ModelData> grille) {
577
				// Gestion du texte afficher dans la cellule
551
				// Gestion du texte afficher dans la cellule
578
				String role = modele.get("_role_");
552
				String role = modele.get("_role_");
579
				String roleNom = "";
553
				String roleNom = "";
-
 
554
				if (typeRelationCombo.getStore() != null && role!=null && role.matches("[0-9]+")) {
580
				if (typeRelationCombo.getStore() != null && role!=null && role.matches("[0-9]+")) {
555
					if (typeRelationCombo.getStore().findModel("id_valeur", role) != null) {
581
					roleNom = typeRelationCombo.getStore().findModel("id_valeur", role).getNom();
556
						roleNom = typeRelationCombo.getStore().findModel("id_valeur", role).getNom();
-
 
557
						role = typeRelationCombo.getStore().findModel("id_valeur", role).getId();
-
 
558
					} else { Debug.log("role recherche="+role);
-
 
559
						Debug.log("typeRelationCombo.getStore().getCount()="+typeRelationCombo.getStore().getCount());
-
 
560
						for(int i=0; i<typeRelationCombo.getStore().getCount(); i++) {
-
 
561
							Debug.log(""+typeRelationCombo.getStore().getAt(i));
-
 
562
						}
582
					role = typeRelationCombo.getStore().findModel("id_valeur", role).getId();
563
					}
583
				}
564
				}
584
				modele.set("_role_", role);
565
				modele.set("_role_", role);
585
				return roleNom;
566
				return roleNom;
586
			}
567
			}
Line 617... Line 598...
617
		{			
598
		{			
618
			ValeurListe listeValeurs = (ValeurListe) nouvellesDonnees;	
599
			ValeurListe listeValeurs = (ValeurListe) nouvellesDonnees;	
619
			if (listeValeurs.getId().equals(config.getListeId("relationPersonnePublication")))	{
600
			if (listeValeurs.getId().equals(config.getListeId("relationPersonnePublication")))	{
620
				Formulaire.rafraichirComboBox(listeValeurs, typeRelationCombo);
601
				Formulaire.rafraichirComboBox(listeValeurs, typeRelationCombo);
621
				roles = listeValeurs.toList();
602
				roles = listeValeurs.toList();
622
				mettreAJourPersonne();
603
				rolesRecus = true;
-
 
604
				((ProxyPublicationsAPersonne)grille.getProxy()).setRolesId(roles);
-
 
605
				if (rolesRecus && personneRecue) grille.reload();
623
			}
606
			}
624
		}
607
		}
625
		else if (nouvellesDonnees instanceof PublicationListe)
-
 
626
		{
-
 
627
			/*PublicationListe listePublications = (PublicationListe) nouvellesDonnees;
-
 
628
			rafraichirPublicationListe(listePublications);*/
-
 
629
		}
-
 
630
		else if (nouvellesDonnees instanceof PublicationAPersonneListe)
608
		else if (nouvellesDonnees instanceof PublicationAPersonneListe)
631
		{			
609
		{			
632
			PublicationAPersonneListe papl = (PublicationAPersonneListe) nouvellesDonnees;
610
			PublicationAPersonneListe papl = (PublicationAPersonneListe) nouvellesDonnees;
633
			List<PublicationAPersonne> paplListe = papl.toList();
611
			List<PublicationAPersonne> paplListe = papl.toList();
634
			if (paplListe.size()>0){				
612
			if (paplListe.size()>0){				
Line 643... Line 621...
643
		else
621
		else
644
		{
622
		{
645
			GWT.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()), null);
623
			GWT.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()), null);
646
		}
624
		}
647
	}
625
	}
648
		/*
-
 
649
	private void rafraichirPublicationListe(PublicationListe listePublications) {
-
 
650
		publicationsSaisiesComboBox.getStore().removeAll();
-
 
651
		publicationsSaisiesComboBox.getStore().add(listePublications.toList());
-
 
652
		publicationsSaisiesComboBox.expand();
-
 
653
	}*/
-
 
Line 654... Line 626...
654
	
626
	
655
	public void rafraichirInformation(Information info) {
627
	public void rafraichirInformation(Information info) {
656
		if (info.getMessages() != null && !info.getMessages().toString().equals("[]")) {
628
		if (info.getMessages() != null && !info.getMessages().toString().equals("[]")) {
657
			GWT.log("MESSAGES:\n"+info.getMessages().toString(), null);
629
			GWT.log("MESSAGES:\n"+info.getMessages().toString(), null);
658
		}
630
		}
659
		String type = info.getType();
631
		String type = info.getType();
660
		if (type.equals("personne")) {
632
		if (type.equals("personne")) {
661
			mettreAJourPersonne();
633
			mettreAJourPersonne();
662
			((ProxyPublicationsAPersonne)grille.getProxy()).setPersonneId(personneSelectionnee.getId());
634
			((ProxyPublicationsAPersonne)grille.getProxy()).setPersonneId(personneSelectionnee.getId());
-
 
635
			personneRecue = true;
663
			grille.reload();
636
			if (rolesRecus && personneRecue) grille.reload();
664
		} else if (type.equals("publication_liees")) {
637
		} else if (type.equals("publication_liees")) {
665
			if (info.getDonnee(0) != null) {
638
			if (info.getDonnee(0) != null) {
666
				initialiser();
639
				initialiser();
667
				personneSelectionnee.setPublicationsLiees((PublicationAPersonneListe) info.getDonnee(0));
640
				personneSelectionnee.setPublicationsLiees((PublicationAPersonneListe) info.getDonnee(0));