Subversion Repositories eFlore/Applications.coel

Rev

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

Rev 1329 Rev 1369
1
package org.tela_botanica.client.vues.collection;
1
package org.tela_botanica.client.vues.collection;
2
 
2
 
3
import java.util.HashMap;
3
import java.util.HashMap;
4
import java.util.Iterator;
4
import java.util.Iterator;
5
 
5
 
6
import org.tela_botanica.client.ComposantClass;
6
import org.tela_botanica.client.ComposantClass;
7
import org.tela_botanica.client.ComposantId;
7
import org.tela_botanica.client.ComposantId;
8
import org.tela_botanica.client.Mediateur;
8
import org.tela_botanica.client.Mediateur;
9
import org.tela_botanica.client.interfaces.Rafraichissable;
9
import org.tela_botanica.client.interfaces.Rafraichissable;
10
import org.tela_botanica.client.modeles.Information;
10
import org.tela_botanica.client.modeles.Information;
11
import org.tela_botanica.client.modeles.ValeurListe;
11
import org.tela_botanica.client.modeles.ValeurListe;
12
import org.tela_botanica.client.modeles.collection.Collection;
12
import org.tela_botanica.client.modeles.collection.Collection;
13
import org.tela_botanica.client.modeles.collection.CollectionACommentaire;
13
import org.tela_botanica.client.modeles.collection.CollectionACommentaire;
14
import org.tela_botanica.client.modeles.collection.CollectionACommentaireListe;
14
import org.tela_botanica.client.modeles.collection.CollectionACommentaireListe;
15
import org.tela_botanica.client.modeles.collection.CollectionAPersonne;
15
import org.tela_botanica.client.modeles.collection.CollectionAPersonne;
16
import org.tela_botanica.client.modeles.collection.CollectionAPersonneListe;
16
import org.tela_botanica.client.modeles.collection.CollectionAPersonneListe;
17
import org.tela_botanica.client.modeles.collection.CollectionAPublication;
17
import org.tela_botanica.client.modeles.collection.CollectionAPublication;
18
import org.tela_botanica.client.modeles.collection.CollectionAPublicationListe;
18
import org.tela_botanica.client.modeles.collection.CollectionAPublicationListe;
19
import org.tela_botanica.client.modeles.collection.CollectionBotanique;
19
import org.tela_botanica.client.modeles.collection.CollectionBotanique;
20
import org.tela_botanica.client.modeles.collection.UniteBase;
20
import org.tela_botanica.client.modeles.collection.UniteBase;
21
import org.tela_botanica.client.modeles.collection.UniteRangement;
21
import org.tela_botanica.client.modeles.collection.UniteRangement;
22
import org.tela_botanica.client.modeles.commentaire.Commentaire;
22
import org.tela_botanica.client.modeles.commentaire.Commentaire;
23
import org.tela_botanica.client.modeles.personne.Personne;
23
import org.tela_botanica.client.modeles.personne.Personne;
24
import org.tela_botanica.client.modeles.projet.ProjetListe;
24
import org.tela_botanica.client.modeles.projet.ProjetListe;
25
import org.tela_botanica.client.modeles.publication.Publication;
25
import org.tela_botanica.client.modeles.publication.Publication;
26
import org.tela_botanica.client.modeles.structure.Structure;
26
import org.tela_botanica.client.modeles.structure.Structure;
27
import org.tela_botanica.client.synchronisation.Sequenceur;
27
import org.tela_botanica.client.synchronisation.Sequenceur;
28
import org.tela_botanica.client.util.Debug;
28
import org.tela_botanica.client.util.Debug;
29
import org.tela_botanica.client.util.UtilNombre;
29
import org.tela_botanica.client.util.UtilNombre;
30
import org.tela_botanica.client.util.UtilString;
30
import org.tela_botanica.client.util.UtilString;
31
import org.tela_botanica.client.vues.DetailVue;
31
import org.tela_botanica.client.vues.DetailVue;
32
 
32
 
33
import com.extjs.gxt.ui.client.Style.Scroll;
33
import com.extjs.gxt.ui.client.Style.Scroll;
34
import com.extjs.gxt.ui.client.util.Format;
34
import com.extjs.gxt.ui.client.util.Format;
35
import com.extjs.gxt.ui.client.util.Params;
35
import com.extjs.gxt.ui.client.util.Params;
36
import com.extjs.gxt.ui.client.widget.ContentPanel;
36
import com.extjs.gxt.ui.client.widget.ContentPanel;
37
import com.extjs.gxt.ui.client.widget.Html;
37
import com.extjs.gxt.ui.client.widget.Html;
38
import com.extjs.gxt.ui.client.widget.TabItem;
38
import com.extjs.gxt.ui.client.widget.TabItem;
39
import com.extjs.gxt.ui.client.widget.TabPanel;
39
import com.extjs.gxt.ui.client.widget.TabPanel;
40
import com.extjs.gxt.ui.client.widget.layout.AnchorLayout;
40
import com.extjs.gxt.ui.client.widget.layout.AnchorLayout;
41
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
41
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
42
 
42
 
