Subversion Repositories eFlore/Applications.coel-consultation

Rev

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

Rev 19 Rev 55
Line 7... Line 7...
7
 * @category	Php 5.2
7
 * @category	Php 5.2
8
 * @author		Jean-Pascal MILCENT <jpm@tela-botanica.org>
8
 * @author		Jean-Pascal MILCENT <jpm@tela-botanica.org>
9
 * @copyright	2010 Tela-Botanica
9
 * @copyright	2010 Tela-Botanica
10
 * @license		http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
10
 * @license		http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
11
 * @license		http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
11
 * @license		http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
12
 * @version		SVN: $Id: Fiche.php 19 2010-03-24 18:22:25Z jpm $
12
 * @version		SVN: $Id: Fiche.php 55 2010-04-30 16:18:31Z jpm $
13
 */
13
 */
14
class Fiche extends ColControleur {
14
class Fiche extends ColControleur {
Line 15... Line 15...
15
	
15
	
16
	private $structureDao = null;
16
	private $structureDao = null;
Line 29... Line 29...
29
	 */
29
	 */
30
	public function executerActionParDefaut() {
30
	public function executerActionParDefaut() {
31
		return $this->afficherStructure();
31
		return $this->afficherStructure();
32
	}
32
	}
Line -... Line 33...
-
 
33
	
-
 
34
	// +---------------------------------------------------------------------------------------------------------------+
33
	
35
	// FICHE STRUCTURE
34
	public function afficherStructure() {
36
	public function afficherStructure() {
Line 35... Line 37...
35
		$donnees = array();
37
		$donnees = array();
36
		
38
		
Line 55... Line 57...
55
			//Debug::printr($donnees);
57
			//Debug::printr($donnees);
56
			$this->setSortie(self::RENDU_CORPS, $this->getVue('fiche_structure', $donnees)); 
58
			$this->setSortie(self::RENDU_CORPS, $this->getVue('fiche_structure', $donnees)); 
57
		}
59
		}
58
	}
60
	}
Line 59... Line -...
59
	
-
 
60
	private function traiterMetaDonnees(&$donnees) {
-
 
61
		$donnees['_modifier_par_'] = $this->obtenirNomCompletPersonne($donnees['cmhl_ce_modifier_par']);
-
 
62
		$donnees['_etat_'] = $this->construireTxtListeOntologie($donnees['cmhl_ce_etat']);
-
 
63
	}
-
 
64
	
61
	
65
	private function traiterDonneesStructure(&$donnees) {
62
	private function traiterDonneesStructure(&$donnees) {
66
		// liste 01 : Liste des états des enregistrements de la base de données
63
		// liste 01 : Liste des états des enregistrements de la base de données
67
		Ontologie::chargerListe(1001);
64
		Ontologie::chargerListe(1001);
68
		// liste 12 : Liste des types de structure privé
65
		// liste 12 : Liste des types de structure privé
69
		Ontologie::chargerListe(1015);
66
		Ontologie::chargerListe(1015);
70
		// liste 13 : Liste des types de structure public
67
		// liste 13 : Liste des types de structure public
71
		Ontologie::chargerListe(1016);
68
		Ontologie::chargerListe(1016);
72
		// liste 71 : Liste des pays du standard ISO-3166-1
69
		// liste 71 : Liste des pays du standard ISO-3166-1
Line -... Line 70...
-
 
70
		Ontologie::chargerListe(1074);
-
 
71
		
73
		Ontologie::chargerListe(1074);
72
		$guid_id_valeur = Config::get('guid_id_collection').$donnees['cs_id_structure'];
74
		
73
		$donnees['_guid_'] = sprintf(Config::get('guid'), Config::get('guid_projet'), $guid_id_valeur);
75
		$donnees['_acronyme_'] = $this->construireTxtTruck($donnees['cs_truk_identifiant_alternatif']);
74
		$donnees['_acronyme_'] = $this->construireTxtTruck($donnees['cs_truk_identifiant_alternatif']);
76
		$donnees['_telephone_fax_'] = $this->construireTxtTruck($donnees['cs_truk_telephone']);
75
		$donnees['_telephone_fax_'] = $this->construireTxtTruck($donnees['cs_truk_telephone']);
77
		$donnees['_type_prive_'] = $this->construireTxtListeOntologie($donnees['cs_ce_truk_type_prive']);
76
		$donnees['_type_prive_'] = $this->construireTxtListeOntologie($donnees['cs_ce_truk_type_prive']);
Line 157... Line 156...
157
		$donnees['_visite_avec_motif_info_'] = $this->formaterParenthese($donnees['csv_visite_avec_motif']);
156
		$donnees['_visite_avec_motif_info_'] = $this->formaterParenthese($donnees['csv_visite_avec_motif']);
158
	}
157
	}
