summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Andrews <candrews@integralblue.com>2009-12-04 01:57:14 -0500
committerCraig Andrews <candrews@integralblue.com>2009-12-04 01:57:14 -0500
commit40afc7e9877855272caa5c65fb3575e4420b2966 (patch)
tree87c6743581b311e16972459c5f3903ea209986e8
parentc89b10ffe4adb1df724b6a7c5c31b42c7dd3376b (diff)
Add 4 new events: StartCssLinkElement, EndCssLinkElement, StartScriptElement, EndScriptElement
-rw-r--r--EVENTS.txt21
-rw-r--r--lib/htmloutputter.php42
2 files changed, 45 insertions, 18 deletions
diff --git a/EVENTS.txt b/EVENTS.txt
index 34a222e8f..f4ec62033 100644
--- a/EVENTS.txt
+++ b/EVENTS.txt
@@ -574,3 +574,24 @@ EndShortenUrl: After a URL has been shortened
- $shortenerName: name of the requested shortener
- $shortenedUrl: short version of the url
+StartCssLinkElement: Before a <link rel="stylesheet"..> element is written
+- $action
+- &$src
+- &$theme
+- &$media
+
+EndCssLinkElement: After a <link rel="stylesheet"..> element is written
+- $action
+- $src
+- $theme
+- $media
+
+StartScriptElement: Before a <script...> element is written
+- $action
+- &$src
+- &$type
+
+EndScriptElement: After a <script...> element is written
+- $action
+- $src
+- $type
diff --git a/lib/htmloutputter.php b/lib/htmloutputter.php
index d267526c8..a7c596917 100644
--- a/lib/htmloutputter.php
+++ b/lib/htmloutputter.php
@@ -350,14 +350,17 @@ class HTMLOutputter extends XMLOutputter
*/
function script($src, $type='text/javascript')
{
- $url = parse_url($src);
- if( empty($url->scheme) && empty($url->host) && empty($url->query) && empty($url->fragment))
- {
- $src = common_path($src) . '?version=' . STATUSNET_VERSION;
+ if(Event::handle('StartScriptElement', array($this,&$src,&$type))) {
+ $url = parse_url($src);
+ if( empty($url->scheme) && empty($url->host) && empty($url->query) && empty($url->fragment))
+ {
+ $src = common_path($src) . '?version=' . STATUSNET_VERSION;
+ }
+ $this->element('script', array('type' => $type,
+ 'src' => $src),
+ ' ');
+ Event::handle('EndScriptElement', array($this,$src,$type));
}
- $this->element('script', array('type' => $type,
- 'src' => $src),
- ' ');
}
/**
@@ -371,19 +374,22 @@ class HTMLOutputter extends XMLOutputter
*/
function cssLink($src,$theme=null,$media=null)
{
- $url = parse_url($src);
- if( empty($url->scheme) && empty($url->host) && empty($url->query) && empty($url->fragment))
- {
- if(file_exists(Theme::file($src,$theme))){
- $src = Theme::path($src, $theme) . '?version=' . STATUSNET_VERSION;
- }else{
- $src = common_path($src);
+ if(Event::handle('StartCssLinkElement', array($this,&$src,&$theme,&$media))) {
+ $url = parse_url($src);
+ if( empty($url->scheme) && empty($url->host) && empty($url->query) && empty($url->fragment))
+ {
+ if(file_exists(Theme::file($src,$theme))){
+ $src = Theme::path($src, $theme) . '?version=' . STATUSNET_VERSION;
+ }else{
+ $src = common_path($src);
+ }
}
+ $this->element('link', array('rel' => 'stylesheet',
+ 'type' => 'text/css',
+ 'href' => $src,
+ 'media' => $media));
+ Event::handle('EndCssLinkElement', array($this,$src,$theme,$media));
}
- $this->element('link', array('rel' => 'stylesheet',
- 'type' => 'text/css',
- 'href' => $src,
- 'media' => $media));
}
/**