From 2c420cc5eba9cd89b9daf0e10c750a34672a4795 Mon Sep 17 00:00:00 2001 From: Zach Copley Date: Fri, 29 Oct 2010 23:38:00 +0000 Subject: [PATCH] New Start/EndHtmlElement events. Allows adding namespaces. --- EVENTS.txt | 8 ++++++++ lib/htmloutputter.php | 13 ++++++++++--- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/EVENTS.txt b/EVENTS.txt index 8e730945a4..7d4fc6c162 100644 --- a/EVENTS.txt +++ b/EVENTS.txt @@ -365,6 +365,14 @@ GetValidDaemons: Just before determining which daemons to run HandleQueuedNotice: Handle a queued notice at queue time (or immediately if no queue) - &$notice: notice to handle +StartHtmlElement: Reight before outputting the HTML element - allows plugins to add namespaces +- $action: the current action +- &$attrs: attributes for the HTML element + +EndHtmlElement: Right after outputting the HTML element +- $action: the current action +- &$attrs: attributes for the HTML element + StartShowHeadElements: Right after the tag - $action: the current action diff --git a/lib/htmloutputter.php b/lib/htmloutputter.php index 42bff44908..b341d14958 100644 --- a/lib/htmloutputter.php +++ b/lib/htmloutputter.php @@ -119,9 +119,16 @@ class HTMLOutputter extends XMLOutputter $language = $this->getLanguage(); - $this->elementStart('html', array('xmlns' => 'http://www.w3.org/1999/xhtml', - 'xml:lang' => $language, - 'lang' => $language)); + $attrs = array( + 'xmlns' => 'http://www.w3.org/1999/xhtml', + 'xml:lang' => $language, + 'lang' => $language + ); + + if (Event::handle('StartHtmlElement', array($this, &$attrs))) { + $this->elementStart('html', $attrs); + Event::handle('EndHtmlElement', array($this, &$attrs)); + } } function getLanguage()