Subversion Repositories Applications.framework

Rev

Rev 364 | Rev 415 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 364 Rev 414
Line 10... Line 10...
10
 * @author		Aurélien PERONNET <aurelien@tela-botanica.org>
10
 * @author		Aurélien PERONNET <aurelien@tela-botanica.org>
11
 * @author		Jean-Pascal MILCENT <jpm@tela-botanica.org>
11
 * @author		Jean-Pascal MILCENT <jpm@tela-botanica.org>
12
 * @copyright	Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
12
 * @copyright	Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
13
 * @license	http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
13
 * @license	http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
14
 * @license	http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
14
 * @license	http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
15
 * @version	$Id: Controleur.php 364 2011-09-27 15:24:36Z jpm $
15
 * @version	$Id: Controleur.php 414 2012-04-02 17:10:46Z jpm $
16
 * @link		/doc/framework/
16
 * @link		/doc/framework/
17
 *
17
 *
18
 */
18
 */
19
abstract class Controleur {
19
abstract class Controleur {
20
	/** Variable statique indiquant que les tableaux _GET et _POST ont déjà été encodé au format de l'appli. */
20
	/** Variable statique indiquant que les tableaux _GET et _POST ont déjà été encodé au format de l'appli. */
Line 82... Line 82...
82
	*
82
	*
83
	* @param string $nom_modele le nom du modèle à  charger
83
	* @param string $nom_modele le nom du modèle à  charger
84
	*
84
	*
85
	* @return boolean false si le chargement a échoué, sinon true.
85
	* @return boolean false si le chargement a échoué, sinon true.
86
	*/
86
	*/
87
	final public function chargerModele($nom_modele) {
87
	public function chargerModele($nom_modele) {
88
		$sortie = true;
88
		$sortie = true;
89
		if (!isset($this->$nom_modele)) {
89
		if (!isset($this->$nom_modele)) {
90
			$modele = $this->getModele($nom_modele);
90
			$modele = $this->getModele($nom_modele);
91
			if ($modele !== false) {
91
			if ($modele !== false) {
92
				$this->$nom_modele = new $nom_modele;
92
				$this->$nom_modele = new $nom_modele;
Line 103... Line 103...
103
	* @param string $nom_modele	le nom du fichier modèle à charger sans son extension
103
	* @param string $nom_modele	le nom du fichier modèle à charger sans son extension
104
	* @param String $ext		l'extension du fichier du modèle (par défaut : ".php")
104
	* @param String $ext		l'extension du fichier du modèle (par défaut : ".php")
105
	*
105
	*
106
	* @return mixed false si le chargement a échoué, sinon l'objet du modèle demandé.
106
	* @return mixed false si le chargement a échoué, sinon l'objet du modèle demandé.
107
	*/
107
	*/
108
	final protected function getModele($nom_modele, $ext = '.php') {
108
	protected function getModele($nom_modele, $ext = '.php') {
109
		$sortie = false;
109
		$sortie = false;
Line 110... Line 110...
110
		
110
 
111
		$chemin_modele = $this->registre->get('base_chemin_modele').$nom_modele.$ext;
111
		$chemin_modele = $this->registre->get('base_chemin_modele').$nom_modele.$ext;
112
		if (file_exists($chemin_modele)) {
112
		if (file_exists($chemin_modele)) {
Line 120... Line 120...
120
 
120
 
121
	/**
121
	/**
122
	 * Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données,
122
	 * Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données,
123
	 * en extrait les variables, charge le squelette et retourne le résultat des deux combinés.
123
	 * en extrait les variables, charge le squelette et retourne le résultat des deux combinés.
124
	 *
124
	 *
125
	 * @param String $nom_squelette	le nom du squelette sans son extension
125
	 * @param String $nom_squelette	le nom du squelette sans son extension si elle vaut ".tpl.html"
126
	 * @param Array  $donnees			un tableau associatif contenant les variables a injecter dans la vue
126
	 * @param Array  $donnees		un tableau associatif contenant les variables a injecter dans la vue
127
	 * @param String $ext				l'extension du fichier du squelette (par défaut : ".tpl.html"
127
	 * @since 0.4 suppression du paramètre 'ext' => le mettre directement dans le nom du squelette
128
	 *
128
	 *
129
	 * @return boolean false si la vue n'existe pas, sinon la chaine résultat.
129
	 * @return boolean false si la vue n'existe pas, sinon la chaine résultat.
130
	 */
130
	 */
131
	final protected function getVue($nom_squelette, &$donnees = array(), $ext = '.tpl.html') {
131
	protected function getVue($nom_squelette, $donnees = array()) {
132
		$donnees = $this->preTraiterDonnees($donnees);
-
 
-
 
132
		$donnees = $this->preTraiterDonnees($donnees);
-
 
133
		$chemin_squelette = $this->base_chemin_squelette.$nom_squelette.'.tpl.html';
133
		
134
		if (file_exists($chemin_squelette) == false) {
-
 
135
			$chemin_squelette = $this->base_chemin_squelette.$nom_squelette;
134
		$chemin_squelette = $this->base_chemin_squelette.$nom_squelette.$ext;
136
		}
Line 135... Line 137...
135
		$sortie = SquelettePhp::analyser($chemin_squelette, $donnees);
137
		$sortie = SquelettePhp::analyser($chemin_squelette, $donnees);
136
 
138