43
public class CollectionDetailVue extends DetailVue implements Rafraichissable {
43
public class CollectionDetailVue extends DetailVue implements Rafraichissable {
44
 
44
 
45
	private Collection collection = null;
45
	private Collection collection = null;
46
	private boolean collectionChargementOk = false;
46
	private boolean collectionChargementOk = false;
47
	private boolean personnesLieesChargementOk = false;
47
	private boolean personnesLieesChargementOk = false;
48
	private boolean publicationsLieesChargementOk = false;
48
	private boolean publicationsLieesChargementOk = false;
49
	private boolean commentairesLieesChargementOk = false;
49
	private boolean commentairesLieesChargementOk = false;
50
	private Structure structure = null;
50
	private Structure structure = null;
51
 
51
 
52
	private String enteteTpl = null;
52
	private String enteteTpl = null;
53
	private String generalTpl = null;
53
	private String generalTpl = null;
54
	private String personneTpl = null;
54
	private String personneTpl = null;
55
	private String tableauPersonnesLieesTpl = null;
55
	private String tableauPersonnesLieesTpl = null;
56
	private String lignePersonneLieeTpl = null;
56
	private String lignePersonneLieeTpl = null;
57
	private String publicationTpl = null;
57
	private String publicationTpl = null;
58
	private String tableauPublicationsLieesTpl = null;
58
	private String tableauPublicationsLieesTpl = null;
59
	private String lignePublicationLieeTpl = null;
59
	private String lignePublicationLieeTpl = null;
60
	private String descriptionTpl = null;
60
	private String descriptionTpl = null;
61
	private String contenuTpl = null;
61
	private String contenuTpl = null;
62
	private String inventaireTpl = null;
62
	private String inventaireTpl = null;
63
	private String commentaireTpl = null;
63
	private String commentaireTpl = null;
64
	private String tableauCommentairesLieesTpl = null;
64
	private String tableauCommentairesLieesTpl = null;
65
	private String ligneCommentaireLieeTpl = null;
65
	private String ligneCommentaireLieeTpl = null;
66
	
66
	
67
	private ContentPanel panneauPrincipal = null;
67
	private ContentPanel panneauPrincipal = null;
68
	private Html entete = null;
68
	private Html entete = null;
69
	private TabPanel onglets = null;
69
	private TabPanel onglets = null;
70
	private TabItem generalOnglet = null;
70
	private TabItem generalOnglet = null;
71
	private TabItem personneOnglet = null;
71
	private TabItem personneOnglet = null;
72
	private TabItem publicationOnglet = null;
72
	private TabItem publicationOnglet = null;
73
	private TabItem descriptionOnglet = null;
73
	private TabItem descriptionOnglet = null;
74
	private TabItem contenuOnglet = null;
74
	private TabItem contenuOnglet = null;
75
	private TabItem inventaireOnglet = null;
75
	private TabItem inventaireOnglet = null;
76
	private TabItem commentaireOnglet = null;
76
	private TabItem commentaireOnglet = null;
77
	private String tableauUniteRangementTpl;
77
	private String tableauUniteRangementTpl;
78
	private String ligneUniteRangementTpl;
78
	private String ligneUniteRangementTpl;
79
	private String tableauUniteBaseTpl;
79
	private String tableauUniteBaseTpl;
80
	private String ligneUniteBaseTpl;
80
	private String ligneUniteBaseTpl;
81
 
81
 
82
	private Sequenceur sequenceur;
82
	private Sequenceur sequenceur;
83
	
83
	
84
	public CollectionDetailVue(Mediateur mediateurCourant, Sequenceur sequenceur) {
84
	public CollectionDetailVue(Mediateur mediateurCourant, Sequenceur sequenceur) {
85
		super(mediateurCourant);
85
		super(mediateurCourant);
86
		this.sequenceur = sequenceur;
86
		this.sequenceur = sequenceur;
87
		initialiserTousLesTpl();
87
		initialiserTousLesTpl();
88
		chargerOntologie();
88
		chargerOntologie();
89
		
89
		
90
		panneauPrincipal = new ContentPanel();
90
		panneauPrincipal = new ContentPanel();
91
		panneauPrincipal.setLayout(new FitLayout());
91
		panneauPrincipal.setLayout(new FitLayout());
92
		panneauPrincipal.setHeaderVisible(false);
92
		panneauPrincipal.setHeaderVisible(false);
93
		panneauPrincipal.setBodyBorder(false);
93
		panneauPrincipal.setBodyBorder(false);
94
			
94
			
95
	    entete = new Html();
95
	    entete = new Html();
96
	    entete.setId(ComposantId.ZONE_DETAIL_ENTETE);
96
	    entete.setId(ComposantId.ZONE_DETAIL_ENTETE);
97
	    panneauPrincipal.setTopComponent(entete);
97
	    panneauPrincipal.setTopComponent(entete);
98
		
98
		
99
		onglets = new TabPanel();
99
		onglets = new TabPanel();
100
		onglets.setId(ComposantId.ZONE_DETAIL_CORPS);
100
		onglets.setId(ComposantId.ZONE_DETAIL_CORPS);
101
		onglets.setBodyBorder(false);
101
		onglets.setBodyBorder(false);
102
 
102
 
103
		generalOnglet = new TabItem(i18nC.structureInfoGeneral());
103
		generalOnglet = new TabItem(i18nC.structureInfoGeneral());
104
		generalOnglet.setLayout(new AnchorLayout());
104
		generalOnglet.setLayout(new AnchorLayout());
105
		generalOnglet.setScrollMode(Scroll.AUTO);
105
		generalOnglet.setScrollMode(Scroll.AUTO);
106
		onglets.add(generalOnglet);
106
		onglets.add(generalOnglet);
107
		
107
		
108
		personneOnglet = new TabItem(i18nC.collectionPersonne());
108
		personneOnglet = new TabItem(i18nC.collectionPersonne());
109
		personneOnglet.setLayout(new AnchorLayout());
109
		personneOnglet.setLayout(new AnchorLayout());
110
		personneOnglet.setScrollMode(Scroll.AUTO);
110
		personneOnglet.setScrollMode(Scroll.AUTO);
111
		onglets.add(personneOnglet);
111
		onglets.add(personneOnglet);
112
		
112
		
113
		publicationOnglet = new TabItem(i18nC.collectionPublication());
113
		publicationOnglet = new TabItem(i18nC.collectionPublication());
114
		publicationOnglet.setLayout(new AnchorLayout());
114
		publicationOnglet.setLayout(new AnchorLayout());
115
		publicationOnglet.setScrollMode(Scroll.AUTO);
115
		publicationOnglet.setScrollMode(Scroll.AUTO);
116
		onglets.add(publicationOnglet);
116
		onglets.add(publicationOnglet);
117
		
117
		
118
		descriptionOnglet = new TabItem(i18nC.collectionDescription());
118
		descriptionOnglet = new TabItem(i18nC.collectionDescription());
119
		descriptionOnglet.setLayout(new AnchorLayout());
119
		descriptionOnglet.setLayout(new AnchorLayout());
120
		descriptionOnglet.setScrollMode(Scroll.AUTO);
120
		descriptionOnglet.setScrollMode(Scroll.AUTO);
121
		onglets.add(descriptionOnglet);
121
		onglets.add(descriptionOnglet);
122
		
122
		
123
		contenuOnglet = new TabItem(i18nC.collectionContenu());
123
		contenuOnglet = new TabItem(i18nC.collectionContenu());
124
		contenuOnglet.setLayout(new AnchorLayout());
124
		contenuOnglet.setLayout(new AnchorLayout());
125
		contenuOnglet.setScrollMode(Scroll.AUTO);
125
		contenuOnglet.setScrollMode(Scroll.AUTO);
126
		onglets.add(contenuOnglet);
126
		onglets.add(contenuOnglet);
127
				
127
				
128
		inventaireOnglet = new TabItem(i18nC.collectionInventaire());
128
		inventaireOnglet = new TabItem(i18nC.collectionInventaire());
129
		inventaireOnglet.setLayout(new AnchorLayout());
129
		inventaireOnglet.setLayout(new AnchorLayout());
130
		inventaireOnglet.setScrollMode(Scroll.AUTO);
130
		inventaireOnglet.setScrollMode(Scroll.AUTO);
131
		onglets.add(inventaireOnglet);
131
		onglets.add(inventaireOnglet);
132
		
132
		
133
		commentaireOnglet = new TabItem(i18nC.collectionCommentaire());
133
		commentaireOnglet = new TabItem(i18nC.collectionCommentaire());
134
		commentaireOnglet.setLayout(new AnchorLayout());
134
		commentaireOnglet.setLayout(new AnchorLayout());
135
		commentaireOnglet.setScrollMode(Scroll.AUTO);
135
		commentaireOnglet.setScrollMode(Scroll.AUTO);
136
		onglets.add(commentaireOnglet);
136
		onglets.add(commentaireOnglet);
137
		
137
		
138
		panneauPrincipal.add(onglets);
138
		panneauPrincipal.add(onglets);
139
		add(panneauPrincipal);
139
		add(panneauPrincipal);
140
	}
140
	}
141
	
141
	
142
	private void initialiserTousLesTpl() {
142
	private void initialiserTousLesTpl() {
143
		initialiserEnteteHtmlTpl();
143
		initialiserEnteteHtmlTpl();
144
		initialiserGeneralTpl();
144
		initialiserGeneralTpl();
145
		initialiserPersonneTpl();
145
		initialiserPersonneTpl();
146
		initialiserTableauPersonnesLieesTpl();
146
		initialiserTableauPersonnesLieesTpl();
147
		initialiserLignePersonneLieeTpl();
147
		initialiserLignePersonneLieeTpl();
148
		initialiserPublicationTpl();
148
		initialiserPublicationTpl();
149
		initialiserTableauPublicationsLieesTpl();
149
		initialiserTableauPublicationsLieesTpl();
150
		initialiserLignePublicationLieeTpl();
150
		initialiserLignePublicationLieeTpl();
151
		initialiserContenuTpl();
151
		initialiserContenuTpl();
152
		initialiserDescriptionTpl();
152
		initialiserDescriptionTpl();
153
		initialiserTableauUniteRangementTpl();
153
		initialiserTableauUniteRangementTpl();
154
		initialiserLigneUniteRangementTpl();
154
		initialiserLigneUniteRangementTpl();
155
		initialiserTableauUniteBaseTpl();
155
		initialiserTableauUniteBaseTpl();
156
		initialiserLigneUniteBaseTpl();
156
		initialiserLigneUniteBaseTpl();
157
		initialiserInventaireTpl();
157
		initialiserInventaireTpl();
158
		initialiserCommentaireTpl();
158
		initialiserCommentaireTpl();
159
		initialiserTableauCommentairesLieesTpl();
159
		initialiserTableauCommentairesLieesTpl();
160
		initialiserLigneCommentaireLieeTpl();
160
		initialiserLigneCommentaireLieeTpl();
161
	}
161
	}
162
	
162
	
163
	private void initialiserEnteteHtmlTpl() {
163
	private void initialiserEnteteHtmlTpl() {
164
		enteteTpl = 	
164
		enteteTpl = 	
165
			"<div id='{css_id}'>"+
165
			"<div id='{css_id}'>"+
166
			"	<h1>{nom}</h1>"+
166
			"	<h1>{nom}</h1>"+
167
			"	<h2>{structure}<span class='{css_meta}'>{projet} <br /> {i18n_id}:{id} - {guid}</span></h2>" +
167
			"	<h2>{structure}<span class='{css_meta}'>{projet} <br /> {i18n_id}:{id} - {guid}</span></h2>" +
168
			"</div>";
168
			"</div>";
169
	}
169
	}
170
	
170
	
171
	private void initialiserGeneralTpl() {
171
	private void initialiserGeneralTpl() {
172
		generalTpl =
172
		generalTpl =
173
			"<div class='{css_corps}'>"+
173
			"<div class='{css_corps}'>"+
174
			"	<div class='{css_fieldset}'>"+
174
			"	<div class='{css_fieldset}'>"+
175
			"		<h2>{i18n_titre_identification}</h2>"+
175
			"		<h2>{i18n_titre_identification}</h2>"+
176
			"		<span class='{css_label}'>{i18n_nom_alternatif} :</span> {nom_alternatif}<br />"+
176
			"		<span class='{css_label}'>{i18n_nom_alternatif} :</span> {nom_alternatif}<br />"+
177
			"		<span class='{css_label}'>{i18n_mere} :</span> {mere}<br />"+
177
			"		<span class='{css_label}'>{i18n_mere} :</span> {mere}<br />"+
178
			"		<span class='{css_label}'>{i18n_type_ncd} :</span> {type_ncd}<br />"+
178
			"		<span class='{css_label}'>{i18n_type_ncd} :</span> {type_ncd}<br />"+
179
			"		<span class='{css_label}'>{i18n_type_depot} :</span> {type_depot}<br />"+
179
			"		<span class='{css_label}'>{i18n_type_depot} :</span> {type_depot}<br />"+
180
			"		<span class='{css_label}'>{i18n_id_alternatif} :</span> {id_alternatif}<br />"+
180
			"		<span class='{css_label}'>{i18n_id_alternatif} :</span> {id_alternatif}<br />"+
181
			"		<span class='{css_label}'>{i18n_code} :</span> {code}<br />"+
181
			"		<span class='{css_label}'>{i18n_code} :</span> {code}<br />"+
182
			"		<span class='{css_label}'>{i18n_cote} :</span> {cote}<br />"+
182
			"		<span class='{css_label}'>{i18n_cote} :</span> {cote}<br />"+
183
			"	</div>"+
183
			"	</div>"+
184
			"	<div class='{css_fieldset}'>"+
184
			"	<div class='{css_fieldset}'>"+
185
			"		<h2>{i18n_general_collection_titre}</h2>"+
185
			"		<h2>{i18n_general_collection_titre}</h2>"+
186
			"		<span class='{css_label}'>{i18n_description} :</span> {description}<br />"+
186
			"		<span class='{css_label}'>{i18n_description} :</span> {description}<br />"+
187
			"		<span class='{css_label}'>{i18n_description_specialiste} :</span> {description_specialiste}<br />"+
187
			"		<span class='{css_label}'>{i18n_description_specialiste} :</span> {description_specialiste}<br />"+
188
			"		<span class='{css_label}'>{i18n_historique} :</span> {historique}<br />"+
188
			"		<span class='{css_label}'>{i18n_historique} :</span> {historique}<br />"+
189
			"		<span class='{css_label}'>{i18n_web} :</span> {web}<br />"+
189
			"		<span class='{css_label}'>{i18n_web} :</span> {web}<br />"+
190
			"	</div>"+
190
			"	</div>"+
191
			"	<hr class='{css_clear}'/>"+
191
			"	<hr class='{css_clear}'/>"+
192
			"	<div class='{css_fieldset}'>"+
192
			"	<div class='{css_fieldset}'>"+
193
			"		<h2>{i18n_couverture_collection_titre}</h2>"+
193
			"		<h2>{i18n_couverture_collection_titre}</h2>"+
194
			"		<span class='{css_label}'>{i18n_groupement_principe} :</span> {groupement_principe}<br />"+
194
			"		<span class='{css_label}'>{i18n_groupement_principe} :</span> {groupement_principe}<br />"+
195
			"		<span class='{css_label}'>{i18n_groupement_but} :</span> {groupement_but}<br />"+
195
			"		<span class='{css_label}'>{i18n_groupement_but} :</span> {groupement_but}<br />"+
196
			"		<span class='{css_label}'>{i18n_couverture_geo} :</span> {couverture_geo}<br />"+
196
			"		<span class='{css_label}'>{i18n_couverture_geo} :</span> {couverture_geo}<br />"+
197
			"	</div>"+
197
			"	</div>"+
198
			"	<div class='{css_fieldset}'>"+
198
			"	<div class='{css_fieldset}'>"+
199
			"		<h2>{i18n_specimen_type_titre}</h2>"+
199
			"		<h2>{i18n_specimen_type_titre}</h2>"+
200
			"		<span class='{css_label}'>{i18n_specimen_type_presence} :</span> {specimen_type_presence}<br />"+
200
			"		<span class='{css_label}'>{i18n_specimen_type_presence} :</span> {specimen_type_presence}<br />"+
201
			"		<span class='{css_label}'>{i18n_specimen_type_nombre} :</span> {specimen_type_nombre}<br />"+
201
			"		<span class='{css_label}'>{i18n_specimen_type_nombre} :</span> {specimen_type_nombre}<br />"+
202
			"		<span class='{css_label}'>{i18n_specimen_type_classement} :</span> {specimen_type_classement}<br />"+
202
			"		<span class='{css_label}'>{i18n_specimen_type_classement} :</span> {specimen_type_classement}<br />"+
203
			"	</div>"+
203
			"	</div>"+
204
			"	<hr class='{css_clear}'/>"+
204
			"	<hr class='{css_clear}'/>"+
205
			"</div>";
205
			"</div>";
206
	}
206
	}
207
	
207
	
208
	private void initialiserPersonneTpl() {
208
	private void initialiserPersonneTpl() {
209
		personneTpl =
209
		personneTpl =
210
			"<div class='{css_corps}'>"+
210
			"<div class='{css_corps}'>"+
211
			"	<h2>{i18n_titre_personne}</h2>"+
211
			"	<h2>{i18n_titre_personne}</h2>"+
212
			"	{tableau_personnes_liees}"+
212
			"	{tableau_personnes_liees}"+
213
			"</div>";
213
			"</div>";
214
	}
214
	}
215
	
215
	
216
	private void initialiserTableauPersonnesLieesTpl() {
216
	private void initialiserTableauPersonnesLieesTpl() {
217
		tableauPersonnesLieesTpl =
217
		tableauPersonnesLieesTpl =
218
			"<table>"+
218
			"<table>"+
219
			"	<thead>"+
219
			"	<thead>"+
220
			"		<tr>" +
220
			"		<tr>" +
221
			"			<th>{i18n_relation}</th>" +
221
			"			<th>{i18n_relation}</th>" +
222
			"			<th>{i18n_nom_complet}</th>" +
222
			"			<th>{i18n_nom_complet}</th>" +
223
			"			<th>{i18n_nom}</th>" +
223
			"			<th>{i18n_nom}</th>" +
224
			"			<th>{i18n_prenom}</th>" +
224
			"			<th>{i18n_prenom}</th>" +
225
			"			<th>{i18n_naissance_date}</th>" +
225
			"			<th>{i18n_naissance_date}</th>" +
226
			"			<th>{i18n_naissance_lieu}</th>" +
226
			"			<th>{i18n_naissance_lieu}</th>" +
227
			"			<th>{i18n_etre_decede}</th>" +
227
			"			<th>{i18n_etre_decede}</th>" +
228
			"			<th>{i18n_deces_date}</th>" +
228
			"			<th>{i18n_deces_date}</th>" +
229
			"			<th>{i18n_deces_lieu}</th>" +
229
			"			<th>{i18n_deces_lieu}</th>" +
230
			"		</tr>"+
230
			"		</tr>"+
231
			"	</thead>"+
231
			"	</thead>"+
232
			"	<tbody>"+
232
			"	<tbody>"+
233
			"		{lignes}"+
233
			"		{lignes}"+
234
			"	</tbody>"+
234
			"	</tbody>"+
235
			"</table>";
235
			"</table>";
236
	}
236
	}
237
	
237
	
238
	private void initialiserLignePersonneLieeTpl() {
238
	private void initialiserLignePersonneLieeTpl() {
239
		lignePersonneLieeTpl =
239
		lignePersonneLieeTpl =
240
			"<tr>"+
240
			"<tr>"+
241
			"	<td>{relation}</td>"+
241
			"	<td>{relation}</td>"+
242
			"	<td>{nom_complet}</td>"+
242
			"	<td>{nom_complet}</td>"+
243
			"	<td>{nom}</td>"+
243
			"	<td>{nom}</td>"+
244
			"	<td>{prenom}</td>"+
244
			"	<td>{prenom}</td>"+
245
			"	<td>{naissance_date}</td>"+
245
			"	<td>{naissance_date}</td>"+
246
			"	<td>{naissance_lieu}</td>"+
246
			"	<td>{naissance_lieu}</td>"+
247
			"	<td>{etre_decede}</td>"+
247
			"	<td>{etre_decede}</td>"+
248
			"	<td>{deces_date}</td>"+
248
			"	<td>{deces_date}</td>"+
249
			"	<td>{deces_lieu}</td>"+
249
			"	<td>{deces_lieu}</td>"+
250
			"</tr>";
250
			"</tr>";
251
	}
251
	}
252
	
252
	
253
	private void initialiserPublicationTpl() {
253
	private void initialiserPublicationTpl() {
254
		publicationTpl =
254
		publicationTpl =
255
			"<div class='{css_corps}'>"+
255
			"<div class='{css_corps}'>"+
256
			"	<h2>{i18n_titre_publication}</h2>"+
256
			"	<h2>{i18n_titre_publication}</h2>"+
257
			"	{tableau_publications_liees}"+
257
			"	{tableau_publications_liees}"+
258
			"</div>";
258
			"</div>";
259
	}
259
	}
260
	
260
	
261
	private void initialiserTableauPublicationsLieesTpl() {
261
	private void initialiserTableauPublicationsLieesTpl() {
262
		tableauPublicationsLieesTpl =
262
		tableauPublicationsLieesTpl =
263
			"<table>"+
263
			"<table>"+
264
			"	<thead>"+
264
			"	<thead>"+
265
			"		<tr>" +
265
			"		<tr>" +
266
			"			<th>{i18n_auteur}</th>" +
266
			"			<th>{i18n_auteur}</th>" +
267
			"			<th>{i18n_titre}</th>" +
267
			"			<th>{i18n_titre}</th>" +
268
			"			<th>{i18n_revue}</th>" +
268
			"			<th>{i18n_revue}</th>" +
269
			"			<th>{i18n_editeur}</th>" +
269
			"			<th>{i18n_editeur}</th>" +
270
			"			<th>{i18n_annee}</th>" +
270
			"			<th>{i18n_annee}</th>" +
271
			"			<th>{i18n_nvt}</th>" +
271
			"			<th>{i18n_nvt}</th>" +
272
			"			<th>{i18n_fascicule}</th>" +
272
			"			<th>{i18n_fascicule}</th>" +
273
			"			<th>{i18n_page}</th>" +
273
			"			<th>{i18n_page}</th>" +
274
			"		</tr>"+
274
			"		</tr>"+
275
			"	</thead>"+
275
			"	</thead>"+
276
			"	<tbody>"+
276
			"	<tbody>"+
277
			"		{lignes}"+
277
			"		{lignes}"+
278
			"	</tbody>"+
278
			"	</tbody>"+
279
			"</table>";
279
			"</table>";
280
	}
280
	}
281
	
281
	
282
	private void initialiserLignePublicationLieeTpl() {
282
	private void initialiserLignePublicationLieeTpl() {
283
		lignePublicationLieeTpl =
283
		lignePublicationLieeTpl =
284
			"<tr>"+
284
			"<tr>"+
285
			"	<td>{auteur}</td>"+
285
			"	<td>{auteur}</td>"+
286
			"	<td>{titre}</td>"+
286
			"	<td>{titre}</td>"+
287
			"	<td>{revue}</td>"+
287
			"	<td>{revue}</td>"+
288
			"	<td>{editeur}</td>"+
288
			"	<td>{editeur}</td>"+
289
			"	<td>{annee}</td>"+
289
			"	<td>{annee}</td>"+
290
			"	<td>{nvt}</td>"+
290
			"	<td>{nvt}</td>"+
291
			"	<td>{fascicule}</td>"+
291
			"	<td>{fascicule}</td>"+
292
			"	<td>{page}</td>"+
292
			"	<td>{page}</td>"+
293
			"</tr>";
293
			"</tr>";
294
	}
294
	}
295
	
295
	
296
	private void initialiserDescriptionTpl() {
296
	private void initialiserDescriptionTpl() {
297
		descriptionTpl =
297
		descriptionTpl =
298
			"<div class='{css_corps}'>"+
298
			"<div class='{css_corps}'>"+
299
			"	<div>"+
299
			"	<div>"+
300
			"		<h2>{i18n_titre_description}</h2>"+
300
			"		<h2>{i18n_titre_description}</h2>"+
301
			"		<span class='{css_label}'>{i18n_type_botanique} :</span> {type_botanique}<br />"+
301
			"		<span class='{css_label}'>{i18n_type_botanique} :</span> {type_botanique}<br />"+
302
			"		<span class='{css_label}'>{i18n_nbre_echantillon} :</span> {nbre_echantillon}<br />"+
302
			"		<span class='{css_label}'>{i18n_nbre_echantillon} :</span> {nbre_echantillon}<br />"+
303
			"	</div>"+
303
			"	</div>"+
304
			"	<div>"+
304
			"	<div>"+
305
			"		<h2>{i18n_titre_unite_rangement}</h2>"+
305
			"		<h2>{i18n_titre_unite_rangement}</h2>"+
306
			"		<span class='{css_label}'>{i18n_etat_unite_rangement} :</span> {etat_unite_rangement}<br />"+
306
			"		<span class='{css_label}'>{i18n_etat_unite_rangement} :</span> {etat_unite_rangement}<br />"+
307
			"		{tableau_unite_rangement}"+
307
			"		{tableau_unite_rangement}"+
308
			"	</div>"+
308
			"	</div>"+
309
			"	<div>"+
309
			"	<div>"+
310
			"		<h2>{i18n_titre_unite_base}</h2>"+
310
			"		<h2>{i18n_titre_unite_base}</h2>"+
311
			"		{tableau_unite_base}"+
311
			"		{tableau_unite_base}"+
312
			"	</div>"+
312
			"	</div>"+
313
			"	<div>"+
313
			"	<div>"+
314
			"		<h2>{i18n_titre_conservation}</h2>"+
314
			"		<h2>{i18n_titre_conservation}</h2>"+
315
			"		<span class='{css_label}'>{i18n_type_papier} :</span> {type_papier}<br />"+
315
			"		<span class='{css_label}'>{i18n_type_papier} :</span> {type_papier}<br />"+
316
			"		<span class='{css_label}'>{i18n_conservation_methode} :</span> {conservation_methode}<br />"+
316
			"		<span class='{css_label}'>{i18n_conservation_methode} :</span> {conservation_methode}<br />"+
317
			"	</div>"+
317
			"	</div>"+
318
			"	<div>"+
318
			"	<div>"+
319
			"		<h2>{i18n_titre_etiquette}</h2>"+
319
			"		<h2>{i18n_titre_etiquette}</h2>"+
320
			"		<span class='{css_label}'>{i18n_specimen_fixation_pourcent} :</span> {specimen_fixation_pourcent}<br />"+
320
			"		<span class='{css_label}'>{i18n_specimen_fixation_pourcent} :</span> {specimen_fixation_pourcent}<br />"+
321
			"		<span class='{css_label}'>{i18n_etiquette_fixation_pourcent} :</span> {etiquette_fixation_pourcent}<br />"+
321
			"		<span class='{css_label}'>{i18n_etiquette_fixation_pourcent} :</span> {etiquette_fixation_pourcent}<br />"+
322
			"		<span class='{css_label}'>{i18n_specimen_fixation_methode} :</span> {specimen_fixation_methode}<br />"+
322
			"		<span class='{css_label}'>{i18n_specimen_fixation_methode} :</span> {specimen_fixation_methode}<br />"+
323
			"		<span class='{css_label}'>{i18n_etiquette_fixation_methode_support} :</span> {etiquette_fixation_methode_support}<br />"+
323
			"		<span class='{css_label}'>{i18n_etiquette_fixation_methode_support} :</span> {etiquette_fixation_methode_support}<br />"+
324
			"		<span class='{css_label}'>{i18n_etiquette_fixation_methode_specimen} :</span> {etiquette_fixation_methode_specimen}<br />"+
324
			"		<span class='{css_label}'>{i18n_etiquette_fixation_methode_specimen} :</span> {etiquette_fixation_methode_specimen}<br />"+
325
			"		<span class='{css_label}'>{i18n_etiquette_type_ecriture} :</span> {etiquette_type_ecriture}<br />"+
325
			"		<span class='{css_label}'>{i18n_etiquette_type_ecriture} :</span> {etiquette_type_ecriture}<br />"+
326
			"	</div>"+
326
			"	</div>"+
327
			"	<div>"+
327
			"	<div>"+
328
			"		<h2>{i18n_titre_traitement}</h2>"+
328
			"		<h2>{i18n_titre_traitement}</h2>"+
329
			"		<span class='{css_label}'>{i18n_traitement} :</span> {traitement}<br />"+
329
			"		<span class='{css_label}'>{i18n_traitement} :</span> {traitement}<br />"+
330
			"		<span class='{css_label}'>{i18n_traitement_poison} :</span> {traitement_poison}<br />"+
330
			"		<span class='{css_label}'>{i18n_traitement_poison} :</span> {traitement_poison}<br />"+
331
			"		<span class='{css_label}'>{i18n_traitement_insecte} :</span> {traitement_insecte}<br />"+
331
			"		<span class='{css_label}'>{i18n_traitement_insecte} :</span> {traitement_insecte}<br />"+
332
			"	</div>"+
332
			"	</div>"+
333
			"	<div>"+
333
			"	<div>"+
334
			"		<h2>{i18n_titre_etat_degradation}</h2>"+
334
			"		<h2>{i18n_titre_etat_degradation}</h2>"+
335
			"		<span class='{css_label}'>{i18n_etat_general} :</span> {etat_general}<br />"+
335
			"		<span class='{css_label}'>{i18n_etat_general} :</span> {etat_general}<br />"+
336
			"		<span class='{css_label}'>{i18n_degradation_specimen} :</span> {degradation_specimen}<br />"+
336
			"		<span class='{css_label}'>{i18n_degradation_specimen} :</span> {degradation_specimen}<br />"+
337
			"		<span class='{css_label}'>{i18n_degradation_presentation} :</span> {degradation_presentation}<br />"+
337
			"		<span class='{css_label}'>{i18n_degradation_presentation} :</span> {degradation_presentation}<br />"+
338
			"		<span class='{css_label}'>{i18n_determination} :</span> {determination}<br />"+
338
			"		<span class='{css_label}'>{i18n_determination} :</span> {determination}<br />"+
339
			"	</div>"+
339
			"	</div>"+
340
			"</div>";
340
			"</div>";
341
	}
341
	}
342
	
342
	
343
	private void initialiserTableauUniteRangementTpl() {
343
	private void initialiserTableauUniteRangementTpl() {
344
		tableauUniteRangementTpl =
344
		tableauUniteRangementTpl =
345
			"<table>"+
345
			"<table>"+
346
			"	<thead>"+
346
			"	<thead>"+
347
			"		<tr>" +
347
			"		<tr>" +
348
			"			<th>{i18n_type}</th>" +
348
			"			<th>{i18n_type}</th>" +
349
			"			<th>{i18n_nombre}</th>" +
349
			"			<th>{i18n_nombre}</th>" +
350
			"			<th>{i18n_precision}</th>" +
350
			"			<th>{i18n_precision}</th>" +
351
			"			<th>{i18n_format}</th>" +
351
			"			<th>{i18n_format}</th>" +
352
			"		</tr>"+
352
			"		</tr>"+
353
			"	</thead>"+
353
			"	</thead>"+
354
			"	<tbody>"+
354
			"	<tbody>"+
355
			"		{lignes}"+
355
			"		{lignes}"+
356
			"	</tbody>"+
356
			"	</tbody>"+
357
			"</table>";
357
			"</table>";
358
	}
358
	}
359
	
359
	
360
	private void initialiserLigneUniteRangementTpl() {
360
	private void initialiserLigneUniteRangementTpl() {
361
		ligneUniteRangementTpl =
361
		ligneUniteRangementTpl =
362
			"<tr>"+
362
			"<tr>"+
363
			"	<td>{type}</td>"+
363
			"	<td>{type}</td>"+
364
			"	<td>{nombre}</td>"+
364
			"	<td>{nombre}</td>"+
365
			"	<td>{precision}</td>"+
365
			"	<td>{precision}</td>"+
366
			"	<td>{format}</td>"+
366
			"	<td>{format}</td>"+
367
			"</tr>";
367
			"</tr>";
368
	}
368
	}
369
	
369
	
370
	private void initialiserTableauUniteBaseTpl() {
370
	private void initialiserTableauUniteBaseTpl() {
371
		tableauUniteBaseTpl =
371
		tableauUniteBaseTpl =
372
			"<table>"+
372
			"<table>"+
373
			"	<thead>"+
373
			"	<thead>"+
374
			"		<tr>" +
374
			"		<tr>" +
375
			"			<th colspan='4'>{i18n_unite_base}</th>" +
375
			"			<th colspan='4'>{i18n_unite_base}</th>" +
376
			"			<th colspan='2'>{i18n_part}</th>" +
376
			"			<th colspan='2'>{i18n_part}</th>" +
377
			"			<th colspan='2'>{i18n_sp}</th>" +
377
			"			<th colspan='2'>{i18n_sp}</th>" +
378
			"		</tr>"+
378
			"		</tr>"+
379
			"		<tr>" +
379
			"		<tr>" +
380
			"			<th>{i18n_type}</th>" +
380
			"			<th>{i18n_type}</th>" +
381
			"			<th>{i18n_nombre}</th>" +
381
			"			<th>{i18n_nombre}</th>" +
382
			"			<th>{i18n_precision}</th>" +
382
			"			<th>{i18n_precision}</th>" +
383
			"			<th>{i18n_format}</th>" +
383
			"			<th>{i18n_format}</th>" +
384
			"			<th>{i18n_nombre}</th>" +
384
			"			<th>{i18n_nombre}</th>" +
385
			"			<th>{i18n_precision}</th>" +
385
			"			<th>{i18n_precision}</th>" +
386
			"			<th>{i18n_nombre}</th>" +
386
			"			<th>{i18n_nombre}</th>" +
387
			"			<th>{i18n_precision}</th>" +
387
			"			<th>{i18n_precision}</th>" +
388
			"		</tr>"+
388
			"		</tr>"+
389
			"	</thead>"+
389
			"	</thead>"+
390
			"	<tbody>"+
390
			"	<tbody>"+
391
			"		{lignes}"+
391
			"		{lignes}"+
392
			"	</tbody>"+
392
			"	</tbody>"+
393
			"</table>";
393
			"</table>";
394
	}
394
	}
395
	
395
	
396
	private void initialiserLigneUniteBaseTpl() {
396
	private void initialiserLigneUniteBaseTpl() {
397
		ligneUniteBaseTpl =
397
		ligneUniteBaseTpl =
398
			"<tr>"+
398
			"<tr>"+
399
			"	<td>{type}</td>"+
399
			"	<td>{type}</td>"+
400
			"	<td>{nombre}</td>"+
400
			"	<td>{nombre}</td>"+
401
			"	<td>{precision}</td>"+
401
			"	<td>{precision}</td>"+
402
			"	<td>{format}</td>"+
402
			"	<td>{format}</td>"+
403
			"	<td>{part_nombre}</td>"+
403
			"	<td>{part_nombre}</td>"+
404
			"	<td>{part_precision}</td>"+
404
			"	<td>{part_precision}</td>"+
405
			"	<td>{sp_nombre}</td>"+
405
			"	<td>{sp_nombre}</td>"+
406
			"	<td>{sp_precision}</td>"+
406
			"	<td>{sp_precision}</td>"+
407
			"</tr>";
407
			"</tr>";
408
	}
408
	}
409
	
409
	
410
	private void initialiserContenuTpl() {
410
	private void initialiserContenuTpl() {
411
		contenuTpl =
411
		contenuTpl =
412
			"<div class='{css_corps}'>"+
412
			"<div class='{css_corps}'>"+
413
			"	<div class='{css_fieldset}'>"+
413
			"	<div class='{css_fieldset}'>"+
414
			"		<h2>{i18n_titre_nature}</h2>"+
414
			"		<h2>{i18n_titre_nature}</h2>"+
415
			"		<span class='{css_label}'>{i18n_nature} :</span> {nature}<br />"+
415
			"		<span class='{css_label}'>{i18n_nature} :</span> {nature}<br />"+
416
			"		<span class='{css_label}'>{i18n_specialite} :</span> {specialite}<br />"+
416
			"		<span class='{css_label}'>{i18n_specialite} :</span> {specialite}<br />"+
417
			"	</div>"+
417
			"	</div>"+
418
			"	<div class='{css_fieldset}'>"+
418
			"	<div class='{css_fieldset}'>"+
419
			"		<h2>{i18n_titre_constitution}</h2>"+
419
			"		<h2>{i18n_titre_constitution}</h2>"+
420
			"		<span class='{css_label}'>{i18n_periode} :</span> {periode}<br />"+
420
			"		<span class='{css_label}'>{i18n_periode} :</span> {periode}<br />"+
421
			"		<span class='{css_label}'>{i18n_date_debut} :</span> {date_debut}<br />"+
421
			"		<span class='{css_label}'>{i18n_date_debut} :</span> {date_debut}<br />"+
422
			"		<span class='{css_label}'>{i18n_date_fin} :</span> {date_fin}<br />"+
422
			"		<span class='{css_label}'>{i18n_date_fin} :</span> {date_fin}<br />"+
423
			"	</div>"+
423
			"	</div>"+
424
			"	<hr class='{css_clear}'/>"+
424
			"	<hr class='{css_clear}'/>"+
425
			"	<div class='{css_fieldset}'>"+
425
			"	<div class='{css_fieldset}'>"+
426
			"		<h2>{i18n_titre_classement}</h2>"+
426
			"		<h2>{i18n_titre_classement}</h2>"+
427
			"		<span class='{css_label}'>{i18n_classement_etat} :</span> {classement_etat}<br />"+
427
			"		<span class='{css_label}'>{i18n_classement_etat} :</span> {classement_etat}<br />"+
428
			"		<span class='{css_label}'>{i18n_classement} :</span> {classement}<br />"+
428
			"		<span class='{css_label}'>{i18n_classement} :</span> {classement}<br />"+
429
			"	</div>"+
429
			"	</div>"+
430
			"	<div class='{css_fieldset}'>"+
430
			"	<div class='{css_fieldset}'>"+
431
			"		<h2>{i18n_titre_etiquette}</h2>"+
431
			"		<h2>{i18n_titre_etiquette}</h2>"+
432
			"		<span class='{css_label}'>{i18n_etiquette_renseignement} :</span> {etiquette_renseignement}<br />"+
432
			"		<span class='{css_label}'>{i18n_etiquette_renseignement} :</span> {etiquette_renseignement}<br />"+
433
			"		<span class='{css_label}'>{i18n_precision_localite} :</span> {precision_localite}<br />"+
433
			"		<span class='{css_label}'>{i18n_precision_localite} :</span> {precision_localite}<br />"+
434
			"		<span class='{css_label}'>{i18n_precision_date} :</span> {precision_date}<br />"+
434
			"		<span class='{css_label}'>{i18n_precision_date} :</span> {precision_date}<br />"+
435
			"		<span class='{css_label}'>{i18n_etiquette_annotation} :</span> {etiquette_annotation}<br />"+
435
			"		<span class='{css_label}'>{i18n_etiquette_annotation} :</span> {etiquette_annotation}<br />"+
436
			"	</div>"+
436
			"	</div>"+
437
			"	<hr class='{css_clear}'/>"+
437
			"	<hr class='{css_clear}'/>"+
438
			"	<div class='{css_fieldset}'>"+
438
			"	<div class='{css_fieldset}'>"+
439
			"		<h2>{i18n_titre_integree}</h2>"+
439
			"		<h2>{i18n_titre_integree}</h2>"+
440
			"		<span class='{css_label}'>{i18n_collection_integration} :</span> {collection_integration}<br />"+
440
			"		<span class='{css_label}'>{i18n_collection_integration} :</span> {collection_integration}<br />"+
441
			"		<span class='{css_label}'>{i18n_collection_integration_info} :</span> {collection_integration_info}<br />"+
441
			"		<span class='{css_label}'>{i18n_collection_integration_info} :</span> {collection_integration_info}<br />"+
442
			"	</div>"+
442
			"	</div>"+
443
			"</div>";
443
			"</div>";
444
	}
444
	}
445
	
445
	
446
	private void initialiserInventaireTpl() {
446
	private void initialiserInventaireTpl() {
447
		inventaireTpl =
447
		inventaireTpl =
448
			"<div class='{css_corps}'>"+
448
			"<div class='{css_corps}'>"+
449
			"	<div class='{css_fieldset}'>"+
449
			"	<div class='{css_fieldset}'>"+
450
			"		<h2>{i18n_titre_inventaire}</h2>"+
450
			"		<h2>{i18n_titre_inventaire}</h2>"+
451
			"		<span class='{css_label}'>{i18n_existence} :</span> {existence}<br />"+
451
			"		<span class='{css_label}'>{i18n_existence} :</span> {existence}<br />"+
452
			"		<span class='{css_label}'>{i18n_participation_auteur} :</span> {participation_auteur}<br />"+
452
			"		<span class='{css_label}'>{i18n_participation_auteur} :</span> {participation_auteur}<br />"+
453
			"		<span class='{css_label}'>{i18n_forme} :</span> {forme}<br />"+
453
			"		<span class='{css_label}'>{i18n_forme} :</span> {forme}<br />"+
454
			"		<span class='{css_label}'>{i18n_info} :</span> {info}<br />"+
454
			"		<span class='{css_label}'>{i18n_info} :</span> {info}<br />"+
455
			"		<span class='{css_label}'>{i18n_digital} :</span> {digital}<br />"+
455
			"		<span class='{css_label}'>{i18n_digital} :</span> {digital}<br />"+
456
			"		<span class='{css_label}'>{i18n_digital_pourcent} :</span> {digital_pourcent}<br />"+
456
			"		<span class='{css_label}'>{i18n_digital_pourcent} :</span> {digital_pourcent}<br />"+
457
			"		<span class='{css_label}'>{i18n_etat} :</span> {etat}<br />"+
457
			"		<span class='{css_label}'>{i18n_etat} :</span> {etat}<br />"+
458
			//DELETEME : "		<span class='{css_label}'>{i18n_type_donnee} :</span> {type_donnee}<br />"+
458
			//DELETEME : "		<span class='{css_label}'>{i18n_type_donnee} :</span> {type_donnee}<br />"+
459
			"	</div>"+
459
			"	</div>"+
460
			"	<hr class='{css_clear}'/>"+
460
			"	<hr class='{css_clear}'/>"+
461
			"</div>";
461
			"</div>";
462
	}
462
	}
463
	
463
	
464
	private void initialiserCommentaireTpl() {
464
	private void initialiserCommentaireTpl() {
465
		commentaireTpl =
465
		commentaireTpl =
466
			"<div class='{css_corps}'>"+
466
			"<div class='{css_corps}'>"+
467
			"	<h2>{i18n_titre_commentaire}</h2>"+
467
			"	<h2>{i18n_titre_commentaire}</h2>"+
468
			"	{tableau_commentaires_liees}"+
468
			"	{tableau_commentaires_liees}"+
469
			"</div>";
469
			"</div>";
470
	}
470
	}
471
	
471
	
472
	private void initialiserTableauCommentairesLieesTpl() {
472
	private void initialiserTableauCommentairesLieesTpl() {
473
		tableauCommentairesLieesTpl =
473
		tableauCommentairesLieesTpl =
474
			"<table>"+
474
			"<table>"+
475
			"	<thead>"+
475
			"	<thead>"+
476
			"		<tr>" +
476
			"		<tr>" +
477
			"			<th>{i18n_type}</th>" +
477
			"			<th>{i18n_type}</th>" +
478
			"			<th>{i18n_titre}</th>" +
478
			"			<th>{i18n_titre}</th>" +
479
			"			<th>{i18n_ponderation}</th>" +
479
			"			<th>{i18n_ponderation}</th>" +
480
			"			<th>{i18n_public}</th>" +
480
			"			<th>{i18n_public}</th>" +
481
			"		</tr>"+
481
			"		</tr>"+
482
			"	</thead>"+
482
			"	</thead>"+
483
			"	<tbody>"+
483
			"	<tbody>"+
484
			"		{lignes}"+
484
			"		{lignes}"+
485
			"	</tbody>"+
485
			"	</tbody>"+
486
			"</table>";
486
			"</table>";
487
	}
487
	}
488
	
488
	
489
	private void initialiserLigneCommentaireLieeTpl() {
489
	private void initialiserLigneCommentaireLieeTpl() {
490
		ligneCommentaireLieeTpl =
490
		ligneCommentaireLieeTpl =
491
			"<tr>"+
491
			"<tr>"+
492
			"	<td>{type}</td>"+
492
			"	<td>{type}</td>"+
493
			"	<td>{titre}</td>"+
493
			"	<td>{titre}</td>"+
494
			"	<td>{ponderation}</td>"+
494
			"	<td>{ponderation}</td>"+
495
			"	<td>{public}</td>"+
495
			"	<td>{public}</td>"+
496
			"</tr>"+
496
			"</tr>"+
497
			"<tr>"+
497
			"<tr>"+
498
			"	<td colspan='4'>{texte}</td>"+
498
			"	<td colspan='4'>{texte}</td>"+
499
			"</tr>";
499
			"</tr>";
500
	}
500
	}
501
	
501
	
502
	private void chargerOntologie() {
502
	private void chargerOntologie() {
503
		String[] listesCodes = {"typeCollectionBota", "typeCollectionNcd", "typeDepot", "groupementPrincipe", 
503
		String[] listesCodes = {"typeCollectionBota", "typeCollectionNcd", "typeDepot", "groupementPrincipe", 
504
			"realisationBut", "onpi", "ea", "typeClassement", "relationPersonneCollection", "ion",
504
			"realisationBut", "onpi", "ea", "typeClassement", "relationPersonneCollection", "ion",
505
			"typeUniteRangement", "etat", "typeUniteBase", "typePapier", "methodeRangement", "methodeFixation",  
505
			"typeUniteRangement", "etat", "typeUniteBase", "typePapier", "methodeRangement", "methodeFixation",  
506
			"methodeFixationSurSpecimen", "typeEcriture", "poisonTraitement", "insecteTraitement", "specimenDegradation",  
506
			"methodeFixationSurSpecimen", "typeEcriture", "poisonTraitement", "insecteTraitement", "specimenDegradation",  
507
			"niveauImportance", "supportDegradation", "niveauDetermination", "natureVegetale", "siecleNaturaliste", 
507
			"niveauImportance", "supportDegradation", "niveauDetermination", "natureVegetale", "siecleNaturaliste", 
508
			"dateDebut", "dateFin", "etat", "onep", "onp", "inventaireForme", "inventaireLogiciel", "inventaireEtat",
508
			"dateDebut", "dateFin", "etat", "onep", "onp", "inventaireForme", "inventaireLogiciel", "inventaireEtat",
509
			"etatClassement", "typeCommentaireCollection"};
509
			"etatClassement", "typeCommentaireCollection"};
510
		lancerChargementListesValeurs(listesCodes, sequenceur);
510
		lancerChargementListesValeurs(listesCodes, sequenceur);
511
		sequenceur.empilerRafraichissement(this, new Information("ontologie_chargee"));
511
		sequenceur.empilerRafraichissement(this, new Information("ontologie_chargee"));
512
	}
512
	}
513
	
513
	
514
	public void rafraichir(Object nouvellesDonnees) {
514
	public void rafraichir(Object nouvellesDonnees) {
515
		if (nouvellesDonnees instanceof Collection) {
515
		if (nouvellesDonnees instanceof Collection) {
516
			collection = (Collection) nouvellesDonnees;
516
			collection = (Collection) nouvellesDonnees;
517
			collectionChargementOk = true;
517
			collectionChargementOk = true;
518
		} else if (nouvellesDonnees instanceof ProjetListe) {
518
		} else if (nouvellesDonnees instanceof ProjetListe) {
519
			projets = (ProjetListe) nouvellesDonnees;
519
			projets = (ProjetListe) nouvellesDonnees;
520
			projetsChargementOk = true;
520
			projetsChargementOk = true;
521
		} else if (nouvellesDonnees instanceof ValeurListe) {
521
		} else if (nouvellesDonnees instanceof ValeurListe) {
522
			ValeurListe listeValeursReceptionnee = (ValeurListe) nouvellesDonnees;
522
			ValeurListe listeValeursReceptionnee = (ValeurListe) nouvellesDonnees;
523
			receptionerListeValeurs(listeValeursReceptionnee);
523
			receptionerListeValeurs(listeValeursReceptionnee);
524
		} else if (nouvellesDonnees instanceof Information) {
524
		} else if (nouvellesDonnees instanceof Information) {
525
			Information info = (Information) nouvellesDonnees;
525
			Information info = (Information) nouvellesDonnees;
526
			if (info.getType().equals("liste_collection_a_personne")) {
526
			if (info.getType().equals("liste_collection_a_personne")) {
527
				lierCollectionAPersonne((CollectionAPersonneListe) info.getDonnee(0));
527
				lierCollectionAPersonne((CollectionAPersonneListe) info.getDonnee(0));
528
			} else if (info.getType().equals("liste_collection_a_publication")) {
528
			} else if (info.getType().equals("liste_collection_a_publication")) {
529
				lierCollectionAPublication((CollectionAPublicationListe) info.getDonnee(0));
529
				lierCollectionAPublication((CollectionAPublicationListe) info.getDonnee(0));
530
			} else if (info.getType().equals("liste_collection_a_commentaire")) {
530
			} else if (info.getType().equals("liste_collection_a_commentaire")) {
531
				lierCollectionACommentaire((CollectionACommentaireListe) info.getDonnee(0));
531
				lierCollectionACommentaire((CollectionACommentaireListe) info.getDonnee(0));
532
			} else if (info.getType().equals("ontologie_chargee")) {
532
			} else if (info.getType().equals("ontologie_chargee")) {
533
				ontologieChargementOk = true;
533
				ontologieChargementOk = true;
534
			}
534
			}
535
		} else {
535
		} else {
536
			Debug.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()));
536
			Debug.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()));
537
		}
537
		}
