comparison includes/class.skeleton.php @ 43:1cdb1a68634b

Changement dans la facon dont on choisi le format. Pour choisir un format, on passe maintenant en query-string un paramètre dont le nom correspond au nom du format souhaité, et sans valeur. Mise à jour du .htaccess en fonction de cette nouvelle forme de selection.
author Franck Deroche <webmaster@defr.org>
date Wed, 14 Nov 2007 17:12:37 +0100
parents 33d1c5a13acd
children 77b3ed19aab9
comparison
equal deleted inserted replaced
42:390bbf7c5aea 43:1cdb1a68634b
247 public static function getTemplateFile($type) { 247 public static function getTemplateFile($type) {
248 if(count(Skeleton::$templates) == 0) { 248 if(count(Skeleton::$templates) == 0) {
249 // Construction du tableau des différents templates 249 // Construction du tableau des différents templates
250 // permettant de répondre au "type" de sortie demandé 250 // permettant de répondre au "type" de sortie demandé
251 $iniFile = parse_ini_file('templates.conf', true); 251 $iniFile = parse_ini_file('templates.conf', true);
252 252
253 $format = Factory::getRequete() 253 // Récupération de la requete
254 ->get('outputType', null, Skeleton::OUTPUT_XHTML); 254 $requete = Factory::getRequete();
255 255
256 if(array_key_exists($format, $iniFile)) { 256 // On essaie de trouver le format en Query-String
257 // On recherche tout d'abord un paramètre correspondant
258 // au nom d'un des formats. On prend le premier mentionné,
259 // par ordre d'apparition dans le fichier templates.conf
260 $format = null;
261 while(is_null($format) && list($key, ) = each($iniFile)) {
262 $format = $requete->get($key, null, null);
263 }
264
265 // Si on a trouvé un format, on l'applique.
266 // Sinon, on prend le template nommé 'xhtml'
267 if(!is_null($format)) {
257 Skeleton::$templates = $iniFile[$format]; 268 Skeleton::$templates = $iniFile[$format];
258 Skeleton::$outputType = $format; 269 Skeleton::$outputType = $format;
259 } else { 270 } else {
260 Skeleton::$templates = $iniFile[Skeleton::OUTPUT_XHTML]; 271 Skeleton::$templates = $iniFile[Skeleton::OUTPUT_XHTML];
261 Skeleton::$outputType = Skeleton::OUTPUT_XHTML; 272 Skeleton::$outputType = Skeleton::OUTPUT_XHTML;