Mercurial > defr > DualBlog
changeset 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 | 390bbf7c5aea |
children | f6552a610bfd |
files | .htaccess includes/class.skeleton.php |
diffstat | 2 files changed, 17 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/.htaccess Wed Nov 14 17:01:23 2007 +0100 +++ b/.htaccess Wed Nov 14 17:12:37 2007 +0100 @@ -1,8 +1,8 @@ Options +FollowSymlinks RewriteEngine on # Kill the RSS version, re-direct to the atom feed -RewriteRule ^dualblog.rss$ index.php?outputType=atom [L,QSA] -RewriteRule ^dualblog.atom$ index.php?outputType=atom [L,QSA] +RewriteRule ^dualblog.rss$ index.php?atom [L,QSA] +RewriteRule ^dualblog.atom$ index.php?atom [L,QSA] RewriteRule ^posts/$ index.php [L] RewriteRule ^posts/([0-9]+)/([0-9]{1,2})$ index.php?mode=cal&year=$1&month=$2 [L] RewriteRule ^posts/([0-9]+)-(.*)$ comment.php?id=$1 [L]
--- a/includes/class.skeleton.php Wed Nov 14 17:01:23 2007 +0100 +++ b/includes/class.skeleton.php Wed Nov 14 17:12:37 2007 +0100 @@ -249,11 +249,22 @@ // Construction du tableau des différents templates // permettant de répondre au "type" de sortie demandé $iniFile = parse_ini_file('templates.conf', true); - - $format = Factory::getRequete() - ->get('outputType', null, Skeleton::OUTPUT_XHTML); - if(array_key_exists($format, $iniFile)) { + // Récupération de la requete + $requete = Factory::getRequete(); + + // On essaie de trouver le format en Query-String + // On recherche tout d'abord un paramètre correspondant + // au nom d'un des formats. On prend le premier mentionné, + // par ordre d'apparition dans le fichier templates.conf + $format = null; + while(is_null($format) && list($key, ) = each($iniFile)) { + $format = $requete->get($key, null, null); + } + + // Si on a trouvé un format, on l'applique. + // Sinon, on prend le template nommé 'xhtml' + if(!is_null($format)) { Skeleton::$templates = $iniFile[$format]; Skeleton::$outputType = $format; } else {