aboutsummaryrefslogtreecommitdiff
path: root/src/phorkie/File.php
diff options
context:
space:
mode:
authorChristian Weiske <cweiske@cweiske.de>2012-04-15 13:13:23 +0200
committerChristian Weiske <cweiske@cweiske.de>2012-04-15 13:13:23 +0200
commit6977145fa62346b35db60da018e699b7f1967e90 (patch)
tree506d5dfde75e18a40d318cbc3bc2ae487619fd7a /src/phorkie/File.php
parentb9ffa6b92277d3dc8a4eca77119ea098e20f36f0 (diff)
downloadphorkie-6977145fa62346b35db60da018e699b7f1967e90.tar.gz
phorkie-6977145fa62346b35db60da018e699b7f1967e90.zip
add image renderer
Diffstat (limited to 'src/phorkie/File.php')
-rw-r--r--src/phorkie/File.php16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/phorkie/File.php b/src/phorkie/File.php
index de8bde0..519413d 100644
--- a/src/phorkie/File.php
+++ b/src/phorkie/File.php
@@ -58,14 +58,22 @@ class File
return file_get_contents($this->path);
}
- public function getHighlightedContent(Tool_Result $res = null)
+ public function getRenderedContent(Tool_Result $res = null)
{
- $ext = $this->getExt();
+ $ext = $this->getExt();
+ $class = '\\phorkie\\Renderer_Unknown';
+
if (isset($GLOBALS['phorkie']['languages'][$ext]['renderer'])) {
$class = $GLOBALS['phorkie']['languages'][$ext]['renderer'];
- } else {
- $class = '\\phorkie\\Renderer_Geshi';
+ } else if (isset($GLOBALS['phorkie']['languages'][$ext]['mime'])) {
+ $type = $GLOBALS['phorkie']['languages'][$ext]['mime'];
+ if (substr($type, 0, 5) == 'text/') {
+ $class = '\\phorkie\\Renderer_Geshi';
+ } else if (substr($type, 0, 6) == 'image/') {
+ $class = '\\phorkie\\Renderer_Image';
+ }
}
+
$rend = new $class();
return $rend->toHtml($this, $res);
}