Line 18... |
Line 18... |
18 |
private $nomCourant = null;
|
18 |
private $nomCourant = null;
|
19 |
private $textes = null;
|
19 |
private $textes = null;
|
20 |
private $meta = null;
|
20 |
private $meta = null;
|
21 |
private $wikini = null;
|
21 |
private $wikini = null;
|
22 |
private $informations = null;
|
22 |
private $informations = null;
|
- |
|
23 |
static $mois = array(
|
23 |
private $mois = array('janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août',
|
24 |
'janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet',
|
24 |
'septembre', 'octobre', 'novembre', 'décembre');
|
25 |
'août', 'septembre', 'octobre', 'novembre', 'décembre');
|
25 |
private $CosteFormate;
|
26 |
private $CosteFormate;
|
26 |
private $CosteTexte;
|
27 |
private $CosteTexte;
|
Line 27... |
Line 28... |
27 |
|
28 |
|
28 |
private $referentiel = 'bdtfx';
|
29 |
private $referentiel = 'bdtfx';
|
Line 41... |
Line 42... |
41 |
|
42 |
|
42 |
public function obtenirDonnees() {
|
43 |
public function obtenirDonnees() {
|
43 |
$donnees = array();
|
44 |
$donnees = array();
|
44 |
$this->getWikipedia();
|
45 |
$this->getWikipedia();
|
45 |
$this->getWikini();
|
46 |
$this->getWikini();
|
46 |
$this->getDescriptionsDependantesReferentiel();
|
47 |
$this->getDescriptionsDependantesReferentiel($this->referentiel);
|
47 |
return $this->donnees;
|
48 |
return $this->donnees;
|
Line 48... |
Line 49... |
48 |
}
|
49 |
}
|
49 |
|
50 |
|
50 |
public function obtenirDonneesExport() {
|
51 |
public function obtenirDonneesExport() {
|
51 |
$donnees = array();
|
52 |
$donnees = array();
|
52 |
$this->getWikini();
|
53 |
$this->getWikini();
|
53 |
$this->getDescriptionsDependantesReferentiel();
|
54 |
$this->getDescriptionsDependantesReferentiel($this->referentiel);
|
Line 54... |
Line 55... |
54 |
return $this->donnees;
|
55 |
return $this->donnees;
|
55 |
}
|
56 |
}
|
56 |
|
57 |
|
Line 57... |
Line 58... |
57 |
private function getDescriptionsDependantesReferentiel() {
|
58 |
private function getDescriptionsDependantesReferentiel($ref) {
|
58 |
$bases_descriptions = Config::get($this->referentiel.'.baseDescription');
|
- |
|
59 |
$bases_descriptions = explode(',',$bases_descriptions);
|
59 |
// eg: [bdtfx]baseDescription = coste,baseflor dans bdtfx.ini
|
60 |
|
60 |
$bases_descriptions = explode(',', Config::get($ref . '.baseDescription'));
|
61 |
foreach ($bases_descriptions as $base) {
|
- |
|
62 |
if($this->aMethodeDescription($base)) {
|
61 |
|
63 |
$fonction = 'get'.ucfirst($base);
|
62 |
foreach ($bases_descriptions as $base) {
|
Line 64... |
Line -... |
64 |
$this->$fonction();
|
- |
|
65 |
}
|
- |
|
66 |
}
|
- |
|
67 |
}
|
- |
|
68 |
|
63 |
$fonction = 'get'.ucfirst($base);
|
69 |
private function aMethodeDescription($base) {
|
64 |
$this->$fonction();
|
70 |
return method_exists($this, 'get'.$base);
|
65 |
}
|
71 |
}
|
66 |
}
|
72 |
|
67 |
|
73 |
public function getBloc() {
|
- |
|
74 |
// prend la première description disponible dans l'ordre indiqué dans le fichier
|
68 |
public function getBloc() {
|
75 |
// de config, et prend la description wiki sinon
|
- |
|
76 |
if(Config::get($this->referentiel.'.baseDescription') != "") {
|
69 |
// prend la première description disponible dans l'ordre indiqué dans le fichier
|
77 |
$bases_descriptions = Config::get($this->referentiel.'.baseDescription');
|
70 |
// de config, et prend la description wiki sinon
|
78 |
$bases_descriptions = explode(',',$bases_descriptions);
|
71 |
if(Config::get($this->referentiel.'.baseDescription') != "") {
|
- |
|
72 |
$bases_descriptions = explode(',', Config::get($this->referentiel.'.baseDescription'));
|
- |
|
73 |
foreach ($bases_descriptions as $base) {
|
- |
|
74 |
$fonction = 'get'.ucfirst($base);
|
- |
|
75 |
$this->$fonction();
|
79 |
foreach ($bases_descriptions as $base) {
|
76 |
if(empty($this->donnees[$base]['description'])) {
|
80 |
if ($this->aMethodeDescription($base)) {
|
77 |
unset($this->donnees[$base]);
|
81 |
$fonction = 'get'.ucfirst($base);
|
78 |
continue;
|
82 |
$this->$fonction();
|
79 |
}
|
83 |
if(!empty($this->donnees[$base]['description'])) {
|
80 |
|
84 |
$this->donnees['type'] = $base;
|
- |
|
85 |
$this->donnees['titre'] = "Description de ".ucfirst($base);
|
- |
|
86 |
$this->donnees['description'] = $this->donnees[$base]['description'];
|
81 |
$this->donnees['type'] = $base;
|
87 |
unset($this->donnees[$base]);
|
82 |
$this->donnees['titre'] = "Description de ".ucfirst($base);
|
Line 88... |
Line 83... |
88 |
break;
|
83 |
$this->donnees['description'] = $this->donnees[$base]['description'];
|
89 |
}
|
84 |
unset($this->donnees[$base]);
|
90 |
}
|
85 |
return $this->donnees;
|
91 |
}
|
86 |
}
|
- |
|
87 |
}
|
- |
|
88 |
|
92 |
}
|
89 |
if (empty($this->donnees['description'])) {
|
93 |
|
90 |
$this->getWikini();
|
94 |
if (empty($this->donnees['description'])) {
|
91 |
$this->donnees['description'] = $this->donnees['wikini']['description'];
|
95 |
$this->getWikini();
|
92 |
$this->donnees['titre'] = "Description collaborative";
|
Line 96... |
Line 93... |
96 |
$this->donnees['description'] = $this->donnees['wikini']['description'];
|
93 |
$this->donnees['type'] = 'wikini';
|
97 |
$this->donnees['titre'] = "Description collaborative";
|
94 |
unset($this->donnees['wikini']);
|
Line 114... |
Line 111... |
114 |
$baseflor['pollinisation'] = isset($informations['pollinisation']) ? $informations['pollinisation'] : '';
|
111 |
$baseflor['pollinisation'] = isset($informations['pollinisation']) ? $informations['pollinisation'] : '';
|
115 |
$baseflor['dissemination'] = isset($informations['dissemination']) ? $informations['dissemination'] : '';
|
112 |
$baseflor['dissemination'] = isset($informations['dissemination']) ? $informations['dissemination'] : '';
|
116 |
$baseflor['fruit'] = isset($informations['fruit']) ? $informations['fruit'] : '';
|
113 |
$baseflor['fruit'] = isset($informations['fruit']) ? $informations['fruit'] : '';
|
117 |
$baseflor['couleur_fleur'] = isset($informations['couleur_fleur']) ? $informations['couleur_fleur'] : '';
|
114 |
$baseflor['couleur_fleur'] = isset($informations['couleur_fleur']) ? $informations['couleur_fleur'] : '';
|
118 |
$baseflor['macule'] = isset($informations['macule']) ? $informations['macule'] : '';
|
115 |
$baseflor['macule'] = isset($informations['macule']) ? $informations['macule'] : '';
|
119 |
$baseflor['floraison'] = isset($informations['floraison']) ? $this->changerFloraisonEnChaine($informations['floraison']) : '';
|
116 |
$baseflor['floraison'] = isset($informations['floraison']) ? self::changerFloraisonEnChaine($informations['floraison']) : '';
|
120 |
//récupérer dans ontologies
|
117 |
//récupérer dans ontologies
|
121 |
$baseflor['type_bio'] = isset($informations['type_bio']) ? $informations['type_bio'] : '';
|
118 |
$baseflor['type_bio'] = isset($informations['type_bio']) ? $informations['type_bio'] : '';
|
122 |
$baseflor['form_vegetale'] = isset($informations['form_vegetale']) ? $informations['form_vegetale'] : '';
|
119 |
$baseflor['form_vegetale'] = isset($informations['form_vegetale']) ? $informations['form_vegetale'] : '';
|
123 |
$baseflor['description']=$baseflor;
|
120 |
$baseflor['description']=$baseflor;
|
124 |
$this->meta->setProjet('baseflor');
|
121 |
$this->meta->setProjet('baseflor');
|
Line 127... |
Line 124... |
127 |
$baseflor['meta']['url'] = $this->appUrls->obtenirUrlMetaDonnees('baseflor');
|
124 |
$baseflor['meta']['url'] = $this->appUrls->obtenirUrlMetaDonnees('baseflor');
|
128 |
}
|
125 |
}
|
129 |
$this->donnees['baseflor'] = $baseflor;
|
126 |
$this->donnees['baseflor'] = $baseflor;
|
130 |
}
|
127 |
}
|
Line 131... |
Line 128... |
131 |
|
128 |
|
132 |
public function changerFloraisonEnChaine($floraison){
|
129 |
static function changerFloraisonEnChaine($floraison){
|
133 |
$chaine = "";
|
130 |
$chaine = "";
|
134 |
if ($floraison != ""){
|
131 |
if ($floraison != ""){
|
135 |
$mois_fleurs=preg_match('/-/',$floraison) ? preg_split('/-/',$floraison) : $floraison;
|
132 |
$mois_fleurs=preg_match('/-/',$floraison) ? preg_split('/-/',$floraison) : $floraison;
|
136 |
if (is_array($mois_fleurs)){
|
133 |
if (is_array($mois_fleurs)){
|
Line 137... |
Line 134... |
137 |
$chaine = "de ".$this->mois[(int)$mois_fleurs[0]]." à ".$this->mois[(int)$mois_fleurs[1]];
|
134 |
$chaine = "de ".self::$mois[(int)$mois_fleurs[0]]." à ".self::$mois[(int)$mois_fleurs[1]];
|
138 |
|
135 |
|
139 |
}else { $chaine = "en ".$this->mois[(int)$mois_fleurs];
|
136 |
}else { $chaine = "en ".self::$mois[(int)$mois_fleurs];
|
140 |
}
|
137 |
}
|
141 |
}
|
138 |
}
|
Line 150... |
Line 147... |
150 |
}
|
147 |
}
|
Line 151... |
Line 148... |
151 |
|
148 |
|
152 |
public function getWikipedia() {
|
149 |
public function getWikipedia() {
|
153 |
$wp = array();
|
150 |
$wp = array();
|
154 |
$this->textes->setProjet('wikipedia');
|
151 |
$this->textes->setProjet('wikipedia');
|
155 |
$this->textes->setId($this->getIdWp());
|
152 |
$this->textes->setId(self::getIdWp($this->nomCourant->getNomRetenu()->get('nom_sci')));
|
156 |
$wp['titre'] = $donnees['titre'] = "Description de wikipedia";
|
153 |
$wp['titre'] = $donnees['titre'] = "Description de wikipedia";
|
157 |
$wp['lien'] = $this->textes->getPageUrl();
|
154 |
$wp['lien'] = $this->textes->getPageUrl();
|
158 |
$wp['meta']['url'] = $this->appUrls->obtenirUrlMetaDonnees('wikipedia');
|
155 |
$wp['meta']['url'] = $this->appUrls->obtenirUrlMetaDonnees('wikipedia');
|
159 |
$this->donnees['wp'] = $wp;
|
156 |
$this->donnees['wp'] = $wp;
|
Line 160... |
Line 157... |
160 |
}
|
157 |
}
|
161 |
|
- |
|
162 |
private function getIdWp() {
|
158 |
|
163 |
$nomSci = $this->nomCourant->getNomRetenu()->get('nom_sci');
|
- |
|
164 |
$idWp = str_replace(' ', '_', $nomSci);
|
- |
|
165 |
$idWp = urlencode($idWp);
|
159 |
private static function getIdWp($nomSci) {
|
Line 166... |
Line 160... |
166 |
return $idWp;
|
160 |
return urlencode(str_replace(' ', '_', $nomSci));
|
167 |
}
|
161 |
}
|
168 |
|
162 |
|