Line 159... Line 158...
159
	
158
	
160
	private function traiterDonneesStructureCollections(&$collections) {
159
	private function traiterDonneesStructureCollections(&$collections) {
161
		foreach ($collections as &$collection) {
160
		foreach ($collections as &$collection) {
162
			$collection['_url_'] = $this->obtenirUrlFicheColletion($collection['cc_id_collection']);
161
			$collection['_url_'] = $this->obtenirUrlFicheCollection($collection['cc_id_collection']);
163
		}
162
		}
Line 164... Line 163...
164
	}
163
	}
165
	
164
	
Line 183... Line 182...
183
		$personneDao = $this->getModele('PersonneDao');
182
		$personneDao = $this->getModele('PersonneDao');
184
		$personne_nom = $personneDao->getPersonneNomComplet($personne_id);
183
		$personne_nom = $personneDao->getPersonneNomComplet($personne_id);
185
		return $personne_nom;
184
		return $personne_nom;
186
	}
185
	}
Line -... Line 186...
-
 
186
	
-
 
187
	// +---------------------------------------------------------------------------------------------------------------+
187
	
188
	// FICHE COLLECTION
188
	public function afficherCollection() {
189
	public function afficherCollection() {
Line 189... Line 190...
189
		$donnees = array();
190
		$donnees = array();
190
 
191
 
Line 202... Line 203...
202
			$donnees['publications'] = $collectionDao->getCollectionAPublication($donnees['id']);
203
			$donnees['publications'] = $collectionDao->getCollectionAPublication($donnees['id']);
203
			$donnees['commentaires'] = $collectionDao->getCollectionACommentaire($donnees['id']);
204
			$donnees['commentaires'] = $collectionDao->getCollectionACommentaire($donnees['id']);
204
			$this->traiterMetaDonnees($donnees['info']);
205
			$this->traiterMetaDonnees($donnees['info']);
205
			$this->traiterDonneesCollection($donnees['info']);
206
			$this->traiterDonneesCollection($donnees['info']);
206
			$this->traiterDonneesCollectionAPersonne($donnees['personnes']);
207
			$this->traiterDonneesCollectionAPersonne($donnees['personnes']);
207
			$this->traiterDonneesCollectionAPublication($donnees['publications']);
208
			$this->traiterDonneesElementAPublication($donnees['publications']);
208
			$this->traiterDonneesCollectionDescription($donnees['info']);
209
			$this->traiterDonneesCollectionDescription($donnees['info']);
209
			$this->traiterDonneesCollectionContenu($donnees['info']);
210
			$this->traiterDonneesCollectionContenu($donnees['info']);
210
			$this->traiterDonneesCollectionInventaire($donnees['info']);
211
			$this->traiterDonneesCollectionInventaire($donnees['info']);
211
			$this->traiterDonneesCollectionACommentaire($donnees['commentaires']);
212
			$this->traiterDonneesCollectionACommentaire($donnees['commentaires']);
212
			$this->postraiterDonnees($donnees);
213
			$this->postraiterDonnees($donnees);
Line 228... Line 229...
228
		// liste 39 : Liste des types de classement des spécimens types dans une collection
229
		// liste 39 : Liste des types de classement des spécimens types dans une collection
229
		Ontologie::chargerListe(1042);
230
		Ontologie::chargerListe(1042);
230
		// liste 79 : Liste exact/approximatif
231
		// liste 79 : Liste exact/approximatif
231
		Ontologie::chargerListe(1082);
232
		Ontologie::chargerListe(1082);
Line -... Line 233...
-
 
233
		
-
 
234
		$guid_id_valeur = Config::get('guid_id_collection').$donnees['cc_id_collection'];
232
		
235
		$donnees['_guid_'] = sprintf(Config::get('guid'), Config::get('guid_projet'), $guid_id_valeur);
233
		$donnees['_structure_url_'] = $this->obtenirUrlFicheStructure($donnees['cc_ce_structure']);
236
		$donnees['_structure_url_'] = $this->obtenirUrlFicheStructure($donnees['cc_ce_structure']);
234
		$donnees['_nom_alternatif_'] = $this->construireTxtTruck($donnees['cc_truk_nom_alternatif']);
237
		$donnees['_nom_alternatif_'] = $this->construireTxtTruck($donnees['cc_truk_nom_alternatif']);
235
		$donnees['_type_ncd_'] = $this->construireTxtListeOntologie($donnees['cc_ce_type']);
238
		$donnees['_type_ncd_'] = $this->construireTxtListeOntologie($donnees['cc_ce_type']);
236
		$donnees['_type_depot_'] = $this->construireTxtListeOntologie($donnees['cc_ce_type_depot']);
239
		$donnees['_type_depot_'] = $this->construireTxtListeOntologie($donnees['cc_ce_type_depot']);
Line 257... Line 260...
257
		foreach ($personnes as &$personne) {
260
		foreach ($personnes as &$personne) {
258
			$personne['_role_'] = $this->construireTxtListeOntologie($personne['ccap_id_role']);
261
			$personne['_role_'] = $this->construireTxtListeOntologie($personne['ccap_id_role']);
259
			$personne['_deces_'] = $this->construireTxtListeOntologie($personne['cp_ce_deces']);
262
			$personne['_deces_'] = $this->construireTxtListeOntologie($personne['cp_ce_deces']);
260
			$personne['_naissance_date_'] = $this->formaterDate($personne['cp_naissance_date']);
263
			$personne['_naissance_date_'] = $this->formaterDate($personne['cp_naissance_date']);
261
			$personne['_deces_date_'] = $this->formaterDate($personne['cp_deces_date']);
264
			$personne['_deces_date_'] = $this->formaterDate($personne['cp_deces_date']);
-
 
265
			$personne['_url_'] = $this->obtenirUrlFichePersonne($personne['ccap_id_personne']);
262
		}
266
		}
263
	}
267
	}