538
		
538
		
539
		if (avoirDonneesChargees()) {
539
		if (avoirDonneesChargees()) {
540
			afficherDetail();
540
			afficherDetail();
541
		}
541
		}
542
	}
542
	}
543
	
543
	
544
	protected void lierCollectionAPersonne(CollectionAPersonneListe personnes) {
544
	protected void lierCollectionAPersonne(CollectionAPersonneListe personnes) {
545
		collection.setPersonnesLiees(personnes);
545
		collection.setPersonnesLiees(personnes);
546
		personnesLieesChargementOk = true;
546
		personnesLieesChargementOk = true;
547
	}
547
	}
548
	
548
	
549
	protected void lierCollectionAPublication(CollectionAPublicationListe publications) {
549
	protected void lierCollectionAPublication(CollectionAPublicationListe publications) {
550
		collection.setPublicationsLiees(publications);
550
		collection.setPublicationsLiees(publications);
551
		publicationsLieesChargementOk = true;
551
		publicationsLieesChargementOk = true;
552
	}
552
	}
553
	
553
	
554
	protected void lierCollectionACommentaire(CollectionACommentaireListe commentaires) {
554
	protected void lierCollectionACommentaire(CollectionACommentaireListe commentaires) {
555
		collection.setCommentairesLiees(commentaires);
555
		collection.setCommentairesLiees(commentaires);
556
		commentairesLieesChargementOk = true;
556
		commentairesLieesChargementOk = true;
557
	}
557
	}
