Subversion Repositories eFlore/Applications.coel

Rev

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

Rev 1779 Rev 1878
Line 50... Line 50...
50
import com.extjs.gxt.ui.client.event.SelectionListener;
50
import com.extjs.gxt.ui.client.event.SelectionListener;
51
import com.extjs.gxt.ui.client.store.ListStore;
51
import com.extjs.gxt.ui.client.store.ListStore;
52
import com.extjs.gxt.ui.client.store.Store;
52
import com.extjs.gxt.ui.client.store.Store;
53
import com.extjs.gxt.ui.client.store.StoreEvent;
53
import com.extjs.gxt.ui.client.store.StoreEvent;
54
import com.extjs.gxt.ui.client.widget.ContentPanel;
54
import com.extjs.gxt.ui.client.widget.ContentPanel;
-
 
55
import com.extjs.gxt.ui.client.widget.Html;
55
import com.extjs.gxt.ui.client.widget.Info;
56
import com.extjs.gxt.ui.client.widget.Info;
-
 
57
import com.extjs.gxt.ui.client.widget.Label;
56
import com.extjs.gxt.ui.client.widget.LayoutContainer;
58
import com.extjs.gxt.ui.client.widget.LayoutContainer;
57
import com.extjs.gxt.ui.client.widget.MessageBox;
59
import com.extjs.gxt.ui.client.widget.MessageBox;
58
import com.extjs.gxt.ui.client.widget.Text;
60
import com.extjs.gxt.ui.client.widget.Text;
59
import com.extjs.gxt.ui.client.widget.button.Button;
61
import com.extjs.gxt.ui.client.widget.button.Button;
60
import com.extjs.gxt.ui.client.widget.button.ButtonBar;
62
import com.extjs.gxt.ui.client.widget.button.ButtonBar;
Line 73... Line 75...
73
import com.extjs.gxt.ui.client.widget.layout.RowData;
75
import com.extjs.gxt.ui.client.widget.layout.RowData;
74
import com.extjs.gxt.ui.client.widget.layout.RowLayout;
76
import com.extjs.gxt.ui.client.widget.layout.RowLayout;
75
import com.extjs.gxt.ui.client.widget.toolbar.SeparatorToolItem;
77
import com.extjs.gxt.ui.client.widget.toolbar.SeparatorToolItem;
76
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
78
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
77
import com.google.gwt.core.client.GWT;
79
import com.google.gwt.core.client.GWT;
-
 
80
import com.google.gwt.user.client.Window;
Line 78... Line 81...
78
 
81
 
Line 79... Line 82...
79
 
82
 
Line 123... Line 126...
123
	private Sequenceur sequenceur;
126
	private Sequenceur sequenceur;
Line 124... Line 127...
124
	
127
	
125
	private String modeDeCreation = null;
128
	private String modeDeCreation = null;
Line -... Line 129...
-
 
129
	boolean changeOrderMarker = false;
-
 
130
	
-
 
131
	private Label infosAuteurFmt = null;
Line 126... Line 132...
126
	boolean changeOrderMarker = false;
132
	private ContentPanel infosAuteursNonPresentsPanel = null;
127
	
133
	
Line 128... Line 134...
128
	
134
	
Line 147... Line 153...
147
		publication = new Publication();
153
		publication = new Publication();
148
		publication.setId(publicationId);
154
		publication.setId(publicationId);
149
		this.publicationId = publicationId;
155
		this.publicationId = publicationId;
150
		auteursInitialListe = new PublicationAPersonneListe();
156
		auteursInitialListe = new PublicationAPersonneListe();
151
		initialiserAuteurs();	// Crée les listes d'auteurs ajoutés et supprimés
157
		initialiserAuteurs();	// Crée les listes d'auteurs ajoutés et supprimés
152
		
-
 
153
		// Si 'publicationId' est vide alors on est en mode "AJOUTER", sinon on est en mode "MODIFIER" 
