Subversion Repositories eFlore/Applications.coel

Rev

Rev 1535 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1533 jpm 1
<?php
2
class Ontologie {
3
 
4
	private $ontologie = null;
5
 
6
	/**
7
	 * Le contructeur transforme la sortie d'une requête sur la table coel_meta_liste_valeur en tableau Ontologie au format :
8
	 * $ontologie[id_valeur] = array(
9
	 * 	'nom' => 'nom de la valeur',
10
	 * 	'abr' => 'abréviation de la valeur,
11
	 * 	'dsc' => 'description de la vaeur');
12
	 * @param $ontologie tableau listant les valeurs de l'ontologie.
13
	 */
14
	public function __construct(Array $metadonnees) {
15
		$ontologie = array(0 => array('nom' => 'Non renseigné', 'abr' => 'NR'));
16
		foreach ($metadonnees as $meta) {
1538 jpm 17
			$id = $meta['cmlv_id_valeur'];
18
			$nom = isset($meta['cmlv_nom']) ? $meta['cmlv_nom'] : null;
19
			$abr = isset($meta['cmlv_abreviation']) ? $meta['cmlv_abreviation'] : null;
20
			$dsc = isset($meta['cmlv_description']) ? $meta['cmlv_description'] : null;
21
 
22
			$ontologie[$id] = array('nom' => $nom, 'abr' => $abr, 'dsc' => $dsc);
1533 jpm 23
		}
24
		$this->ontologie = $ontologie;
25
	}
26
 
27
	/**
28
	 * Retourne le nom de la valeur de l'ontologie correspondant à l'id.
29
	 *
30
	 * @param int $id l'identifiant de la valeur de l'ontologie.
31
	 * @return string le nom de la valeur.
32
	 */
1538 jpm 33
	public function getNom($id) {
1533 jpm 34
		$nom = null;
35
		if (isset($this->ontologie[$id])) {
36
			$nom = $this->ontologie[$id]['nom'];
37
		}
38
		return $nom;
39
	}
40
 
41
	/**
42
	 * Retourne l'abréviation de la valeur de l'ontologie correspondant à l'id.
43
	 *
44
	 * @param int $id l'identifiant de la valeur de l'ontologie.
45
	 * @return string l'abreviation de la valeur.
46
	 */
1538 jpm 47
	public function getAbreviation($id) {
1533 jpm 48
		$abr = null;
49
		if (isset($this->ontologie[$id])) {
50
			$abr = $this->ontologie[$id]['abr'];
51
		}
52
		return $abr;
53
	}
54
 
55
	/**
56
	 * Le tableau de retour Ontologie est au format :
57
	 * $ontologie[id_valeur] = array(
58
	 * 	'nom' => 'nom de la valeur',
59
	 * 	'abr' => 'abréviation de la valeur);
60
	 *
61
	 * @param int $id l'identifiant de la valeur de l'ontologie.
62
	 * @return $ontologie tableau listant les valeurs de l'ontologie.
63
	 */
1538 jpm 64
	public function getTableauValeur($id) {
1533 jpm 65
		$valeur = null;
66
		if (isset($this->ontologie[$id])) {
67
			$valeur = $this->ontologie[$id];
68
		}
69
		return $valeur;
70
	}
71
}