Handle relative and absolute url parameters to script() and cssLink()

This commit is contained in:
Craig Andrews 2009-08-05 20:28:46 -04:00
parent ca70874b0a
commit 2eaf738bf7

View File

@ -349,29 +349,38 @@ class HTMLOutputter extends XMLOutputter
*/ */
function script($src, $type='text/javascript') function script($src, $type='text/javascript')
{ {
$url = parse_url($src);
if(! ($url->scheme || $url->host || $url->query || $url->fragment))
{
$src = common_path($src) . '?version=' . LACONICA_VERSION;
}
$this->element('script', array('type' => $type, $this->element('script', array('type' => $type,
'src' => common_path($src) . '?version=' . LACONICA_VERSION), 'src' => $src),
' '); ' ');
} }
/** /**
* output a css link * output a css link
* *
* @param string $relative relative path within the theme directory * @param string $src relative path within the theme directory, or an absolute path
* @param string $theme 'theme' that contains the stylesheet * @param string $theme 'theme' that contains the stylesheet
* @param string media 'media' attribute of the tag * @param string media 'media' attribute of the tag
* *
* @return void * @return void
*/ */
function cssLink($relative,$theme,$media) function cssLink($src,$theme,$media)
{ {
if (!$theme) { if (!$theme) {
$theme = common_config('site', 'theme'); $theme = common_config('site', 'theme');
} }
$url = parse_url($src);
if(! ($url->scheme || $url->host || $url->query || $url->fragment))
{
$src = theme_path($src) . '?version=' . LACONICA_VERSION;
}
$this->element('link', array('rel' => 'stylesheet', $this->element('link', array('rel' => 'stylesheet',
'type' => 'text/css', 'type' => 'text/css',
'href' => theme_path($relative, $theme) . '?version=' . LACONICA_VERSION, 'href' => $src,
'media' => $media)); 'media' => $media));
} }