| 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 2009 Tela-Botanica
|
12 |
* @copyright 2009 Tela-Botanica
|
| 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 SVN: $$Id: Controleur.php 170 2010-03-23 09:52:53Z aurelien $$
|
15 |
* @version SVN: $$Id: Controleur.php 172 2010-04-02 14:02:42Z aurelien $$
|
| 16 |
* @link /doc/framework/
|
16 |
* @link /doc/framework/
|
| 17 |
*
|
17 |
*
|
| 18 |
*/
|
18 |
*/
|
| 19 |
abstract class Controleur {
|
19 |
abstract class Controleur {
|
| 20 |
/**
|
20 |
/**
|
| Line 83... |
Line 83... |
| 83 |
* @param Array $donnees un tableau associatif contenant les variables a injecter dans la vue
|
83 |
* @param Array $donnees un tableau associatif contenant les variables a injecter dans la vue
|
| 84 |
*
|
84 |
*
|
| 85 |
* @return boolean false si la vue n'existe pas, sinon la chaine résultat.
|
85 |
* @return boolean false si la vue n'existe pas, sinon la chaine résultat.
|
| 86 |
*/
|
86 |
*/
|
| 87 |
final protected function getVue($nom_squelette, $donnees = array()) {
|
87 |
final protected function getVue($nom_squelette, $donnees = array()) {
|
| - |
|
88 |
|
| - |
|
89 |
$donnees = $this->preTraiterDonnees($donnees);
|
| 88 |
$chemin_squelette = ($this->registre->get('base_chemin_squelette')).$nom_squelette.'.tpl.html';
|
90 |
$chemin_squelette = ($this->registre->get('base_chemin_squelette')).$nom_squelette.'.tpl.html';
|
| Line 89... |
Line 91... |
| 89 |
|
91 |
|
| Line 90... |
Line 92... |
| 90 |
$sortie = SquelettePhp::analyser($chemin_squelette, $donnees);
|
92 |
$sortie = SquelettePhp::analyser($chemin_squelette, $donnees);
|
| 91 |
|
93 |
|
| Line 92... |
Line 94... |
| 92 |
return $sortie;
|
94 |
return $sortie;
|
| 93 |
}
|
- |
|
| 94 |
|
- |
|
| 95 |
/**
|
- |
|
| 96 |
* Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données,
|
- |
|
| 97 |
* en extrait les variables, charge le squelette et crée une variable de classe portant le nom du squelette
|
- |
|
| 98 |
* contenant les deux combinés.
|
- |
|
| 99 |
*
|
- |
|
| 100 |
* @param String $nom_squelette le nom du squelette
|
- |
|
| 101 |
* @param Array $donnees un tableau associatif contenant les variables a injecter dans la vue
|
- |
|
| 102 |
*
|
- |
|
| 103 |
* @return boolean false si la vue n'existe pas, sinon true.
|
- |
|
| 104 |
*/
|
- |
|
| 105 |
final protected function chargerVue($nom_squelette, $donnees = array()) {
|
- |
|
| 106 |
$sortie = false;
|
- |
|
| 107 |
$donnees = $this->preTraiterDonnees($donnees);
|
- |
|
| 108 |
$rendu = $this->getVue($nom_squelette, $donnees);
|
- |
|
| 109 |
if ($rendu !== false) {
|
- |
|
| 110 |
// Création d'une variable de classe contenant le rendu
|
- |
|
| 111 |
$this->$nom_squelette = $rendu;
|
- |
|
| 112 |
$sortie = true;
|
- |
|
| 113 |
}
|
- |
|
| 114 |
return $sortie;
|
- |
|
| 115 |
}
|
95 |
}
|
| 116 |
|
96 |
|
| 117 |
/**
|
97 |
/**
|
| 118 |
* Fonction prenant en paramètre un tableau de données et effectuant un traitement dessus.
|
98 |
* Fonction prenant en paramètre un tableau de données et effectuant un traitement dessus.
|
| 119 |
* Cette fonction est à surcharger dans les classes filles pour automatiser un traitement
|
99 |
* Cette fonction est à surcharger dans les classes filles pour automatiser un traitement
|
| Line 147... |
Line 127... |
| 147 |
*/
|
127 |
*/
|
| 148 |
final protected function encoderTableau($tableau, $encodage_sortie, $encodage_entree = null) {
|
128 |
final protected function encoderTableau($tableau, $encodage_sortie, $encodage_entree = null) {
|
| 149 |
if (is_array($tableau)) {
|
129 |
if (is_array($tableau)) {
|
| 150 |
foreach ($tableau as $cle => $valeur) {
|
130 |
foreach ($tableau as $cle => $valeur) {
|
| 151 |
if (is_array($valeur)) {
|
131 |
if (is_array($valeur)) {
|
| 152 |
$tableau[$cle] = $this->encoderTableau($tableau[$cle]);
|
132 |
$tableau[$cle] = $this->encoderTableau($tableau[$cle], $encodage_sortie, $encodage_entree);
|
| 153 |
} else {
|
133 |
} else {
|
| 154 |
$tableau[$cle] = mb_convert_encoding($valeur, $encodage_sortie, $encodage_entree);
|
134 |
$tableau[$cle] = mb_convert_encoding($valeur, $encodage_sortie, $encodage_entree);
|
| 155 |
}
|
135 |
}
|
| 156 |
}
|
136 |
}
|
| 157 |
}
|
137 |
}
|