558
	
558
	
559
	private boolean avoirDonneesChargees() {
559
	private boolean avoirDonneesChargees() {
560
		boolean ok = false;
560
		boolean ok = false;
561
		if (projetsChargementOk && collectionChargementOk && ontologieChargementOk && personnesLieesChargementOk && publicationsLieesChargementOk && commentairesLieesChargementOk) {
561
		if (projetsChargementOk && collectionChargementOk && ontologieChargementOk && personnesLieesChargementOk && publicationsLieesChargementOk && commentairesLieesChargementOk) {
562
			ok = true;
562
			ok = true;
563
		}
563
		}
564
		return ok;
564
		return ok;
565
	}
565
	}
566
	
566
	
567
	private void afficherDetail() {
567
	private void afficherDetail() {
568
		if (collection != null) {
568
		if (collection != null) {
569
			afficherEntete();
569
			afficherEntete();
570
			afficherIdentification();
570
			afficherIdentification();
571
			afficherPersonne();
571
			afficherPersonne();
572
			afficherPublication();
572
			afficherPublication();
573
			afficherDescription();
573
			afficherDescription();
574
			afficherContenu();
574
			afficherContenu();
575
			afficherInventaire();
575
			afficherInventaire();
576
			afficherCommentaire();
576
			afficherCommentaire();
577
		}
577
		}
578
		layout();
578
		layout();
579
	}
579
	}
580
	
580
	
581
	private void afficherEntete() {
581
	private void afficherEntete() {
582
		Params enteteParams = new Params();
582
		Params enteteParams = new Params();
583
		enteteParams.set("css_id", ComposantId.ZONE_DETAIL_ENTETE);
583
		enteteParams.set("css_id", ComposantId.ZONE_DETAIL_ENTETE);
584
		enteteParams.set("css_meta", ComposantClass.META);
584
		enteteParams.set("css_meta", ComposantClass.META);
585
		
585
		
586
		enteteParams.set("i18n_id", i18nC.id());
586
		enteteParams.set("i18n_id", i18nC.id());
587
		
587
		
588
		enteteParams.set("nom", collection.getNom());
588
		enteteParams.set("nom", collection.getNom());
589
		enteteParams.set("structure", collection.getStructureNom());
589
		enteteParams.set("structure", collection.getStructureNom());
590
		enteteParams.set("id", collection.getId());
590
		enteteParams.set("id", collection.getId());
591
		enteteParams.set("guid", collection.getGuid());
591
		enteteParams.set("guid", collection.getGuid());
592
		enteteParams.set("projet", construireTxtProjet(collection.getIdProjet()));
592
		enteteParams.set("projet", construireTxtProjet(collection.getIdProjet()));
593
		
593
		
594
		String eHtml = Format.substitute(enteteTpl, enteteParams);
594
		String eHtml = Format.substitute(enteteTpl, enteteParams);
595
		entete.getElement().setInnerHTML(eHtml);
595
		entete.getElement().setInnerHTML(eHtml);
596
	}
596
	}
597
	
597
	
