Subversion Repositories Applications.framework

Rev

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

Rev 239 Rev 241
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 239 2010-11-25 18:04:00Z jpm $
15
 * @version	$Id: Controleur.php 241 2010-12-06 15:19:07Z 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 27... Line 27...
27
	private $base_chemin_squelette = null;
27
	private $base_chemin_squelette = null;
Line 28... Line 28...
28
	
28
	
29
	/** Chemin de base vers les classes controleurs de la partie Controleur de l'application. */
29
	/** Chemin de base vers les classes controleurs de la partie Controleur de l'application. */
Line 30... Line 30...
30
	private $base_chemin_controleur = null;
30
	private $base_chemin_controleur = null;
31
	
31
	
Line -... Line 32...
-
 
32
	/** Objet URL contant l'url de la base de l'application. */
-
 
33
	private $base_url_applicaton = null;
-
 
34
 
32
	/** Base de l'url de l'application. */
35
	/** Tableau des noms des paramètres à définir dans le fichier de config car obligatoirement nécessaire à cette classe.*/
33
	private $base_url_applicaton = null;
36
	protected $parametres_obligatoires = array('chemin_modeles', 'chemin_squelettes', 'chemin_controleurs', 'base_url_application');
34
 
37
	
35
	/**
38
	/**
36
	 * Constructeur par défaut
39
	 * Constructeur par défaut
37
	 */
40
	 */
38
	public function __construct() {
41
	public function __construct() {
39
		$this->registre = Registre::getInstance();
42
		Config::verifierPresenceParametres($this->parametres_obligatoires);
40
		$this->registre->set('base_chemin_modele', Config::get('chemin_modeles'));
43
		$this->base_chemin_modele = Config::get('chemin_modeles');
41
		$this->registre->set('base_chemin_squelette', Config::get('chemin_squelettes'));
44
		$this->base_chemin_squelette = Config::get('chemin_squelettes');
Line 42... Line 45...
42
		$this->registre->set('base_chemin_controleur', Config::get('chemin_controleurs'));
45
		$this->base_chemin_controleur = Config::get('chemin_controleurs');
43
		$this->registre->set('base_url_application', new Url(Config::get('base_url_application')));
46
		$this->base_url_application = new Url(Config::get('base_url_application'));
44
	}
47
	}
Line 94... Line 97...
94
	 *
97
	 *
95
	 * @return boolean false si la vue n'existe pas, sinon la chaine résultat.
98
	 * @return boolean false si la vue n'existe pas, sinon la chaine résultat.
96
	 */
99
	 */
97
	final protected function getVue($nom_squelette, &$donnees = array(), $ext = '.tpl.html') {
100
	final protected function getVue($nom_squelette, &$donnees = array(), $ext = '.tpl.html') {
98
		$donnees = $this->preTraiterDonnees($donnees);
101
		$donnees = $this->preTraiterDonnees($donnees);
99
		$chemin_squelette = ($this->registre->get('base_chemin_squelette')).$nom_squelette.$ext;
-
 
100
 
102
		
-
 
103
		$chemin_squelette = $this->base_chemin_squelette.$nom_squelette.$ext;
101
		$sortie = SquelettePhp::analyser($chemin_squelette, $donnees);
104
		$sortie = SquelettePhp::analyser($chemin_squelette, $donnees);
Line 102... Line 105...
102
 
105
 
103
		return $sortie;
106
		return $sortie;