158
		// Si 'publicationId' est vide alors on est en mode "AJOUTER", sinon on est en mode "MODIFIER" 
154
		modeDeCreation = (UtilString.isEmpty(publicationId) ? Formulaire.MODE_AJOUTER : Formulaire.MODE_MODIFIER);
159
		modeDeCreation = (UtilString.isEmpty(publicationId) ? Formulaire.MODE_AJOUTER : Formulaire.MODE_MODIFIER);
155
		initialiserFormulaire(mediateurCourrant, modeDeCreation, MenuApplicationId.PUBLICATION);
160
		initialiserFormulaire(mediateurCourrant, modeDeCreation, MenuApplicationId.PUBLICATION);
156
		panneauFormulaire.setLayout(new RowLayout());
161
		panneauFormulaire.setLayout(new RowLayout());
157
		panneauFormulaire.setStyleAttribute("padding", "0");
162
		panneauFormulaire.setStyleAttribute("padding", "0");
Line 623... Line 628...
623
					ModelData selection = itAuteurs.next();
628
					ModelData selection = itAuteurs.next();
624
					PublicationAPersonne pap = new PublicationAPersonne(selection, aDonnee.GARDER_PREFIXE);
629
					PublicationAPersonne pap = new PublicationAPersonne(selection, aDonnee.GARDER_PREFIXE);
625
					auteursInitialListe.put(pap.getId(), pap);
630
					auteursInitialListe.put(pap.getId(), pap);
626
					Log.debug("PublicationAPersonne ajoutée à la liste initiale avec l'id :"+pap.getId()+pap.toString()+selection.getProperties().toString());
631
					Log.debug("PublicationAPersonne ajoutée à la liste initiale avec l'id :"+pap.getId()+pap.toString()+selection.getProperties().toString());
627
				}
632
				}
-
 
633
				controlerCoherenceAuteurs();
-
 
634
				//zefgzf
628
				Log.debug("Initialisation liste auteur :"+auteursInitialListe.size());
635
				Log.debug("Initialisation liste auteur :"+auteursInitialListe.size());
629
			}  
636
			}  
630
		});
637
		});
Line 631... Line 638...
631
		
638
		
Line 677... Line 684...
677
	private void creerChampsAuteur() {
684
	private void creerChampsAuteur() {
678
		auteursFieldset.removeAll();
685
		auteursFieldset.removeAll();
679
		barreOutils = creerBarreOutilsGrille();
686
		barreOutils = creerBarreOutilsGrille();
680
		auteursFieldset.setTopComponent(barreOutils);
687
		auteursFieldset.setTopComponent(barreOutils);
681
		grilleAuteurs = creerGrilleAuteurs();
688
		grilleAuteurs = creerGrilleAuteurs();
682
		auteursFieldset.add(grilleAuteurs);
689
		auteursFieldset.add(grilleAuteurs);				
-
 
690
		
683
		auteursFieldset.layout();
691
		auteursFieldset.layout();
684
	}
692
	}
Line 685... Line 693...
685
	
693
	