598
	private void afficherIdentification() {
598
	private void afficherIdentification() {
599
		Params generalParams = new Params();
599
		Params generalParams = new Params();
600
		generalParams.set("i18n_titre_identification", i18nC.titreAdministratif());
600
		generalParams.set("i18n_titre_identification", i18nC.titreAdministratif());
601
		generalParams.set("i18n_nom_alternatif", i18nC.intituleAlternatifCollection());
601
		generalParams.set("i18n_nom_alternatif", i18nC.intituleAlternatifCollection());
602
		generalParams.set("i18n_mere", i18nC.collectionMere());
602
		generalParams.set("i18n_mere", i18nC.collectionMere());
603
		generalParams.set("i18n_type_ncd", i18nC.typeCollectionNcd());
603
		generalParams.set("i18n_type_ncd", i18nC.typeCollectionNcd());
604
		generalParams.set("i18n_type_depot", i18nC.typeDepot());
604
		generalParams.set("i18n_type_depot", i18nC.typeDepot());
605
		generalParams.set("i18n_id_alternatif", i18nC.idAlternatifCollection());
605
		generalParams.set("i18n_id_alternatif", i18nC.idAlternatifCollection());
606
		generalParams.set("i18n_code", i18nC.codeAlternatifCollection());
606
		generalParams.set("i18n_code", i18nC.codeAlternatifCollection());
607
		generalParams.set("i18n_cote", i18nC.cote());
607
		generalParams.set("i18n_cote", i18nC.cote());
608
		
608
		
609
		generalParams.set("i18n_general_collection_titre", i18nC.collectionGeneralTitre());
609
		generalParams.set("i18n_general_collection_titre", i18nC.collectionGeneralTitre());
610
		generalParams.set("i18n_description", i18nC.description());
610
		generalParams.set("i18n_description", i18nC.description());
611
		generalParams.set("i18n_description_specialiste", i18nC.descriptionSpecialiste());
611
		generalParams.set("i18n_description_specialiste", i18nC.descriptionSpecialiste());
612
		generalParams.set("i18n_historique", i18nC.historique());
612
		generalParams.set("i18n_historique", i18nC.historique());
613
		generalParams.set("i18n_web", i18nC.siteWeb());
613
		generalParams.set("i18n_web", i18nC.siteWeb());
614
		
614
		
615
		generalParams.set("i18n_couverture_collection_titre", i18nC.collectionCouvertureTitre());
615
		generalParams.set("i18n_couverture_collection_titre", i18nC.collectionCouvertureTitre());
616
		generalParams.set("i18n_groupement_principe", i18nC.groupementPrincipe());
616
		generalParams.set("i18n_groupement_principe", i18nC.groupementPrincipe());
617
		generalParams.set("i18n_groupement_but", i18nC.groupementBut());
617
		generalParams.set("i18n_groupement_but", i18nC.groupementBut());
618
		generalParams.set("i18n_couverture_geo", i18nC.couvertureGeo());
618
		generalParams.set("i18n_couverture_geo", i18nC.couvertureGeo());
619
		
619
		
620
		generalParams.set("i18n_specimen_type_titre", i18nC.collectionSpecimenTypeTitre());
620
		generalParams.set("i18n_specimen_type_titre", i18nC.collectionSpecimenTypeTitre());
621
		generalParams.set("i18n_specimen_type_presence", i18nC.specimenTypeCollectionDetail());
621
		generalParams.set("i18n_specimen_type_presence", i18nC.specimenTypeCollectionDetail());
622
		generalParams.set("i18n_specimen_type_nombre", i18nC.nbreSpecimenTypeCollectionDetail());
622
		generalParams.set("i18n_specimen_type_nombre", i18nC.nbreSpecimenTypeCollectionDetail());
623
		generalParams.set("i18n_specimen_type_classement", i18nC.classementSpecimenTypeCollectionDetail());
623
		generalParams.set("i18n_specimen_type_classement", i18nC.classementSpecimenTypeCollectionDetail());
624
		
624
		
625
		String nomAlternatif = construireTxtTruck(collection.getNomAlternatif());
625
		String nomAlternatif = construireTxtTruck(collection.getNomAlternatif());
626
		String typeNcd = construireTxtListeOntologie(collection.getTypeNcd());
626
		String typeNcd = construireTxtListeOntologie(collection.getTypeNcd());
627
		String typeDepot = construireTxtListeOntologie(collection.getTypeDepot());
627
		String typeDepot = construireTxtListeOntologie(collection.getTypeDepot());
628
		String idAlternatif = construireTxtTruck(collection.getIdAlternatif());
628
		String idAlternatif = construireTxtTruck(collection.getIdAlternatif());
629
		String code = construireTxtTruck(collection.getCode());
629
		String code = construireTxtTruck(collection.getCode());
630
		
630
		
631
		String urls = construireTxtTruck(collection.getUrls());
631
		String urls = construireTxtTruck(collection.getUrls(), false);
632
		
632
		
633
		String groupementBut = construireTxtListeOntologie(collection.getGroupementBut());
633
		String groupementBut = construireTxtListeOntologie(collection.getGroupementBut());
634
		String groupementPrincipe = construireTxtListeOntologie(collection.getGroupementPrincipe());
634
		String groupementPrincipe = construireTxtListeOntologie(collection.getGroupementPrincipe());
635
		String couvertureGeo = construireTxtTruck(collection.getCouvertureLieu());
635
		String couvertureGeo = construireTxtTruck(collection.getCouvertureLieu());
636
		String specimenTypePresence = construireTxtListeOntologie(collection.getSpecimenType());
636
		String specimenTypePresence = construireTxtListeOntologie(collection.getSpecimenType());
637
		String specimenTypeNombrePrecision = construireTxtListeOntologie(collection.getSpecimenTypeNbrePrecision());
637
		String specimenTypeNombrePrecision = construireTxtListeOntologie(collection.getSpecimenTypeNbrePrecision());
638
		String specimenTypeNombre = "";
638
		String specimenTypeNombre = "";
639
		if (!collection.getSpecimenTypeNbre().equals("0") && !collection.getSpecimenTypeNbre().equals("")) {
639
		if (!collection.getSpecimenTypeNbre().equals("0") && !collection.getSpecimenTypeNbre().equals("")) {
640
			specimenTypeNombre = collection.getSpecimenTypeNbre()+" ("+specimenTypeNombrePrecision+")";
640
			specimenTypeNombre = collection.getSpecimenTypeNbre()+" ("+specimenTypeNombrePrecision+")";
641
		}
641
		}
642
		String specimenTypeClassement = construireTxtListeOntologie(collection.getSpecimenTypeClassement());
642
		String specimenTypeClassement = construireTxtListeOntologie(collection.getSpecimenTypeClassement());
643
		
643
		
644
		generalParams.set("nom_alternatif", nomAlternatif);
644
		generalParams.set("nom_alternatif", nomAlternatif);
645
		generalParams.set("mere", collection.getCollectionMereNom());
645
		generalParams.set("mere", collection.getCollectionMereNom());
646
		generalParams.set("type_ncd", typeNcd);
646
		generalParams.set("type_ncd", typeNcd);
647
		generalParams.set("type_depot", typeDepot);
647
		generalParams.set("type_depot", typeDepot);
648
		generalParams.set("id_alternatif", idAlternatif);
648
		generalParams.set("id_alternatif", idAlternatif);
649
		generalParams.set("code", code);
649
		generalParams.set("code", code);
650
		generalParams.set("cote", collection.getCote());
650
		generalParams.set("cote", collection.getCote());
651
		
651
		
652
		generalParams.set("description", collection.getDescription());
652
		generalParams.set("description", collection.getDescription());
653
		generalParams.set("description_specialiste", collection.getDescriptionSpecialiste());
653
		generalParams.set("description_specialiste", collection.getDescriptionSpecialiste());
654
		generalParams.set("historique", collection.getHistorique());
654
		generalParams.set("historique", collection.getHistorique());
655
		generalParams.set("web", urls);
655
		generalParams.set("web", urls);
656
		
656
		
657
		generalParams.set("groupement_principe", groupementPrincipe);
657
		generalParams.set("groupement_principe", groupementPrincipe);
658
		generalParams.set("groupement_but", groupementBut);
658
		generalParams.set("groupement_but", groupementBut);
659
		generalParams.set("couverture_geo", couvertureGeo);
659
		generalParams.set("couverture_geo", couvertureGeo);
660
		
660
		
661
		generalParams.set("specimen_type_presence", specimenTypePresence);
661
		generalParams.set("specimen_type_presence", specimenTypePresence);
662
		generalParams.set("specimen_type_nombre", specimenTypeNombre);
662
		generalParams.set("specimen_type_nombre", specimenTypeNombre);
663
		generalParams.set("specimen_type_classement", specimenTypeClassement);
663
		generalParams.set("specimen_type_classement", specimenTypeClassement);
664
		
664
		
665
		afficherOnglet(generalTpl, generalParams, generalOnglet);
665
		afficherOnglet(generalTpl, generalParams, generalOnglet);
666
	}
666
	}
667
	
667
	
668
	private void afficherPersonne() {
668
	private void afficherPersonne() {
669
		String tableauPersonneHtml = "";
669
		String tableauPersonneHtml = "";
670
		if (collection.getPersonnesLiees() != null && collection.getPersonnesLiees().size() > 0) {
670
		if (collection.getPersonnesLiees() != null && collection.getPersonnesLiees().size() > 0) {
671
			tableauPersonneHtml = construireTableauPersonnesLiees();
671
			tableauPersonneHtml = construireTableauPersonnesLiees();
672
		}
672
		}
673
		
673
		
674
		Params personneParams = new Params();
674
		Params personneParams = new Params();
675
		personneParams.set("i18n_titre_personne", i18nC.collectionPersonneTitre());
675
		personneParams.set("i18n_titre_personne", i18nC.collectionPersonneTitre());
676
		personneParams.set("tableau_personnes_liees", tableauPersonneHtml);
676
		personneParams.set("tableau_personnes_liees", tableauPersonneHtml);
677
		
677
		
678
		afficherOnglet(personneTpl, personneParams, personneOnglet);
678
		afficherOnglet(personneTpl, personneParams, personneOnglet);
679
	}
679
	}
680
	
680
	
681
	private String construireTableauPersonnesLiees() {
681
	private String construireTableauPersonnesLiees() {
682
		Params contenuParams = new Params();
682
		Params contenuParams = new Params();
683
		contenuParams.set("i18n_relation", i18nC.typeRelationPersonneCollection());
683
		contenuParams.set("i18n_relation", i18nC.typeRelationPersonneCollection());
684
		contenuParams.set("i18n_nom_complet", i18nC.personneNomComplet());
684
		contenuParams.set("i18n_nom_complet", i18nC.personneNomComplet());
685
		contenuParams.set("i18n_prenom", i18nC.personnePrenom());
685
		contenuParams.set("i18n_prenom", i18nC.personnePrenom());
686
		contenuParams.set("i18n_nom", i18nC.personneNom());
686
		contenuParams.set("i18n_nom", i18nC.personneNom());
687
		contenuParams.set("i18n_naissance_date", i18nC.personneDateNaissance());
687
		contenuParams.set("i18n_naissance_date", i18nC.personneDateNaissance());
688
		contenuParams.set("i18n_naissance_lieu", i18nC.personneLieuNaissance());
688
		contenuParams.set("i18n_naissance_lieu", i18nC.personneLieuNaissance());
689
		contenuParams.set("i18n_etre_decede", i18nC.personneDeces());
689
		contenuParams.set("i18n_etre_decede", i18nC.personneDeces());
690
		contenuParams.set("i18n_deces_date", i18nC.personneDateDeces());
690
		contenuParams.set("i18n_deces_date", i18nC.personneDateDeces());
691
		contenuParams.set("i18n_deces_lieu", i18nC.personneLieuDeces());
691
		contenuParams.set("i18n_deces_lieu", i18nC.personneLieuDeces());
692
		
692
		
693
		String lignesPersonnel = ""; 
693
		String lignesPersonnel = ""; 
694
		if (collection.getPersonnesLiees() != null) {
694
		if (collection.getPersonnesLiees() != null) {
695
			Iterator<String> it = collection.getPersonnesLiees().keySet().iterator();
695
			Iterator<String> it = collection.getPersonnesLiees().keySet().iterator();
696
			while (it.hasNext()) {
696
			while (it.hasNext()) {
697
				CollectionAPersonne relationCollectionAPersonne = collection.getPersonnesLiees().get(it.next());
697
				CollectionAPersonne relationCollectionAPersonne = collection.getPersonnesLiees().get(it.next());
698
				Personne personne = relationCollectionAPersonne.getPersonne();
698
				Personne personne = relationCollectionAPersonne.getPersonne();
699
				
699
				
700
				String relation = construireTxtListeOntologie(relationCollectionAPersonne.getIdRole());
700
				String relation = construireTxtListeOntologie(relationCollectionAPersonne.getIdRole());
701
				String etreDecede = construireTxtListeOntologie(personne.getDeces());
701
				String etreDecede = construireTxtListeOntologie(personne.getDeces());
702
				
702
				
703
				Params ligneParams = new Params();
703
				Params ligneParams = new Params();
704
				ligneParams.set("relation", relation);
704
				ligneParams.set("relation", relation);
705
				ligneParams.set("nom_complet", personne.getNomComplet());
705
				ligneParams.set("nom_complet", personne.getNomComplet());
706
				ligneParams.set("nom", personne.getNom());
706
				ligneParams.set("nom", personne.getNom());
707
				ligneParams.set("prenom", personne.getPrenom());
707
				ligneParams.set("prenom", personne.getPrenom());
708
				ligneParams.set("naissance_date", personne.getNaissanceDate());
708
				ligneParams.set("naissance_date", personne.getNaissanceDate());
709
				ligneParams.set("naissance_lieu", personne.getNaissanceLieu());
709
				ligneParams.set("naissance_lieu", personne.getNaissanceLieu());
710
				ligneParams.set("etre_decede", etreDecede);
710
				ligneParams.set("etre_decede", etreDecede);
711
				ligneParams.set("deces_date", personne.getDecesDate());
711
				ligneParams.set("deces_date", personne.getDecesDate());
712
				ligneParams.set("deces_lieu", personne.getDecesLieu());
712
				ligneParams.set("deces_lieu", personne.getDecesLieu());
713
				
713
				
714
				lignesPersonnel += Format.substitute(lignePersonneLieeTpl, ligneParams);
714
				lignesPersonnel += Format.substitute(lignePersonneLieeTpl, ligneParams);
715
			}
715
			}
716
		}
716
		}
717
		
717
		
718
		String cHtml = i18nC.nonRenseigne();
718
		String cHtml = i18nC.nonRenseigne();
719
		if (!UtilString.isEmpty(lignesPersonnel)) {
719
		if (!UtilString.isEmpty(lignesPersonnel)) {
720
			contenuParams.set("lignes", lignesPersonnel);
720
			contenuParams.set("lignes", lignesPersonnel);
721
			cHtml = Format.substitute(tableauPersonnesLieesTpl, contenuParams);
721
			cHtml = Format.substitute(tableauPersonnesLieesTpl, contenuParams);
722
		}
722
		}
723
		return cHtml;
723
		return cHtml;
724
	}
724
	}
725
	
725
	
726
	private void afficherPublication() {
726
	private void afficherPublication() {
727
		Params publicationParams = new Params();
727
		Params publicationParams = new Params();
728
		publicationParams.set("i18n_titre_publication", i18nC.collectionPublicationTitre());
728
		publicationParams.set("i18n_titre_publication", i18nC.collectionPublicationTitre());
729
		
729
		
730
		String tableauPublicationHtml = "";
730
		String tableauPublicationHtml = "";
731
		if (collection.getPersonnesLiees() != null && collection.getPersonnesLiees().size() > 0) {
731
		if (collection.getPersonnesLiees() != null && collection.getPersonnesLiees().size() > 0) {
732
			tableauPublicationHtml = construireTableauPublicationsLiees();
732
			tableauPublicationHtml = construireTableauPublicationsLiees();
733
		}
733
		}
734
		publicationParams.set("tableau_publications_liees", tableauPublicationHtml);
734
		publicationParams.set("tableau_publications_liees", tableauPublicationHtml);
735
				
735
				
736
		afficherOnglet(publicationTpl, publicationParams, publicationOnglet);
736
		afficherOnglet(publicationTpl, publicationParams, publicationOnglet);
737
	}
737
	}
738
	
738
	
