Mercurial > defr > DualBlog
changeset 21:86a6793f1408
Temporary fix: si on envoie le prolog xml, IE sort du mode strict...
Idealement, il faudrait detecter ça en amont, et utiliser saveHTML
ou saveXML en fonction: ce serait probablement plus robuste.
Toutefois, il faut encore decider si cela doit se faire par
défaut dans la classe Template ou en spécialisation dans
skeleton (auquel cas, il est indispensable de passer Template::xmlDocument
en protected).
author | Franck Deroche <webmaster@defr.org> |
---|---|
date | Fri, 26 Oct 2007 17:55:35 +0200 |
parents | afeabaebcd9a |
children | 6e084c604876 |
files | includes/class.skeleton.php |
diffstat | 1 files changed, 9 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/includes/class.skeleton.php Fri Oct 26 16:40:20 2007 +0200 +++ b/includes/class.skeleton.php Fri Oct 26 17:55:35 2007 +0200 @@ -6,12 +6,15 @@ private $showCalendar = false; private $calendarMonth; private $calendarYear; + private $useXML; public function __construct() { parent::__construct('main.xml'); $this->styleSheets = array(); $this->addDefaultSheets(); $this->blogPosts = array(); + $this->useXML = empty($_SERVER['HTTP_ACCEPT']) || + stristr($_SERVER['HTTP_ACCEPT'], 'application/xhtml+xml'); } public function setTitle($titre) { @@ -205,7 +208,12 @@ public function __toString() { $this->prepareOutput(); - return parent::__toString(); + $returnValue = parent::__toString(); + if($this->useXML) + header('Content-Type: application/xhtml+xml; charset=utf-8'); + else + $returnValue = ereg_replace('<\?xml[^\?]*\?>', '', $returnValue); + return $returnValue; } } ?>