686
	private void creerZoneGeneralites() {
694
	private void creerZoneGeneralites() {
Line 691... Line 699...
691
		generalitesFieldset = new FieldSet();
699
		generalitesFieldset = new FieldSet();
692
		generalitesFieldset.setHeadingHtml("Informations générales");
700
		generalitesFieldset.setHeadingHtml("Informations générales");
693
		generalitesFieldset.setCollapsible(true);
701
		generalitesFieldset.setCollapsible(true);
694
		generalitesFieldset.setLayout(layout);
702
		generalitesFieldset.setLayout(layout);
Line -... Line 703...
-
 
703
		
-
 
704
		infosAuteursNonPresentsPanel = new ContentPanel();
-
 
705
		Label LabelAuteurFmt = new Label("Auteurs de la publication : ");
-
 
706
		LabelAuteurFmt.setId("label-auteurs-non-presents");
-
 
707
		infosAuteurFmt = new Label(publication.getAuteur());
-
 
708
		Label avertissementAuteurs = new Label("Attention, Certains auteurs apparaissent ci-dessous mais pas dans la grille des auteurs. "+
-
 
709
												"Ceci signifie que la publication a été importée sans que tous les auteurs aient été créés auparavant.<br />"+
-
 
710
												"Si vous souhaitez modifier cette publication, nous vous invitons à y associer correctement les auteurs grâce à la grille ci-dessus.<br />");
-
 
711
		
-
 
712
		infosAuteursNonPresentsPanel.setHeaderVisible(false);
-
 
713
		infosAuteursNonPresentsPanel.setId("infos-auteurs-non-presents");
-
 
714
		
-
 
715
		infosAuteursNonPresentsPanel.add(avertissementAuteurs);
-
 
716
		infosAuteursNonPresentsPanel.add(LabelAuteurFmt);
-
 
717
		infosAuteursNonPresentsPanel.add(infosAuteurFmt);
-
 
718
		infosAuteursNonPresentsPanel.setVisible(false);
-
 
719
		
-
 
720
		generalitesFieldset.add(infosAuteursNonPresentsPanel);
-
 
721
		
695
		
722
		
696
		titreChp = new TextField<String>();
723
		titreChp = new TextField<String>();
697
		titreChp.setName("cpu");
724
		titreChp.setName("cpu");
698
		titreChp.setFieldLabel("Titre de l'article ou de l'ouvrage");
725
		titreChp.setFieldLabel("Titre de l'article ou de l'ouvrage");
699
		titreChp.addStyleName(ComposantClass.OBLIGATOIRE);
726
		titreChp.addStyleName(ComposantClass.OBLIGATOIRE);
Line 1041... Line 1068...
1041
		}
1068
		}
Line 1042... Line 1069...
1042
		
1069
		
1043
		return nomComplet;
1070
		return nomComplet;
Line -... Line 1071...
-
 
1071
	}
-
 
1072
	
-
 
1073
	public void controlerCoherenceAuteurs() {
-
 
1074
		if(doitAfficherAvertissementAuteur()) {
-
 
1075
			infosAuteurFmt.setHtml(publication.getAuteur());
-
 
1076
			infosAuteursNonPresentsPanel.setVisible(true);
-
 
1077
			infosAuteursNonPresentsPanel.setHeight(50);
-
 
1078
		} else {
-
 
1079
			infosAuteursNonPresentsPanel.setVisible(false);
-
 
1080
			infosAuteursNonPresentsPanel.setHeight(0);
-
 
1081
		}
-
 
1082
	}
-
 
1083
	
-
 
1084
	private boolean doitAfficherAvertissementAuteur() {
-
 
1085
		String auteurFmtreconstruit = construireIntituleAuteur();
-
 
1086
		String[] auteurFmtreconstruitParts = auteurFmtreconstruit.split(",");
-
 
1087
		String[] auteurParts = publication.getAuteur().split(",");
-
 
1088
		
-
 
1089
		String[] auteurFmtreconstruitSpaces = auteurFmtreconstruit.split(" ");
-
 
1090
		String[] auteurPartsSpaces = publication.getAuteur().split(" ");
-
 
1091
		
-
 
1092
		return (modeDeCreation == MODE_MODIFIER && 
-
 
1093
				(auteurFmtreconstruitParts.length != auteurParts.length ||
-
 
1094
				auteurFmtreconstruitSpaces.length != auteurPartsSpaces.length));
1044
	}
1095
	}
1045
	
1096
	
Line 1046... Line 1097...
1046
	//+----------------------------------------------------------------------------------------------------------------+
1097
	//+----------------------------------------------------------------------------------------------------------------+
1047
	//    Méthodes publiques
1098
	//    Méthodes publiques