diff options
author | Evan Prodromou <evan@controlyourself.ca> | 2009-08-06 12:32:09 -0400 |
---|---|---|
committer | Evan Prodromou <evan@controlyourself.ca> | 2009-08-06 12:32:09 -0400 |
commit | 2087ae621c60794e6dd9a41275e73db8529cd2a2 (patch) | |
tree | c3115552fa50e20696ee91b5ee438e6d62c004e4 /lib/htmloutputter.php | |
parent | 43e1c3d71f0366be96c4d7fe8d6b7d76c7f90498 (diff) | |
parent | c8c2d9d7c93f40e7ac81c6211f8ba4c3f6ae91d9 (diff) |
Merge branch '0.8.x' of git@gitorious.org:laconica/mainline into 0.8.x
Diffstat (limited to 'lib/htmloutputter.php')
-rw-r--r-- | lib/htmloutputter.php | 54 |
1 files changed, 50 insertions, 4 deletions
diff --git a/lib/htmloutputter.php b/lib/htmloutputter.php index 06603ac05..74876523a 100644 --- a/lib/htmloutputter.php +++ b/lib/htmloutputter.php @@ -109,10 +109,11 @@ class HTMLOutputter extends XMLOutputter header('Content-Type: '.$type); $this->extraHeaders(); - - $this->startXML('html', - '-//W3C//DTD XHTML 1.0 Strict//EN', - 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'); + if( ! substr($type,0,strlen('text/html'))=='text/html' ){ + // Browsers don't like it when <?xml it output for non-xhtml documents + $this->xw->startDocument('1.0', 'UTF-8'); + } + $this->xw->writeDTD('html', $public, $system); $language = $this->getLanguage(); @@ -339,6 +340,51 @@ class HTMLOutputter extends XMLOutputter } /** + * output a script (almost always javascript) tag + * + * @param string $src relative or absolute script path + * @param string $type 'type' attribute value of the tag + * + * @return void + */ + 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, + 'src' => $src), + ' '); + } + + /** + * output a css link + * + * @param string $src relative path within the theme directory, or an absolute path + * @param string $theme 'theme' that contains the stylesheet + * @param string media 'media' attribute of the tag + * + * @return void + */ + function cssLink($src,$theme=null,$media=null) + { + if (!$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', + 'type' => 'text/css', + 'href' => $src, + 'media' => $media)); + } + + /** * output an HTML textarea and associated elements * * @param string $id element ID, must be unique on page |