Line 264... Line -...
264
	
-
 
265
	private function traiterDonneesCollectionAPublication(&$publications) {
-
 
266
		foreach ($publications as &$publication) {
-
 
267
			$publication['_editeur_'] = $this->construireTxtTruck($publication['cpu_ce_truk_editeur']);
-
 
268
			$publication['_date_parution_'] = rtrim($publication['cpu_date_parution'],'-00-00');
-
 
269
		}
268
	
Line 270... Line 269...
270
	}
269
 
271
	
270
	
272
	private function traiterDonneesCollectionDescription(&$donnees) {
271
	private function traiterDonneesCollectionDescription(&$donnees) {
273
		// liste 22 : Liste de traitement anti-insecte pour les collections botaniques
272
		// liste 22 : Liste de traitement anti-insecte pour les collections botaniques
Line 521... Line 520...
521
				}
520
				}
522
			}
521
			}
523
		}
522
		}
524
		return $precision_nom;
523
		return $precision_nom;
525
	}
524
	}
-
 
525
	
-
 
526
	// +---------------------------------------------------------------------------------------------------------------+
-
 
527
	// FICHE PERSONNE
-
 
528
	
-
 
529
	public function afficherPersonne() {
-
 
530
		$donnees = array();
-
 
531
 
-
 
532
		// Gestion des actions par défaut
-
 
533
		$this->executerAction('Recherche', 'chargerMoteurRecherche');
-
 
534
		
-
 
535
		// Gestion des données de la requête
-
 
536
		if (!isset($_GET['id'])) {
-
 
537
			
-
 
538
		} else {
-
 
539
			$donnees['id'] = $_GET['id'];
-
 
540
			$personneDao = $this->getModele('PersonneDao');
-
 
541
			$donnees['info'] = $personneDao->getPersonne($donnees['id']);
-
 
542
			$donnees['publications'] = $personneDao->getPersonneAPublication($donnees['id']);
-
 
543
			$this->traiterMetaDonnees($donnees['info']);
-
 
544
			$this->traiterDonneesPersonne($donnees['info']);
-
 
545
			$this->traiterDonneesPersonneAPublication($donnees['publications']);
-
 
546
			$this->postraiterDonnees($donnees);
-
 
547
			Debug::printr($donnees['publications']);
-
 
548
			$this->setSortie(self::RENDU_CORPS, $this->getVue('fiche_personne', $donnees));
-
 
549
		}
-
 
550
	}
-
 
551
	
-
 