739
	private String construireTableauPublicationsLiees() {
739
	private String construireTableauPublicationsLiees() {
740
		Params contenuParams = new Params();
740
		Params contenuParams = new Params();
741
		contenuParams.set("i18n_auteur", i18nC.publicationAuteurs());
741
		contenuParams.set("i18n_auteur", i18nC.publicationAuteurs());
742
		contenuParams.set("i18n_titre", i18nC.publicationTitre());
742
		contenuParams.set("i18n_titre", i18nC.publicationTitre());
743
		contenuParams.set("i18n_revue", i18nC.publicationRevueCollection());
743
		contenuParams.set("i18n_revue", i18nC.publicationRevueCollection());
744
		contenuParams.set("i18n_editeur", i18nC.publicationEditeur());
744
		contenuParams.set("i18n_editeur", i18nC.publicationEditeur());
745
		contenuParams.set("i18n_annee", i18nC.publicationDateParution());
745
		contenuParams.set("i18n_annee", i18nC.publicationDateParution());
746
		contenuParams.set("i18n_nvt", i18nC.publicationNvt());
746
		contenuParams.set("i18n_nvt", i18nC.publicationNvt());
747
		contenuParams.set("i18n_fascicule", i18nC.publicationFascicule());
747
		contenuParams.set("i18n_fascicule", i18nC.publicationFascicule());
748
		contenuParams.set("i18n_page", i18nC.publicationPage());
748
		contenuParams.set("i18n_page", i18nC.publicationPage());
749
		
749
		
750
		String lignesPublication = ""; 
750
		String lignesPublication = ""; 
751
		if (collection.getPublicationsLiees() != null) {
751
		if (collection.getPublicationsLiees() != null) {
752
			Iterator<String> it = collection.getPublicationsLiees().keySet().iterator();
752
			Iterator<String> it = collection.getPublicationsLiees().keySet().iterator();
753
			while (it.hasNext()) {
753
			while (it.hasNext()) {
754
				CollectionAPublication relationCollectionAPublication = collection.getPublicationsLiees().get(it.next());
754
				CollectionAPublication relationCollectionAPublication = collection.getPublicationsLiees().get(it.next());
755
				Publication publication = relationCollectionAPublication.getPublication();
755
				Publication publication = relationCollectionAPublication.getPublication();
756
				Params ligneParams = new Params();
756
				Params ligneParams = new Params();
757
				
757
				
758
				ligneParams.set("auteur", publication.getAuteur());
758
				ligneParams.set("auteur", publication.getAuteur());
759
				ligneParams.set("titre", publication.getTitre());
759
				ligneParams.set("titre", publication.getTitre());
760
				ligneParams.set("revue", publication.getCollection());
760
				ligneParams.set("revue", publication.getCollection());
761
				ligneParams.set("editeur", publication.getEditeur());
761
				ligneParams.set("editeur", publication.getEditeur());
762
				ligneParams.set("annee", publication.getAnneeParution());
762
				ligneParams.set("annee", publication.getAnneeParution());
763
				ligneParams.set("nvt", publication.getIndicationNvt());
763
				ligneParams.set("nvt", publication.getIndicationNvt());
764
				ligneParams.set("fascicule", publication.getFascicule());
764
				ligneParams.set("fascicule", publication.getFascicule());
765
				ligneParams.set("page", publication.getPages());
765
				ligneParams.set("page", publication.getPages());
766
				lignesPublication += Format.substitute(lignePublicationLieeTpl, ligneParams);
766
				lignesPublication += Format.substitute(lignePublicationLieeTpl, ligneParams);
767
			}
767
			}
768
		}
768
		}
769
 
769
 
770
		String cHtml = i18nC.nonRenseigne();
770
		String cHtml = i18nC.nonRenseigne();
771
		if (!UtilString.isEmpty(lignesPublication)) {
771
		if (!UtilString.isEmpty(lignesPublication)) {
772
			contenuParams.set("lignes", lignesPublication);
772
			contenuParams.set("lignes", lignesPublication);
773
			cHtml = Format.substitute(tableauPublicationsLieesTpl, contenuParams);
773
			cHtml = Format.substitute(tableauPublicationsLieesTpl, contenuParams);
774
		}
774
		}
775
		return cHtml;
775
		return cHtml;
776
	}
776
	}
777
	
777
	
778
	private void afficherDescription() {
778
	private void afficherDescription() {
779
		Params descriptionParams = new Params();
779
		Params descriptionParams = new Params();
780
		descriptionParams.set("i18n_titre_description", i18nC.collectionDescriptionTitre());
780
		descriptionParams.set("i18n_titre_description", i18nC.collectionDescriptionTitre());
781
		descriptionParams.set("i18n_type_botanique", i18nC.typeCollectionBotanique());
781
		descriptionParams.set("i18n_type_botanique", i18nC.typeCollectionBotanique());
782
		descriptionParams.set("i18n_nbre_echantillon", i18nC.nbreEchantillon());
782
		descriptionParams.set("i18n_nbre_echantillon", i18nC.nbreEchantillon());
783
		
783
		
784
		descriptionParams.set("i18n_titre_unite_rangement", i18nC.collectionUniteRangementTitre());
784
		descriptionParams.set("i18n_titre_unite_rangement", i18nC.collectionUniteRangementTitre());
785
		descriptionParams.set("i18n_etat_unite_rangement", i18nC.collectionUniteRangementEtatGeneralDetail());
785
		descriptionParams.set("i18n_etat_unite_rangement", i18nC.collectionUniteRangementEtatGeneralDetail());
786
		descriptionParams.set("i18n_titre_unite_base", i18nC.collectionUniteBaseTitre());
786
		descriptionParams.set("i18n_titre_unite_base", i18nC.collectionUniteBaseTitre());
787
		
787
		
788
		descriptionParams.set("i18n_titre_conservation", i18nC.collectionTitreConservation());
788
		descriptionParams.set("i18n_titre_conservation", i18nC.collectionTitreConservation());
789
		descriptionParams.set("i18n_type_papier", i18nC.typePapierConservationDetail());
789
		descriptionParams.set("i18n_type_papier", i18nC.typePapierConservationDetail());
790
		descriptionParams.set("i18n_conservation_methode", i18nC.methodeConservationDetail());
790
		descriptionParams.set("i18n_conservation_methode", i18nC.methodeConservationDetail());
791
		
791
		
792
		descriptionParams.set("i18n_titre_etiquette", i18nC.collectionTitreEtiquette());
792
		descriptionParams.set("i18n_titre_etiquette", i18nC.collectionTitreEtiquette());
793
		descriptionParams.set("i18n_specimen_fixation_pourcent", i18nC.specimenFixationPourcent());
793
		descriptionParams.set("i18n_specimen_fixation_pourcent", i18nC.specimenFixationPourcent());
794
		descriptionParams.set("i18n_etiquette_fixation_pourcent", i18nC.etiquetteFixationPourcent());
794
		descriptionParams.set("i18n_etiquette_fixation_pourcent", i18nC.etiquetteFixationPourcent());
795
		descriptionParams.set("i18n_specimen_fixation_methode", i18nC.specimenMethodeFixationDetail());
795
		descriptionParams.set("i18n_specimen_fixation_methode", i18nC.specimenMethodeFixationDetail());
796
		descriptionParams.set("i18n_etiquette_fixation_methode_support", i18nC.etiquetteMethodeFixationSurSupportDetail());
796
		descriptionParams.set("i18n_etiquette_fixation_methode_support", i18nC.etiquetteMethodeFixationSurSupportDetail());
797
		descriptionParams.set("i18n_etiquette_fixation_methode_specimen", i18nC.etiquetteMethodeFixationSurSpecimenDetail());
797
		descriptionParams.set("i18n_etiquette_fixation_methode_specimen", i18nC.etiquetteMethodeFixationSurSpecimenDetail());
798
		descriptionParams.set("i18n_etiquette_type_ecriture", i18nC.typeEcritureDetail());
798
		descriptionParams.set("i18n_etiquette_type_ecriture", i18nC.typeEcritureDetail());
799
		
799
		
800
		descriptionParams.set("i18n_titre_traitement", i18nC.collectionTitreTraitement());
800
		descriptionParams.set("i18n_titre_traitement", i18nC.collectionTitreTraitement());
801
		descriptionParams.set("i18n_traitement", i18nC.collectionTraitementDetail());
801
		descriptionParams.set("i18n_traitement", i18nC.collectionTraitementDetail());
802
		descriptionParams.set("i18n_traitement_poison", i18nC.collectionTraitementPoisonDetail());
802
		descriptionParams.set("i18n_traitement_poison", i18nC.collectionTraitementPoisonDetail());
803
		descriptionParams.set("i18n_traitement_insecte", i18nC.collectionTraitementInsecteDetail());
803
		descriptionParams.set("i18n_traitement_insecte", i18nC.collectionTraitementInsecteDetail());
804
		
804
		
805
		descriptionParams.set("i18n_titre_etat_degradation", i18nC.collectionTitreEtatEtDegradation());
805
		descriptionParams.set("i18n_titre_etat_degradation", i18nC.collectionTitreEtatEtDegradation());
806
		descriptionParams.set("i18n_etat_general", i18nC.collectionEtatGeneralDetail());
806
		descriptionParams.set("i18n_etat_general", i18nC.collectionEtatGeneralDetail());
807
		descriptionParams.set("i18n_degradation_specimen", i18nC.degradationSpecimenDetail());
807
		descriptionParams.set("i18n_degradation_specimen", i18nC.degradationSpecimenDetail());
808
		descriptionParams.set("i18n_degradation_presentation", i18nC.degradationPresentationDetail());
808
		descriptionParams.set("i18n_degradation_presentation", i18nC.degradationPresentationDetail());
809
		descriptionParams.set("i18n_determination", i18nC.collectionDeterminationDetail());
809
		descriptionParams.set("i18n_determination", i18nC.collectionDeterminationDetail());
810
		
810
		
811
		String typeBota = construireTxtListeOntologie(collection.getBotanique().getType());
811
		String typeBota = construireTxtListeOntologie(collection.getBotanique().getType());
812
		descriptionParams.set("type_botanique", typeBota);
812
		descriptionParams.set("type_botanique", typeBota);
813
		descriptionParams.set("nbre_echantillon", collection.getBotanique().getNbreEchantillon());
813
		descriptionParams.set("nbre_echantillon", collection.getBotanique().getNbreEchantillon());
814
		
814
		
815
		CollectionBotanique collectionBotanique = collection.getBotanique();
815
		CollectionBotanique collectionBotanique = collection.getBotanique();
816
		String etatUniteRangement = construireTxtListeOntologie(collectionBotanique.getUniteRangementEtat());
816
		String etatUniteRangement = construireTxtListeOntologie(collectionBotanique.getUniteRangementEtat());
817
		String tableauUniteRangementHtml = construireTableauUniteRangement();
817
		String tableauUniteRangementHtml = construireTableauUniteRangement();
818
		String tableauUniteBaseHtml = construireTableauUniteBase();
818
		String tableauUniteBaseHtml = construireTableauUniteBase();
819
		descriptionParams.set("tableau_unite_rangement", tableauUniteRangementHtml);
819
		descriptionParams.set("tableau_unite_rangement", tableauUniteRangementHtml);
820
		descriptionParams.set("etat_unite_rangement", etatUniteRangement);
820
		descriptionParams.set("etat_unite_rangement", etatUniteRangement);
821
		descriptionParams.set("tableau_unite_base", tableauUniteBaseHtml);
821
		descriptionParams.set("tableau_unite_base", tableauUniteBaseHtml);
822
		
822
		
823
		String typePapier = construireTxtListeOntologie(collectionBotanique.getConservationPapierType());
823
		String typePapier = construireTxtListeOntologie(collectionBotanique.getConservationPapierType());
824
		String conservationMethode = construireTxtListeOntologie(collectionBotanique.getConservationMethode());
824
		String conservationMethode = construireTxtListeOntologie(collectionBotanique.getConservationMethode());
825
		descriptionParams.set("type_papier", typePapier);
825
		descriptionParams.set("type_papier", typePapier);
826
		descriptionParams.set("conservation_methode", conservationMethode);
826
		descriptionParams.set("conservation_methode", conservationMethode);
827
		
827
		
828
		String specimenFixationMethode = construireTxtListeOntologie(collectionBotanique.getSpecimenFixationMethode());
828
		String specimenFixationMethode = construireTxtListeOntologie(collectionBotanique.getSpecimenFixationMethode());
829
		String etiquetteFixationMethodeSupport = construireTxtListeOntologie(collectionBotanique.getEtiquetteFixationSupport());
829
		String etiquetteFixationMethodeSupport = construireTxtListeOntologie(collectionBotanique.getEtiquetteFixationSupport());
830
		String etiquetteFixationMethodeSpecimen = construireTxtListeOntologie(collectionBotanique.getEtiquetteFixationSpecimen());
830
		String etiquetteFixationMethodeSpecimen = construireTxtListeOntologie(collectionBotanique.getEtiquetteFixationSpecimen());
831
		String etiquetteTypeEcriture = construireTxtListeOntologie(collectionBotanique.getEtiquetteEcriture());
831
		String etiquetteTypeEcriture = construireTxtListeOntologie(collectionBotanique.getEtiquetteEcriture());
832
		descriptionParams.set("specimen_fixation_pourcent", collectionBotanique.getSpecimenFixationPourcent());
832
		descriptionParams.set("specimen_fixation_pourcent", collectionBotanique.getSpecimenFixationPourcent());
833
		descriptionParams.set("etiquette_fixation_pourcent", collectionBotanique.getEtiquetteFixationPourcent());
833
		descriptionParams.set("etiquette_fixation_pourcent", collectionBotanique.getEtiquetteFixationPourcent());
834
		descriptionParams.set("specimen_fixation_methode", specimenFixationMethode);
834
		descriptionParams.set("specimen_fixation_methode", specimenFixationMethode);
835
		descriptionParams.set("etiquette_fixation_methode_support", etiquetteFixationMethodeSupport);
835
		descriptionParams.set("etiquette_fixation_methode_support", etiquetteFixationMethodeSupport);
836
		descriptionParams.set("etiquette_fixation_methode_specimen", etiquetteFixationMethodeSpecimen);
836
		descriptionParams.set("etiquette_fixation_methode_specimen", etiquetteFixationMethodeSpecimen);
837
		descriptionParams.set("etiquette_type_ecriture", etiquetteTypeEcriture);
837
		descriptionParams.set("etiquette_type_ecriture", etiquetteTypeEcriture);
838
		
838
		
839
		String traitement = construireTxtListeOntologie(collectionBotanique.getTraitement());
839
		String traitement = construireTxtListeOntologie(collectionBotanique.getTraitement());
840
		String traitementPoison = construireTxtListeOntologie(collectionBotanique.getTraitementPoison());
840
		String traitementPoison = construireTxtListeOntologie(collectionBotanique.getTraitementPoison());
841
		String traitementInsecte = construireTxtListeOntologie(collectionBotanique.getTraitementInsecte());
841
		String traitementInsecte = construireTxtListeOntologie(collectionBotanique.getTraitementInsecte());
842
		descriptionParams.set("traitement", traitement);
842
		descriptionParams.set("traitement", traitement);
843
		descriptionParams.set("traitement_poison", traitementPoison);
843
		descriptionParams.set("traitement_poison", traitementPoison);
844
		descriptionParams.set("traitement_insecte", traitementInsecte);
844
		descriptionParams.set("traitement_insecte", traitementInsecte);
845
		
845
		
846
		String etatGeneral = construireTxtListeOntologie(collectionBotanique.getEtatGeneral());
846
		String etatGeneral = construireTxtListeOntologie(collectionBotanique.getEtatGeneral());
847
		boolean valeurEstOntologie = false;
847
		boolean valeurEstOntologie = false;
848
		boolean typeEstOntologie = true;
848
		boolean typeEstOntologie = true;
849
		boolean donneeEstOntologie = true;
849
		boolean donneeEstOntologie = true;
850
		String degradationSpecimen = construireTxtListeOntologie(collectionBotanique.getDegradationSpecimen(), valeurEstOntologie, typeEstOntologie, donneeEstOntologie);
850
		String degradationSpecimen = construireTxtListeOntologie(collectionBotanique.getDegradationSpecimen(), valeurEstOntologie, typeEstOntologie, donneeEstOntologie);
851
		String degradationPresentation = construireTxtListeOntologie(collectionBotanique.getDegradationPresentation(), valeurEstOntologie, typeEstOntologie, donneeEstOntologie);
851
		String degradationPresentation = construireTxtListeOntologie(collectionBotanique.getDegradationPresentation(), valeurEstOntologie, typeEstOntologie, donneeEstOntologie);
852
		String determination = construireTxtListeOntologie(collectionBotanique.getDetermination());
852
		String determination = construireTxtListeOntologie(collectionBotanique.getDetermination());
853
		descriptionParams.set("etat_general", etatGeneral);
853
		descriptionParams.set("etat_general", etatGeneral);
854
		descriptionParams.set("degradation_specimen", degradationSpecimen);
854
		descriptionParams.set("degradation_specimen", degradationSpecimen);
855
		descriptionParams.set("degradation_presentation", degradationPresentation);
855
		descriptionParams.set("degradation_presentation", degradationPresentation);
856
		descriptionParams.set("determination", determination);
856
		descriptionParams.set("determination", determination);
857
		
857
		
858
		afficherOnglet(descriptionTpl, descriptionParams, descriptionOnglet);
858
		afficherOnglet(descriptionTpl, descriptionParams, descriptionOnglet);
859
	}
859
	}
