Line 50... |
Line 50... |
50 |
$this->donnees['num_nom'] = $_GET['num_nom'];
|
50 |
$this->donnees['num_nom'] = $_GET['num_nom'];
|
51 |
$this->donnees['num_nom_retenu'] = $_GET['num_nom_retenu'];
|
51 |
$this->donnees['num_nom_retenu'] = $_GET['num_nom_retenu'];
|
52 |
$this->donnees['nom'] = $_GET['nom'];
|
52 |
$this->donnees['nom'] = $_GET['nom'];
|
53 |
$this->donnees['info'] = $this->taxonDao->getTaxon($this->referentiel, $this->donnees['num_nom']);
|
53 |
$this->donnees['info'] = $this->taxonDao->getTaxon($this->referentiel, $this->donnees['num_nom']);
|
Line -... |
Line 54... |
- |
|
54 |
|
54 |
|
55 |
if ($this->donnees['info'] != '') {
|
55 |
// Chargement des données des onglets
|
56 |
// Chargement des données des onglets
|
56 |
$this->chargerNomenclature();
|
57 |
$this->chargerNomenclature();
|
57 |
$this->chargerSynonymie();
|
58 |
$this->chargerSynonymie();
|
58 |
$this->chargerClassification();
|
59 |
$this->chargerClassification();
|
59 |
$this->chargerChorologie();
|
60 |
$this->chargerChorologie();
|
- |
|
61 |
$this->chargerComplements();
|
Line 60... |
Line 62... |
60 |
$this->chargerComplements();
|
62 |
}
|
61 |
|
63 |
|
62 |
$this->setSortie(self::RENDU_CORPS, $this->getVue('fiche_taxon', $this->donnees));
|
64 |
$this->setSortie(self::RENDU_CORPS, $this->getVue('fiche_taxon', $this->donnees));
|
Line 87... |
Line 89... |
87 |
$parametres['ref']= $this->referentiel;
|
89 |
$parametres['ref']= $this->referentiel;
|
88 |
$synonymes = $rechercheDao->chercher('ParTaxon', $parametres);
|
90 |
$synonymes = $rechercheDao->chercher('ParTaxon', $parametres);
|
89 |
if ($synonymes != '') {
|
91 |
if ($synonymes != '') {
|
90 |
foreach ($synonymes as $synonyme) {
|
92 |
foreach ($synonymes as $synonyme) {
|
91 |
if ($this->donnees['num_nom'] != $synonyme['num_nom'] && $synonyme['basionyme'] != null) {
|
93 |
if ($this->donnees['num_nom'] != $synonyme['num_nom'] && $synonyme['basionyme'] != null) {
|
92 |
if (($this->donnees['num_nom'] != $synonyme['num_nom']) && ($synonyme['basionyme'] == $this->donnees['num_nom'] ||
|
94 |
if (($this->donnees['num_nom'] != $synonyme['num_nom']) && ($synonyme['basionyme'] ==
|
93 |
$this->donnees['info']['basionyme'] == $synonyme['num_nom'] || $this->donnees['info']['basionyme'] == $synonyme['basionyme'])) {
|
95 |
$this->donnees['num_nom'] || $this->donnees['info']['basionyme'] == $synonyme['num_nom'] ||
|
- |
|
96 |
$this->donnees['info']['basionyme'] == $synonyme['basionyme'])) {
|
94 |
$this->donnees['fiche_synonymie']['nomenclaturale'][] = $synonyme;
|
97 |
$this->donnees['fiche_synonymie']['nomenclaturale'][] = $synonyme;
|
95 |
} elseif ($this->donnees['num_nom'] != $synonyme['num_nom'] && $synonyme['basionyme'] != null &&
|
98 |
} elseif ($this->donnees['num_nom'] != $synonyme['num_nom'] && $synonyme['basionyme'] != null &&
|
96 |
$this->donnees['info']['basionyme'] != null) {
|
99 |
$this->donnees['info']['basionyme'] != null) {
|
97 |
$this->donnees['fiche_synonymie']['taxonomique'][] = $synonyme;
|
100 |
$this->donnees['fiche_synonymie']['taxonomique'][] = $synonyme;
|
98 |
}
|
101 |
}
|
99 |
} elseif ($this->donnees['num_nom'] != $synonyme['num_nom']) {
|
102 |
} elseif ($this->donnees['num_nom'] != $synonyme['num_nom']) {
|
100 |
///nom est synonyme mal applique de num_nom_retenu
|
103 |
$this->donnees['fiche_synonymie']['indéterminée (pas de basionyme)'][] = $synonyme;
|
- |
|
104 |
}
|
101 |
if ($synonyme['synonyme_mal_applique'] == 1) {
|
105 |
if ($synonyme['synonyme_mal_applique'] == 1) {
|
- |
|
106 |
if ($synonyme['num_nom'] == $synonyme['num_nom_retenu']) {
|
102 |
$this->donnees['fiche_synonymie']['mal appliquée'][] = $synonyme;
|
107 |
$synonyme['statut'] = 'posséde des synonymes mal appliqués';
|
103 |
} else {
|
108 |
} else {
|
104 |
$this->donnees['fiche_synonymie']['indéterminée (pas de basionyme)'][] = $synonyme;
|
109 |
$synonyme['statut'] = 'est synonyme mal appliqué du num_nom '.$synonyme['num_nom_retenu'];
|
105 |
}
|
110 |
}
|
- |
|
111 |
$this->donnees['fiche_synonymie']['mal appliquée'][] = $synonyme;
|
- |
|
112 |
}
|
- |
|
113 |
if (isset($synonyme['synonyme_orthographique']) && $synonyme['synonyme_orthographique'] != '') {
|
- |
|
114 |
if ($synonyme['synonyme_orthographique'] == $synonyme['num_nom']) {
|
- |
|
115 |
$synonyme['statut'] = 'posséde des synonymes orthographiques';
|
- |
|
116 |
} else {
|
- |
|
117 |
$synonyme['statut'] = 'est synonyme orthographique du num_nom '.$synonyme['synonyme_orthographique'];
|
- |
|
118 |
}
|
- |
|
119 |
$this->donnees['fiche_synonymie']['orthographique'][] = $synonyme;
|
106 |
}
|
120 |
}
|
107 |
}
|
121 |
}
|
108 |
// recherche synonyme proparte
|
- |
|
109 |
if ($this->donnees['info']['synonyme_proparte'] != ''){
|
- |
|
110 |
$this->donnees['fiche_synonymie']['pro parte']['num_nom'] = $this->donnees['info']['synonyme_proparte'];
|
- |
|
111 |
/* à modifier qd base corrigée ajouter split ";"
|
- |
|
112 |
* si 1 fusion de ce nom pour donner synonyme proparte
|
- |
|
113 |
* sinon division
|
- |
|
114 |
*/
|
- |
|
115 |
}
|
122 |
|
116 |
// recherche si taxon est un synonyme douteux
|
123 |
// synonyme douteux
|
117 |
if ($this->donnees['info']['synonyme_douteux'] == 1) {
|
124 |
if ($this->donnees['info']['synonyme_douteux'] == 1) {
|
118 |
$this->donnees['fiche_synonymie']['douteux']['num_nom'] = $this->donnees['info'];
|
125 |
$this->donnees['fiche_synonymie']['douteux']['num_nom'] = $this->donnees['info'];
|
119 |
}
|
126 |
}
|
120 |
/* si $this->donnees['info']['synonyme_mal_applique'] == 1 et $this->donnees['num_nom'] == $this->donnees['num_nom_retenu']
|
127 |
// synonyme proparte
|
121 |
* nom possede des synonymes mal appliquees
|
128 |
if ($this->donnees['info']['synonyme_proparte'] != ''){
|
122 |
* sinon si $this->donnees['info']['synonyme_mal_applique'] == 1 et $this->donnees['num_nom'] != $this->donnees['num_nom_retenu']
|
129 |
$propartes = preg_split('/;/', $this->donnees['info']['synonyme_proparte']);
|
123 |
* nom est synonyme mal applique de num_nom_retenu
|
130 |
foreach ($propartes as $protarte) {
|
124 |
* si $this->donnees['info']['synonyme_orthographique'] == $this->donnees['num_nom']
|
131 |
$this->donnees['fiche_synonymie']['pro parte'] =
|
125 |
* nom possede des synonymes orthographiques
|
132 |
$this->taxonDao->getTaxonAffichage($this->referentiel, $proparte);
|
- |
|
133 |
}
|
- |
|
134 |
}
|
- |
|
135 |
|
126 |
* sinon $this->donnees['info']['synonyme_orthographique'] != ''
|
136 |
// homonymie
|
127 |
* nom est synonyme mal applique de $this->donnees['info']['synonyme_orthographique']
|
137 |
$nom = $this->encodeChaine($this->donnees['info']['nom_complet']);
|
128 |
* si $this->donnees['info']['synonyme_proparte'] != ''
|
138 |
$homonyme = $this->taxonDao->getHomonyme($this->referentiel, $nom);
|
129 |
*
|
139 |
if (count($homonyme) > 1) {
|
130 |
* si $this->donnees['info']['homonyme'] == 1 recherche sur nom
|
140 |
$this->donnees['fiche_synonymie']['Homonymie (sensu)'] = $homonyme;
|
131 |
*/
|
141 |
}
|
132 |
}
|
142 |
}
|
133 |
}
|
143 |
}
|
Line 134... |
Line 144... |
134 |
|
144 |
|
135 |
private function chargerChorologie() {
|
145 |
private function chargerChorologie() {
|
Line 200... |
Line 210... |
200 |
}
|
210 |
}
|
201 |
}
|
211 |
}
|
202 |
if ($this->donnees['num_nom_retenu'] != '') {
|
212 |
if ($this->donnees['num_nom_retenu'] != '') {
|
203 |
$class_inf = $this->taxonDao->getClassification
|
213 |
$class_inf = $this->taxonDao->getClassification
|
204 |
('Inferieur', $this->referentiel, $this->donnees['num_nom_retenu']);
|
214 |
('Inferieur', $this->referentiel, $this->donnees['num_nom_retenu']);
|
- |
|
215 |
if ($class_inf != '') {
|
205 |
$this->donnees['classification']['inférieurs'] = $class_inf['inf'];
|
216 |
$this->donnees['classification']['inférieurs'] = $class_inf['inf'];
|
206 |
$this->donnees['niveau'] = $class_inf['niveau'];
|
217 |
$this->donnees['niveau'] = $class_inf['niveau'];
|
- |
|
218 |
}
|
207 |
}
|
219 |
}
|
208 |
}
|
220 |
}
|
Line 209... |
Line 221... |
209 |
|
221 |
|
210 |
public function chargerComplements() {
|
222 |
public function chargerComplements() {
|
Line 240... |
Line 252... |
240 |
}
|
252 |
}
|
241 |
}
|
253 |
}
|
242 |
return $parametres;
|
254 |
return $parametres;
|
243 |
}
|
255 |
}
|
Line -... |
Line 256... |
- |
|
256 |
|
- |
|
257 |
public function encodeChaine($chaine) {
|
- |
|
258 |
if (Config::get('sortie_encodage') != Config::get('appli_encodage')) {
|
- |
|
259 |
$chaine = mb_convert_encoding($chaine, Config::get('sortie_encodage'), Config::get('appli_encodage'));
|
- |
|
260 |
}
|
- |
|
261 |
$chaine = urlencode($chaine);
|
- |
|
262 |
return $chaine;
|
- |
|
263 |
}
|
244 |
|
264 |
|
245 |
// retourne l'url de la fiche taxon pour les liens
|
265 |
// retourne l'url de la fiche taxon pour les liens
|
246 |
public static function getUrlFicheTaxon($params, $type) {
|
266 |
public static function getUrlFicheTaxon($params, $type) {
|
247 |
$taxon = null;
|
267 |
$taxon = null;
|
248 |
switch ($type) {
|
268 |
switch ($type) {
|