Subversion Repositories eFlore/Applications.coel-consultation

Rev

Rev 220 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 220 Rev 221
1
<?php
1
<?php
2
// declare(encoding='UTF-8');
2
// declare(encoding='UTF-8');
3
/**
3
/**
4
 * Classe mère des Controleurs des modules présentant des Fiches.
4
 * Classe mère des Controleurs des modules présentant des Fiches.
5
 *
5
 *
6
 * @package		Collection
6
 * @package		Collection
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 220 2014-06-13 12:25:38Z aurelien $
12
 * @version		SVN: $Id: Fiche.php 221 2014-06-19 08:51:27Z aurelien $
13
 */
13
 */
14
abstract class Fiche extends aControleur {
14
abstract class Fiche extends aControleur {
15
	
15
	
16
	protected $structureDao = null;
16
	protected $structureDao = null;
17
	protected $collectionDao = null;
17
	protected $collectionDao = null;
18
	protected $personneDao = null;
18
	protected $personneDao = null;
19
	
19
	
20
	public function __construct()  {
20
	public function __construct()  {
21
		parent::__construct();
21
		parent::__construct();
22
		$this->structureDao = new StructureDao();
22
		$this->structureDao = new StructureDao();
23
		$this->collectionDao = new CollectionDao();
23
		$this->collectionDao = new CollectionDao();
24
		$this->personneDao = new PersonneDao();
24
		$this->personneDao = new PersonneDao();
25
	}
25
	}
26
	
26
	
27
	// +---------------------------------------------------------------------------------------------------------------+
27
	// +---------------------------------------------------------------------------------------------------------------+
28
	// MÉTHODES GÉNÉRIQUES
28
	// MÉTHODES GÉNÉRIQUES
29
	
29
	
30
	protected function obtenirNomCompletPersonne($personne_id) {
30
	protected function obtenirNomCompletPersonne($personne_id) {
31
		$personne_nom = $this->personneDao->getPersonneNomComplet($personne_id);
31
		$personne_nom = $this->personneDao->getPersonneNomComplet($personne_id);
32
		return $personne_nom;
32
		return $personne_nom;
33
	}
33
	}
34
	
34
	
35
	protected function obtenirCourrielsPersonne($personne_id) {
35
	protected function obtenirCourrielsPersonne($personne_id) {
36
		$courriels = $this->personneDao->getPersonneCourriels($personne_id);
36
		$courriels = $this->personneDao->getPersonneCourriels($personne_id);
37
		$courriels = $this->traiterTxtTruck($courriels);
37
		$courriels = $this->traiterTxtTruck($courriels);
38
		$courriels = $this->formaterCourriels($courriels);
38
		$courriels = $this->formaterCourriels($courriels);
39
		return $courriels;
39
		return $courriels;
40
	}
40
	}
41
	
41
	
42
	protected function traiterDonneesElementAPublication(&$publications) {
42
	protected function traiterDonneesElementAPublication(&$publications) {
43
		foreach ($publications as &$publication) {
43
		foreach ($publications as &$publication) {
44
			$publication['_editeur_'] = $this->construireTxtTruck($publication['cpu_ce_truk_editeur']);
44
			$publication['_editeur_'] = $this->construireTxtTruck($publication['cpu_ce_truk_editeur']);
45
			$publication['_date_parution_'] = rtrim($publication['cpu_date_parution'],'-00-00');
45
			$publication['_date_parution_'] = rtrim($publication['cpu_date_parution'],'-00-00');
46
			if(isset($publication['ccapu_source'])) {
46
			if(isset($publication['ccapu_source'])) {
47
				$publication['ccapu_source'] = $publication['ccapu_source'] == "1" ? "oui" : "non";
47
				$publication['ccapu_source'] = $publication['ccapu_source'] == "1" ? "oui" : "non";
48
			}
48
			}
49
		}
49
		}
50
	}
50
	}
51
	
51
	
52
	protected function traiterMetaDonnees(&$donnees) {
52
	protected function traiterMetaDonnees(&$donnees) {
53
		$meta = array();
53
		$meta = array();
54
		$meta['_guid_'] = $donnees['_guid_'];
54
		$meta['_guid_'] = $donnees['_guid_'];
55
		$meta['_guid_url_'] = $this->obtenirPermalienGuid($donnees['_guid_']);
55
		$meta['_guid_url_'] = $this->obtenirPermalienGuid($donnees['_guid_']);
56
		$meta['_notes_'] = $donnees['cmhl_notes'];
56
		$meta['_notes_'] = $donnees['cmhl_notes'];
57
		$meta['_source_'] = $donnees['cmhl_source'];
57
		$meta['_source_'] = $donnees['cmhl_source'];
-
 
58
		// les deux champs suivants sont spécifique à la collection
-
 
59
		// TODO: si d'autres champs spécifiques s'ajoutent, faire un système
-
 
60
		// générique pour les champs de meta données supplémentaires
-
 
61
		$meta['_expert_'] = isset($donnees['expert']) ? $donnees['expert'] : null;
-
 
62
		$meta['_contributeur_'] = isset($donnees['contributeur']) ? $donnees['contributeur'] : null;
58
		$meta['_date_modification_'] = $donnees['cmhl_date_modification'];
63
		$meta['_date_modification_'] = $donnees['cmhl_date_modification'];
59
		$meta['_modifier_par_'] = $this->obtenirNomCompletPersonne($donnees['cmhl_ce_modifier_par']);
64
		$meta['_modifier_par_'] = $this->obtenirNomCompletPersonne($donnees['cmhl_ce_modifier_par']);
60
		$meta['_modifier_par_courriel_'] = $this->obtenirCourrielsPersonne($donnees['cmhl_ce_modifier_par']);
65
		$meta['_modifier_par_courriel_'] = $this->obtenirCourrielsPersonne($donnees['cmhl_ce_modifier_par']);
61
		$meta['_etat_'] = $this->construireTxtListeOntologie($donnees['cmhl_ce_etat']);
66
		$meta['_etat_'] = $this->construireTxtListeOntologie($donnees['cmhl_ce_etat']);
62
		return $this->getVue('metadonnees', $meta);
67
		return $this->getVue('metadonnees', $meta);
63
	}
68
	}
64
}
69
}