summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSarven Capadisli <csarven@controlyourself.ca>2009-02-12 22:16:48 +0000
committerSarven Capadisli <csarven@controlyourself.ca>2009-02-12 22:16:48 +0000
commitdac8d103e69deb63c7eafe16286f23a66034d967 (patch)
tree279beb131b4de6fee58a8db8c910a68f510d1176
parent579f09417bcd80bcf1921ebd8104f648d49413a6 (diff)
Hooks for: header, contentblock, footer
-rw-r--r--EVENTS.txt19
-rw-r--r--lib/action.php15
2 files changed, 31 insertions, 3 deletions
diff --git a/EVENTS.txt b/EVENTS.txt
index d9634325d..aed3dd9c5 100644
--- a/EVENTS.txt
+++ b/EVENTS.txt
@@ -39,3 +39,22 @@ StartShowSections: Start the list of sections in the sidebar
EndShowSections: End the list of sections in the sidebar
- $action: the current action
+
+StartShowHeader: Showing before the header container
+- $action: the current action
+
+EndShowHeader: Showing after the header container
+- $action: the current action
+
+StartShowFooter: Showing before the footer container
+- $action: the current action
+
+EndShowFooter: Showing after the footer container
+- $action: the current action
+
+StartShowContentBlock: Showing before the content container
+- $action: the current action
+
+EndShowContentBlock: Showing after the content container
+- $action: the current action
+
diff --git a/lib/action.php b/lib/action.php
index bd38bf79c..602118cdf 100644
--- a/lib/action.php
+++ b/lib/action.php
@@ -275,9 +275,15 @@ class Action extends HTMLOutputter // lawsuit
{
$this->elementStart('body', array('id' => $this->trimmed('action')));
$this->elementStart('div', array('id' => 'wrap'));
- $this->showHeader();
+ if (Event::handle('StartShowHeader', array($this))) {
+ $this->showHeader();
+ Event::handle('EndShowHeader', array($this));
+ }
$this->showCore();
- $this->showFooter();
+ if (Event::handle('StartShowFooter', array($this))) {
+ $this->showFooter();
+ Event::handle('EndShowFooter', array($this));
+ }
$this->elementEnd('div');
$this->elementEnd('body');
}
@@ -432,7 +438,10 @@ class Action extends HTMLOutputter // lawsuit
{
$this->elementStart('div', array('id' => 'core'));
$this->showLocalNavBlock();
- $this->showContentBlock();
+ if (Event::handle('StartShowContentBlock', array($this))) {
+ $this->showContentBlock();
+ Event::handle('EndShowContentBlock', array($this));
+ }
$this->showAside();
$this->elementEnd('div');
}