552
	private function traiterDonneesPersonne(&$donnees) {
-
 
553
		// Liste des préfixes
-
 
554
		Ontologie::chargerListe(1004);
-
 
555
		// Liste des suffixes
-
 
556
		Ontologie::chargerListe(1005);
-
 
557
		// Liste tel:
-
 
558
		Ontologie::chargerListe(1007);
-
 
559
		// Liste sexe:
-
 
560
		Ontologie::chargerListe(1067);
-
 
561
		// liste 77 : Liste indéterminé/oui/non
-
 
562
		Ontologie::chargerListe(1080);
-
 
563
		// Liste des types de publication vis à vis d'une personne
-
 
564
		//relationPersonnePublication:1065,
-
 
565
		
-
 
566
		$guid_id_valeur = Config::get('guid_id_personne').$donnees['cp_id_personne'];
-
 
567
		$donnees['_guid_'] = sprintf(Config::get('guid'), Config::get('guid_projet'), $guid_id_valeur);
-
 
568
		
-
 
569
		$donnees['_sexe_'] = $this->construireTxtListeOntologie($donnees['cp_ce_sexe']);
-
 
570
		$donnees['_prefixe_'] = $this->construireTxtListeOntologie($donnees['cp_ce_truk_prefix']);
-
 
571
		$donnees['_suffixe_'] = $this->construireTxtListeOntologie($donnees['cp_ce_truk_suffix']);
-
 
572
		$donnees['_autre_noms_'] = $this->construireTxtTruck($donnees['cp_truk_nom_autre']);
-
 
573
		$donnees['_autre_abreviations_'] = $this->construireTxtTruck($donnees['cp_truk_abreviation_autre']);
-
 
574
		$donnees['_deces_'] = $this->construireTxtListeOntologie($donnees['cp_ce_deces']);
-
 
575
		$donnees['_naissance_date_'] = $this->formaterDate($donnees['cp_naissance_date'], ColControleur::FMT_DATE);
-
 
576
		$donnees['_deces_date_'] = $this->formaterDate($donnees['cp_deces_date'], ColControleur::FMT_DATE);
-
 
577
		$donnees['_telephones_'] = $this->construireTxtListeOntologie($donnees['cp_truk_telephone']);
-
 
578
		$donnees['_courriels_'] = $this->construireTxtTruck($donnees['cp_truk_courriel'], false, false);
-
 
579
		$donnees['_sites_web_'] = $this->getTableauTruck($donnees['cp_truk_url']);
-
 
580
		$donnees['_image_principale_url_'] = $this->getTxtTruckParPosition($donnees['cp_truk_logo'], 1);
-
 
581
		
-
 
582
		$donnees['_region_'] = $this->construireTxtListeOntologie($donnees['cp_ce_truk_region']);
-
 
583
		$donnees['_pays_'] = $this->construireTxtListeOntologie($donnees['cp_ce_truk_pays']);
-
 
584
		
-
 
585
		$donnees['_specialites_'] = $this->construireTxtListeOntologie($donnees['cp_ce_truk_specialite']);
-
 
586
		$donnees['_recoltes_'] = $this->construireTxtListeOntologie($donnees['cp_truk_recolte']);
-
 
587
		
-
 
588
		$donnees['_logos_'] = $this->getTableauTruck($donnees['cp_truk_logo']);
-
 
589
	}
-
 
590
	
-
 
591
	private function traiterDonneesPersonneAPublication(&$publications) {
-
 
592
		$this->traiterDonneesElementAPublication($publications);
-
 
593
		// liste 62 : Liste des types de publication vis à vis d'une personne
-
 
594
		Ontologie::chargerListe(1065);
-
 
595
		foreach ($publications as &$publication) {
-
 
596
			$publication['_role_'] = $this->construireTxtListeOntologie($publication['cpuap_id_role']);
-
 
597
		}
-
 
598
		
-
 
599
		
-
 
600
	}
-
 
601
	
-
 
602
	// +---------------------------------------------------------------------------------------------------------------+
-
 
603
	// MÉTHODES GÉNÉRIQUES
-
 
604
	
-
 
605
	private function traiterDonneesElementAPublication(&$publications) {
-
 
606
		foreach ($publications as &$publication) {
-
 
607
			$publication['_editeur_'] = $this->construireTxtTruck($publication['cpu_ce_truk_editeur']);
-
 
608
			$publication['_date_parution_'] = rtrim($publication['cpu_date_parution'],'-00-00');
-
 
609
		}
-
 
610
	}
-
 
611
	
-
 
612
	private function traiterMetaDonnees(&$donnees) {
-
 
613
		$donnees['_modifier_par_'] = $this->obtenirNomCompletPersonne($donnees['cmhl_ce_modifier_par']);
-
 
614
		$donnees['_etat_'] = $this->construireTxtListeOntologie($donnees['cmhl_ce_etat']);
-
 
615
	}
526
}
616
}
527
617