860
	
860
	
861
	private String construireTableauUniteRangement() {
861
	private String construireTableauUniteRangement() {
862
		Params contenuParams = new Params();
862
		Params contenuParams = new Params();
863
		contenuParams.set("i18n_type", i18nC.collectionUniteType());
863
		contenuParams.set("i18n_type", i18nC.collectionUniteType());
864
		contenuParams.set("i18n_nombre", i18nC.collectionUniteNbre());
864
		contenuParams.set("i18n_nombre", i18nC.collectionUniteNbre());
865
		contenuParams.set("i18n_precision", i18nC.collectionUnitePrecision());
865
		contenuParams.set("i18n_precision", i18nC.collectionUnitePrecision());
866
		contenuParams.set("i18n_format", i18nC.collectionUniteFormat());
866
		contenuParams.set("i18n_format", i18nC.collectionUniteFormat());
867
		
867
		
868
		CollectionBotanique collectionBotanique = collection.getBotanique();
868
		CollectionBotanique collectionBotanique = collection.getBotanique();
869
		HashMap<String,UniteRangement> unites = CollectionFormDescription.parserValeurUniteRangement(collectionBotanique.getUniteRangement());
869
		HashMap<String,UniteRangement> unites = CollectionFormDescription.parserValeurUniteRangement(collectionBotanique.getUniteRangement());
870
		
870
		
871
		String lignesUnite = "";
871
		String lignesUnite = "";
872
		Iterator<String> it = unites.keySet().iterator();
872
		Iterator<String> it = unites.keySet().iterator();
873
		while (it.hasNext()) {
873
		while (it.hasNext()) {
874
			String cle = it.next();
874
			String cle = it.next();
875
			UniteRangement unite = unites.get(cle);
875
			UniteRangement unite = unites.get(cle);
876
			if (unite.getNombre() != 0) {
876
			if (unite.getNombre() != 0) {
877
				Params ligneParams = new Params();
877
				Params ligneParams = new Params();
878
				if (unite.getTypeAutre()) {
878
				if (unite.getTypeAutre()) {
879
					ligneParams.set("type", unite.getType());
879
					ligneParams.set("type", unite.getType());
880
				} else {
880
				} else {
881
					ligneParams.set("type", construireTxtListeOntologie(unite.getId()));
881
					ligneParams.set("type", construireTxtListeOntologie(unite.getId()));
882
				}
882
				}
883
				ligneParams.set("nombre", UtilNombre.formaterEnEntier(unite.getNombre()));
883
				ligneParams.set("nombre", UtilNombre.formaterEnEntier(unite.getNombre()));
884
				ligneParams.set("precision", unite.getPrecision());
884
				ligneParams.set("precision", unite.getPrecision());
885
				ligneParams.set("format", unite.getFormat());
885
				ligneParams.set("format", unite.getFormat());
886
				
886
				
887
				lignesUnite += Format.substitute(ligneUniteRangementTpl, ligneParams);
887
				lignesUnite += Format.substitute(ligneUniteRangementTpl, ligneParams);
888
			}
888
			}
889
		}
889
		}
890
 
890
 
891
		String cHtml = i18nC.nonRenseigne();
891
		String cHtml = i18nC.nonRenseigne();
892
		if (!UtilString.isEmpty(lignesUnite)) {
892
		if (!UtilString.isEmpty(lignesUnite)) {
893
			contenuParams.set("lignes", lignesUnite);
893
			contenuParams.set("lignes", lignesUnite);
894
			cHtml = Format.substitute(tableauUniteRangementTpl, contenuParams);
894
			cHtml = Format.substitute(tableauUniteRangementTpl, contenuParams);
895
		}
895
		}
896
		return cHtml;
896
		return cHtml;
897
	}
897
	}
898
	
898
	
899
	private String construireTableauUniteBase() {
899
	private String construireTableauUniteBase() {
900
		Params contenuParams = new Params();
900
		Params contenuParams = new Params();
901
		contenuParams.set("i18n_unite_base", i18nC.collectionUniteBase());
901
		contenuParams.set("i18n_unite_base", i18nC.collectionUniteBase());
902
		contenuParams.set("i18n_part", i18nC.collectionUniteBasePart());
902
		contenuParams.set("i18n_part", i18nC.collectionUniteBasePart());
903
		contenuParams.set("i18n_sp", i18nC.collectionUniteBaseSp());
903
		contenuParams.set("i18n_sp", i18nC.collectionUniteBaseSp());
904
		
904
		
905
		contenuParams.set("i18n_type", i18nC.collectionUniteType());
905
		contenuParams.set("i18n_type", i18nC.collectionUniteType());
906
		contenuParams.set("i18n_nombre", i18nC.collectionUniteNbre());
906
		contenuParams.set("i18n_nombre", i18nC.collectionUniteNbre());
907
		contenuParams.set("i18n_precision", i18nC.collectionUnitePrecision());
907
		contenuParams.set("i18n_precision", i18nC.collectionUnitePrecision());
908
		contenuParams.set("i18n_format", i18nC.collectionUniteFormat());
908
		contenuParams.set("i18n_format", i18nC.collectionUniteFormat());
909
		
909
		
910
		CollectionBotanique collectionBotanique = collection.getBotanique();
910
		CollectionBotanique collectionBotanique = collection.getBotanique();
911
		HashMap<String,UniteBase> unites = CollectionFormDescription.parserValeurUniteBase(collectionBotanique.getUniteBase());
911
		HashMap<String,UniteBase> unites = CollectionFormDescription.parserValeurUniteBase(collectionBotanique.getUniteBase());
912
		
912
		
913
		String lignesUnite = "";
913
		String lignesUnite = "";
914
		Iterator<String> it = unites.keySet().iterator();
914
		Iterator<String> it = unites.keySet().iterator();
915
		while (it.hasNext()) {
915
		while (it.hasNext()) {
916
			String cle = it.next();
916
			String cle = it.next();
917
			UniteBase unite = unites.get(cle);
917
			UniteBase unite = unites.get(cle);
918
			if (unite.getNombre() != 0 || unite.getNombrePart() != 0 || unite.getNombreSp() != 0) {
918
			if (unite.getNombre() != 0 || unite.getNombrePart() != 0 || unite.getNombreSp() != 0) {
919
				Params ligneParams = new Params();
919
				Params ligneParams = new Params();
920
				if (unite.getTypeAutre()) {
920
				if (unite.getTypeAutre()) {
921
					ligneParams.set("type", unite.getType());
921
					ligneParams.set("type", unite.getType());
922
				} else {
922
				} else {
923
					ligneParams.set("type", construireTxtListeOntologie(unite.getId()));
923
					ligneParams.set("type", construireTxtListeOntologie(unite.getId()));
924
				}
924
				}
925
				ligneParams.set("nombre", UtilNombre.formaterEnEntier(unite.getNombre()));
925
				ligneParams.set("nombre", UtilNombre.formaterEnEntier(unite.getNombre()));
926
				ligneParams.set("precision", unite.getPrecision());
926
				ligneParams.set("precision", unite.getPrecision());
927
				ligneParams.set("format", unite.getFormat());
927
				ligneParams.set("format", unite.getFormat());
928
				ligneParams.set("part_nombre", UtilNombre.formaterEnEntier(unite.getNombrePart()));
928
				ligneParams.set("part_nombre", UtilNombre.formaterEnEntier(unite.getNombrePart()));
929
				ligneParams.set("part_precision", unite.getPrecisionPart());
929
				ligneParams.set("part_precision", unite.getPrecisionPart());
930
				ligneParams.set("sp_nombre", UtilNombre.formaterEnEntier(unite.getNombreSp()));
930
				ligneParams.set("sp_nombre", UtilNombre.formaterEnEntier(unite.getNombreSp()));
931
				ligneParams.set("sp_precision", unite.getPrecisionSp());
931
				ligneParams.set("sp_precision", unite.getPrecisionSp());
932
				
932
				
933
				lignesUnite += Format.substitute(ligneUniteBaseTpl, ligneParams);
933
				lignesUnite += Format.substitute(ligneUniteBaseTpl, ligneParams);
934
			}
934
			}
935
		}
935
		}
936
		
936
		
937
		String cHtml = i18nC.nonRenseigne();
937
		String cHtml = i18nC.nonRenseigne();
938
		if (!UtilString.isEmpty(lignesUnite)) {
938
		if (!UtilString.isEmpty(lignesUnite)) {
939
			contenuParams.set("lignes", lignesUnite);
939
			contenuParams.set("lignes", lignesUnite);
940
			cHtml = Format.substitute(tableauUniteBaseTpl, contenuParams);
940
			cHtml = Format.substitute(tableauUniteBaseTpl, contenuParams);
941
		}
941
		}
942
		return cHtml;
942
		return cHtml;
943
	}
943
	}
944
	
944
	
945
	private void afficherContenu() {
945
	private void afficherContenu() {
946
		Params contenuParams = new Params();
946
		Params contenuParams = new Params();
947
		contenuParams.set("i18n_titre_nature", i18nC.collectionNatureTitre());
947
		contenuParams.set("i18n_titre_nature", i18nC.collectionNatureTitre());
948
		contenuParams.set("i18n_nature", i18nC.natureVegetaleContenuDetail());
948
		contenuParams.set("i18n_nature", i18nC.natureVegetaleContenuDetail());
949
		contenuParams.set("i18n_specialite", i18nC.specialiteCollectionDetail());
949
		contenuParams.set("i18n_specialite", i18nC.specialiteCollectionDetail());
950
		
950
		
951
		contenuParams.set("i18n_titre_constitution", i18nC.collectionConstitutionTitre());
951
		contenuParams.set("i18n_titre_constitution", i18nC.collectionConstitutionTitre());
952
		contenuParams.set("i18n_periode", i18nC.periodeConstitutionDetail());
952
		contenuParams.set("i18n_periode", i18nC.periodeConstitutionDetail());
953
		contenuParams.set("i18n_date_debut", i18nC.dateDebutCollectionDetail());
953
		contenuParams.set("i18n_date_debut", i18nC.dateDebutCollectionDetail());
954
		contenuParams.set("i18n_date_fin", i18nC.dateFinCollectionDetail());
954
		contenuParams.set("i18n_date_fin", i18nC.dateFinCollectionDetail());
955
		
955
		
956
		contenuParams.set("i18n_titre_classement", i18nC.collectionClassementTitre());
956
		contenuParams.set("i18n_titre_classement", i18nC.collectionClassementTitre());
957
		contenuParams.set("i18n_classement_etat", i18nC.etatClassementCollectionDetail());
957
		contenuParams.set("i18n_classement_etat", i18nC.etatClassementCollectionDetail());
958
		contenuParams.set("i18n_classement", i18nC.annotationClassementCollectionDetail());
958
		contenuParams.set("i18n_classement", i18nC.annotationClassementCollectionDetail());
959
		
959
		
960
		contenuParams.set("i18n_titre_etiquette", i18nC.collectionEtiquetteTitre());
960
		contenuParams.set("i18n_titre_etiquette", i18nC.collectionEtiquetteTitre());
961
		contenuParams.set("i18n_etiquette_renseignement", i18nC.etiquetteRenseignementDetail());
961
		contenuParams.set("i18n_etiquette_renseignement", i18nC.etiquetteRenseignementDetail());
962
		contenuParams.set("i18n_precision_localite", i18nC.precisionLocaliteDetail());
962
		contenuParams.set("i18n_precision_localite", i18nC.precisionLocaliteDetail());
963
		contenuParams.set("i18n_precision_date", i18nC.precisionDateDetail());
963
		contenuParams.set("i18n_precision_date", i18nC.precisionDateDetail());
964
		contenuParams.set("i18n_etiquette_annotation", i18nC.etiquetteAnnotationDetail());
964
		contenuParams.set("i18n_etiquette_annotation", i18nC.etiquetteAnnotationDetail());
965
		
965
		
966
		contenuParams.set("i18n_titre_integree", i18nC.collectionIntegreeTitre());
966
		contenuParams.set("i18n_titre_integree", i18nC.collectionIntegreeTitre());
967
		contenuParams.set("i18n_collection_integration", i18nC.integreCollectionDetail());
967
		contenuParams.set("i18n_collection_integration", i18nC.integreCollectionDetail());
968
		contenuParams.set("i18n_collection_integration_info", i18nC.infoIntegreCollectionDetail());
968
		contenuParams.set("i18n_collection_integration_info", i18nC.infoIntegreCollectionDetail());
969
		
969
		
970
		CollectionBotanique collectionBotanique = collection.getBotanique();
970
		CollectionBotanique collectionBotanique = collection.getBotanique();
971
		String nature = construireTxtListeOntologie(collectionBotanique.getNature());
971
		String nature = construireTxtListeOntologie(collectionBotanique.getNature());
972
		contenuParams.set("nature", nature);
972
		contenuParams.set("nature", nature);
973
		contenuParams.set("specialite", collectionBotanique.getSpecialite());
973
		contenuParams.set("specialite", collectionBotanique.getSpecialite());
974
		
974
		
975
		String periode = construireTxtListeOntologie(collection.getPeriodeConstitution());
975
		String periode = construireTxtListeOntologie(collection.getPeriodeConstitution());
976
		String dateDebut = collectionBotanique.getRecolteDateDebut();
976
		String dateDebut = collectionBotanique.getRecolteDateDebut();
977
		String dateDebutPrecision = construireTxtListeOntologie(collectionBotanique.getRecolteDateDebutType());
977
		String dateDebutPrecision = construireTxtListeOntologie(collectionBotanique.getRecolteDateDebutType());
978
		String dateDebutRecolte = (UtilString.isEmpty(dateDebut)) ? "" : dateDebut+" ("+dateDebutPrecision+")";
978
		String dateDebutRecolte = (UtilString.isEmpty(dateDebut)) ? "" : dateDebut+" ("+dateDebutPrecision+")";
979
		String dateFin = collectionBotanique.getRecolteDateFin();
979
		String dateFin = collectionBotanique.getRecolteDateFin();
980
		String dateFinPrecision = construireTxtListeOntologie(collectionBotanique.getRecolteDateFinType());
980
		String dateFinPrecision = construireTxtListeOntologie(collectionBotanique.getRecolteDateFinType());
981
		String dateFinRecolte = (UtilString.isEmpty(dateFin)) ? "" : dateFin+" ("+dateFinPrecision+")";
981
		String dateFinRecolte = (UtilString.isEmpty(dateFin)) ? "" : dateFin+" ("+dateFinPrecision+")";
982
		contenuParams.set("periode", periode);
982
		contenuParams.set("periode", periode);
983
		contenuParams.set("date_debut", dateDebutRecolte);
983
		contenuParams.set("date_debut", dateDebutRecolte);
984
		contenuParams.set("date_fin", dateFinRecolte);
984
		contenuParams.set("date_fin", dateFinRecolte);
985
		
985
		
986
		String classementEtat = construireTxtListeOntologie(collectionBotanique.getClassementEtat());
986
		String classementEtat = construireTxtListeOntologie(collectionBotanique.getClassementEtat());
987
		contenuParams.set("classement_etat", classementEtat);
987
		contenuParams.set("classement_etat", classementEtat);
988
		contenuParams.set("classement", collectionBotanique.getClassementAnnotation());
988
		contenuParams.set("classement", collectionBotanique.getClassementAnnotation());
989
		
989
		
990
		String etiquetteRenseignements = "";
990
		String etiquetteRenseignements = "";
991
		HashMap<String,String> infos = CollectionFormContenu.parserEtiquetteRenseignement(collectionBotanique.getEtiquetteRenseignement());
991
		HashMap<String,String> infos = CollectionFormContenu.parserEtiquetteRenseignement(collectionBotanique.getEtiquetteRenseignement());
992
		if (infos != null) {
992
		if (infos != null) {
993
			Iterator<String> it = infos.keySet().iterator();
993
			Iterator<String> it = infos.keySet().iterator();
994
			while (it.hasNext()) {
994
			while (it.hasNext()) {
995
				String cle = it.next();
995
				String cle = it.next();
996
				if (cle.equals("AT")) {
996
				if (cle.equals("AT")) {
997
					etiquetteRenseignements += i18nC.etiquetteAuteurCollection();
997
					etiquetteRenseignements += i18nC.etiquetteAuteurCollection();
998
				} else if (cle.equals("F")) {
998
				} else if (cle.equals("F")) {
999
					etiquetteRenseignements += i18nC.etiquetteFamille();
999
					etiquetteRenseignements += i18nC.etiquetteFamille();
1000
				} else if (cle.equals("G")) {
1000
				} else if (cle.equals("G")) {
1001
					etiquetteRenseignements += i18nC.etiquetteGenre();
1001
					etiquetteRenseignements += i18nC.etiquetteGenre();
1002
				} else if (cle.equals("SP")) {
1002
				} else if (cle.equals("SP")) {
1003
					etiquetteRenseignements += i18nC.etiquetteSp();
1003
					etiquetteRenseignements += i18nC.etiquetteSp();
1004
				} else if (cle.equals("ASP")) {
1004
				} else if (cle.equals("ASP")) {
1005
					etiquetteRenseignements += i18nC.etiquetteAuteurSp();
1005
					etiquetteRenseignements += i18nC.etiquetteAuteurSp();
1006
				} else if (cle.equals("L")) {
1006
				} else if (cle.equals("L")) {
1007
					etiquetteRenseignements += i18nC.etiquetteLocalite();
1007
					etiquetteRenseignements += i18nC.etiquetteLocalite();
1008
				} else if (cle.equals("D")) {
1008
				} else if (cle.equals("D")) {
1009
					etiquetteRenseignements += i18nC.etiquetteDateRecolte();
1009
					etiquetteRenseignements += i18nC.etiquetteDateRecolte();
1010
				} else {
1010
				} else {
1011
					etiquetteRenseignements += i18nC.inconnue();
1011
					etiquetteRenseignements += i18nC.inconnue();
1012
				}
1012
				}
1013
				if (it.hasNext()) etiquetteRenseignements += ": "+infos.get(cle)+"%, ";
1013
				if (it.hasNext()) etiquetteRenseignements += ": "+infos.get(cle)+"%, ";
1014
				else etiquetteRenseignements += ": "+infos.get(cle)+"%.";
1014
				else etiquetteRenseignements += ": "+infos.get(cle)+"%.";
1015
			}
1015
			}
1016
		}
1016
		}
1017
		String precisionLocalite = construireTxtListeOntologie(collectionBotanique.getPrecisionLocalite());
1017
		String precisionLocalite = construireTxtListeOntologie(collectionBotanique.getPrecisionLocalite());
1018
		String precisionDate = construireTxtListeOntologie(collectionBotanique.getPrecisionDate());
1018
		String precisionDate = construireTxtListeOntologie(collectionBotanique.getPrecisionDate());
1019
		contenuParams.set("etiquette_renseignement", etiquetteRenseignements);
1019
		contenuParams.set("etiquette_renseignement", etiquetteRenseignements);
1020
		contenuParams.set("precision_localite", precisionLocalite);
1020
		contenuParams.set("precision_localite", precisionLocalite);
1021
		contenuParams.set("precision_date", precisionDate);
1021
		contenuParams.set("precision_date", precisionDate);
1022
		contenuParams.set("etiquette_annotation", collectionBotanique.getAnnotationsDiverses());
1022
		contenuParams.set("etiquette_annotation", collectionBotanique.getAnnotationsDiverses());
1023
		
1023
		
1024
		String collectionIntegration = construireTxtListeOntologie(collectionBotanique.getCollectionIntegre());
1024
		String collectionIntegration = construireTxtListeOntologie(collectionBotanique.getCollectionIntegre());
1025
		String collectionIntegrationInfo = construireTxtListeOntologie(collectionBotanique.getCollectionIntegreInfo());
1025
		String collectionIntegrationInfo = construireTxtListeOntologie(collectionBotanique.getCollectionIntegreInfo());
1026
		contenuParams.set("collection_integration", collectionIntegration);
1026
		contenuParams.set("collection_integration", collectionIntegration);
1027
		contenuParams.set("collection_integration_info", collectionIntegrationInfo);
1027
		contenuParams.set("collection_integration_info", collectionIntegrationInfo);
1028
		
1028
		
1029
		afficherOnglet(contenuTpl, contenuParams, contenuOnglet);
1029
		afficherOnglet(contenuTpl, contenuParams, contenuOnglet);
1030
	}
1030
	}
