Subversion Repositories eFlore/Applications.coel

Rev

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

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