Subversion Repositories eFlore/Applications.coel

Rev

Go to most recent revision | Details | 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) {
17
			$ontologie[$meta['cmlv_id_valeur']] = array(
1535 jpm 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));
1533 jpm 21
		}
22
		$this->ontologie = $ontologie;
23
	}
24
 
25
	/**
26
	 * Retourne le nom de la valeur de l'ontologie correspondant à l'id.
27
	 *
28
	 * @param int $id l'identifiant de la valeur de l'ontologie.
29
	 * @return string le nom de la valeur.
30
	 */
31
	public function getValeurNom($id) {
32
		$nom = null;
33
		if (isset($this->ontologie[$id])) {
34
			$nom = $this->ontologie[$id]['nom'];
35
		}
36
		return $nom;
37
	}
38
 
39
	/**
40
	 * Retourne l'abréviation de la valeur de l'ontologie correspondant à l'id.
41
	 *
42
	 * @param int $id l'identifiant de la valeur de l'ontologie.
43
	 * @return string l'abreviation de la valeur.
44
	 */
45
	public function getValeurNom($id) {
46
		$abr = null;
47
		if (isset($this->ontologie[$id])) {
48
			$abr = $this->ontologie[$id]['abr'];
49
		}
50
		return $abr;
51
	}
52
 
53
	/**
54
	 * Le tableau de retour Ontologie est au format :
55
	 * $ontologie[id_valeur] = array(
56
	 * 	'nom' => 'nom de la valeur',
57
	 * 	'abr' => 'abréviation de la valeur);
58
	 *
59
	 * @param int $id l'identifiant de la valeur de l'ontologie.
60
	 * @return $ontologie tableau listant les valeurs de l'ontologie.
61
	 */
62
	public function getValeur($id) {
63
		$valeur = null;
64
		if (isset($this->ontologie[$id])) {
65
			$valeur = $this->ontologie[$id];
66
		}
67
		return $valeur;
68
	}
69
}