1031
		
1031
		
1032
	private void afficherInventaire() {
1032
	private void afficherInventaire() {
1033
		Params inventaireParams = new Params();
1033
		Params inventaireParams = new Params();
1034
		inventaireParams.set("i18n_titre_inventaire", i18nC.collectionInventaireTitre());
1034
		inventaireParams.set("i18n_titre_inventaire", i18nC.collectionInventaireTitre());
1035
		inventaireParams.set("i18n_existence", i18nC.existenceInventaireCollectionDetail());
1035
		inventaireParams.set("i18n_existence", i18nC.existenceInventaireCollectionDetail());
1036
		inventaireParams.set("i18n_participation_auteur", i18nC.auteurInventaireCollectionDetail());
1036
		inventaireParams.set("i18n_participation_auteur", i18nC.auteurInventaireCollectionDetail());
1037
		inventaireParams.set("i18n_forme", i18nC.formeInventaireCollectionDetail());
1037
		inventaireParams.set("i18n_forme", i18nC.formeInventaireCollectionDetail());
1038
		inventaireParams.set("i18n_info", i18nC.infoInventaireCollectionDetail());
1038
		inventaireParams.set("i18n_info", i18nC.infoInventaireCollectionDetail());
1039
		inventaireParams.set("i18n_digital", i18nC.digitalInventaireCollectionDetail());
1039
		inventaireParams.set("i18n_digital", i18nC.digitalInventaireCollectionDetail());
1040
		inventaireParams.set("i18n_digital_pourcent", i18nC.pourcentDigitalInventaireCollectionDetail());
1040
		inventaireParams.set("i18n_digital_pourcent", i18nC.pourcentDigitalInventaireCollectionDetail());
1041
		inventaireParams.set("i18n_etat", i18nC.etatInventaireCollectionDetail());
1041
		inventaireParams.set("i18n_etat", i18nC.etatInventaireCollectionDetail());
1042
		//DELETEME inventaireParams.set("i18n_type_donnee", i18nC.typeDonneeInventaireCollectionDetail());
1042
		//DELETEME inventaireParams.set("i18n_type_donnee", i18nC.typeDonneeInventaireCollectionDetail());
1043
		
1043
		
1044
		CollectionBotanique collectionBotanique = collection.getBotanique();
1044
		CollectionBotanique collectionBotanique = collection.getBotanique();
1045
		String existence = construireTxtListeOntologie(collectionBotanique.getInventaire());
1045
		String existence = construireTxtListeOntologie(collectionBotanique.getInventaire());
1046
		String participationAuteur = construireTxtListeOntologie(collectionBotanique.getInventaireAuteur());
1046
		String participationAuteur = construireTxtListeOntologie(collectionBotanique.getInventaireAuteur());
1047
		String forme = construireTxtListeOntologie(collectionBotanique.getInventaireForme());
1047
		String forme = construireTxtListeOntologie(collectionBotanique.getInventaireForme());
1048
		String digital = construireTxtListeOntologie(collectionBotanique.getInventaireDigital());
1048
		String digital = construireTxtListeOntologie(collectionBotanique.getInventaireDigital());
1049
		String digitalPourcent = collectionBotanique.getInventaireDigitalPourcent()+"%";
1049
		String digitalPourcent = collectionBotanique.getInventaireDigitalPourcent()+"%";
1050
		String etat = construireTxtListeOntologie(collectionBotanique.getInventaireEtat());
1050
		String etat = construireTxtListeOntologie(collectionBotanique.getInventaireEtat());
1051
		inventaireParams.set("existence", existence);
1051
		inventaireParams.set("existence", existence);
1052
		inventaireParams.set("participation_auteur", participationAuteur);
1052
		inventaireParams.set("participation_auteur", participationAuteur);
1053
		inventaireParams.set("forme", forme);
1053
		inventaireParams.set("forme", forme);
1054
		inventaireParams.set("info", collectionBotanique.getInventaireInfo());
1054
		inventaireParams.set("info", collectionBotanique.getInventaireInfo());
1055
		inventaireParams.set("digital", digital);
1055
		inventaireParams.set("digital", digital);
1056
		inventaireParams.set("digital_pourcent", digitalPourcent);
1056
		inventaireParams.set("digital_pourcent", digitalPourcent);
1057
		inventaireParams.set("etat", etat);
1057
		inventaireParams.set("etat", etat);
1058
		//DELETEME inventaireParams.set("type_donnee", collectionBotanique.getInventaireDonneesTypes());
1058
		//DELETEME inventaireParams.set("type_donnee", collectionBotanique.getInventaireDonneesTypes());
1059
		
1059
		
1060
		afficherOnglet(inventaireTpl, inventaireParams, inventaireOnglet);
1060
		afficherOnglet(inventaireTpl, inventaireParams, inventaireOnglet);
1061
	}
1061
	}
1062
	
1062
	
1063
	private void afficherCommentaire() {
1063
	private void afficherCommentaire() {
1064
		String tableauCommentaireHtml = "";
1064
		String tableauCommentaireHtml = "";
1065
		if (collection.getCommentairesLiees() != null && collection.getCommentairesLiees().size() > 0) {
1065
		if (collection.getCommentairesLiees() != null && collection.getCommentairesLiees().size() > 0) {
1066
			tableauCommentaireHtml = construireTableauCommentairesLiees();
1066
			tableauCommentaireHtml = construireTableauCommentairesLiees();
1067
		}
1067
		}
1068
		
1068
		
1069
		Params personneParams = new Params();
1069
		Params personneParams = new Params();
1070
		personneParams.set("i18n_titre_commentaire", i18nC.collectionCommentaireTitre());
1070
		personneParams.set("i18n_titre_commentaire", i18nC.collectionCommentaireTitre());
1071
		personneParams.set("tableau_commentaires_liees", tableauCommentaireHtml);
1071
		personneParams.set("tableau_commentaires_liees", tableauCommentaireHtml);
1072
		
1072
		
1073
		afficherOnglet(commentaireTpl, personneParams, commentaireOnglet);
1073
		afficherOnglet(commentaireTpl, personneParams, commentaireOnglet);
1074
	}
1074
	}
1075
	
1075
	
1076
	private String construireTableauCommentairesLiees() {
1076
	private String construireTableauCommentairesLiees() {
1077
		Params contenuParams = new Params();
1077
		Params contenuParams = new Params();
1078
		contenuParams.set("i18n_type", i18nC.commentaireType());
1078
		contenuParams.set("i18n_type", i18nC.commentaireType());
1079
		contenuParams.set("i18n_titre", i18nC.commentaireTitre());
1079
		contenuParams.set("i18n_titre", i18nC.commentaireTitre());
1080
		contenuParams.set("i18n_texte", i18nC.commentaireTexte());
1080
		contenuParams.set("i18n_texte", i18nC.commentaireTexte());
1081
		contenuParams.set("i18n_ponderation", i18nC.commentairePonderation());
1081
		contenuParams.set("i18n_ponderation", i18nC.commentairePonderation());
1082
		contenuParams.set("i18n_public", i18nC.commentairePublic());
1082
		contenuParams.set("i18n_public", i18nC.commentairePublic());
1083
		
1083
		
1084
		String lignesCommentaire = ""; 
1084
		String lignesCommentaire = ""; 
1085
		if (collection.getCommentairesLiees() != null) {
1085
		if (collection.getCommentairesLiees() != null) {
1086
			Iterator<String> it = collection.getCommentairesLiees().keySet().iterator();
1086
			Iterator<String> it = collection.getCommentairesLiees().keySet().iterator();
1087
			while (it.hasNext()) {
1087
			while (it.hasNext()) {
1088
				CollectionACommentaire relationCollectionACommentaire = collection.getCommentairesLiees().get(it.next());
1088
				CollectionACommentaire relationCollectionACommentaire = collection.getCommentairesLiees().get(it.next());
1089
				Commentaire commentaire = relationCollectionACommentaire.getCommentaire();
1089
				Commentaire commentaire = relationCollectionACommentaire.getCommentaire();
1090
				
1090
				
1091
				String type = construireTxtListeOntologie(relationCollectionACommentaire.getType());
1091
				String type = construireTxtListeOntologie(relationCollectionACommentaire.getType());
1092
				String acces = (commentaire.etrePublic() ? i18nC.donneePublic() : i18nC.donneePrivee());
1092
				String acces = (commentaire.etrePublic() ? i18nC.donneePublic() : i18nC.donneePrivee());
1093
				
1093
				
1094
				Params ligneParams = new Params();
1094
				Params ligneParams = new Params();
1095
				ligneParams.set("type", type);
1095
				ligneParams.set("type", type);
1096
				ligneParams.set("titre", commentaire.getTitre());
1096
				ligneParams.set("titre", commentaire.getTitre());
1097
				ligneParams.set("texte", commentaire.getTexte());
1097
				ligneParams.set("texte", commentaire.getTexte());
1098
				ligneParams.set("ponderation", commentaire.getPonderation()+"/100");
1098
				ligneParams.set("ponderation", commentaire.getPonderation()+"/100");
1099
				ligneParams.set("public", acces);
1099
				ligneParams.set("public", acces);
1100
				
1100
				
1101
				lignesCommentaire += Format.substitute(ligneCommentaireLieeTpl, ligneParams);
1101
				lignesCommentaire += Format.substitute(ligneCommentaireLieeTpl, ligneParams);
1102
			}
1102
			}
1103
		}
1103
		}
1104
		
1104
		
1105
		String cHtml = i18nC.nonRenseigne();
1105
		String cHtml = i18nC.nonRenseigne();
1106
		if (!UtilString.isEmpty(lignesCommentaire)) {
1106
		if (!UtilString.isEmpty(lignesCommentaire)) {
1107
			contenuParams.set("lignes", lignesCommentaire);
1107
			contenuParams.set("lignes", lignesCommentaire);
1108
			cHtml = Format.substitute(tableauCommentairesLieesTpl, contenuParams);
1108
			cHtml = Format.substitute(tableauCommentairesLieesTpl, contenuParams);
1109
		}
1109
		}
1110
		return cHtml;
1110
		return cHtml;
1111
	}
1111
	}
1112
	
1112
	
1113
	protected String getNomStructure() {
1113
	protected String getNomStructure() {
1114
		String nomStructure = "";
1114
		String nomStructure = "";
1115
		if (structure != null) {
1115
		if (structure != null) {
1116
			nomStructure = structure.getNom();
1116
			nomStructure = structure.getNom();
1117
		} else {
1117
		} else {
1118
			nomStructure = collection.getIdStructure();
1118
			nomStructure = collection.getIdStructure();
1119
		}
1119
		}
1120
		return nomStructure;
1120
		return nomStructure;
1121
	}
1121
	}
1122
}
1122
}