From 2ca1433524ebb3770ae90ae971572fde80c773b7 Mon Sep 17 00:00:00 2001 From: Esther Brunner Date: Tue, 16 Aug 2005 21:23:01 +0200 Subject: fileicons for non image media #198 darcs-hash:20050816192301-283c4-764462bd6cef810b4385a228edda3951ff709468.gz --- inc/parser/xhtml.php | 54 +++++++++++++++++++++++++++++++++--------- lib/images/fileicons/conf.png | Bin 0 -> 1226 bytes lib/images/fileicons/deb.png | Bin 0 -> 530 bytes lib/images/fileicons/doc.png | Bin 0 -> 505 bytes lib/images/fileicons/gz.png | Bin 0 -> 393 bytes lib/images/fileicons/htm.png | Bin 0 -> 768 bytes lib/images/fileicons/html.png | Bin 0 -> 768 bytes lib/images/fileicons/pdf.png | Bin 0 -> 1049 bytes lib/images/fileicons/ppt.png | Bin 0 -> 1032 bytes lib/images/fileicons/ps.png | Bin 0 -> 396 bytes lib/images/fileicons/rtf.png | Bin 0 -> 1061 bytes lib/images/fileicons/sxc.png | Bin 0 -> 246 bytes lib/images/fileicons/sxd.png | Bin 0 -> 1111 bytes lib/images/fileicons/sxi.png | Bin 0 -> 1166 bytes lib/images/fileicons/sxw.png | Bin 0 -> 375 bytes lib/images/fileicons/tgz.png | Bin 0 -> 406 bytes lib/images/fileicons/txt.png | Bin 0 -> 277 bytes lib/images/fileicons/xls.png | Bin 0 -> 1319 bytes lib/images/fileicons/xml.png | Bin 0 -> 1059 bytes lib/images/fileicons/zip.png | Bin 0 -> 235 bytes 20 files changed, 43 insertions(+), 11 deletions(-) create mode 100644 lib/images/fileicons/conf.png create mode 100644 lib/images/fileicons/deb.png create mode 100644 lib/images/fileicons/doc.png create mode 100644 lib/images/fileicons/gz.png create mode 100644 lib/images/fileicons/htm.png create mode 100644 lib/images/fileicons/html.png create mode 100644 lib/images/fileicons/pdf.png create mode 100644 lib/images/fileicons/ppt.png create mode 100644 lib/images/fileicons/ps.png create mode 100644 lib/images/fileicons/rtf.png create mode 100644 lib/images/fileicons/sxc.png create mode 100644 lib/images/fileicons/sxd.png create mode 100644 lib/images/fileicons/sxi.png create mode 100644 lib/images/fileicons/sxw.png create mode 100644 lib/images/fileicons/tgz.png create mode 100644 lib/images/fileicons/txt.png create mode 100644 lib/images/fileicons/xls.png create mode 100644 lib/images/fileicons/xml.png create mode 100644 lib/images/fileicons/zip.png diff --git a/inc/parser/xhtml.php b/inc/parser/xhtml.php index 112acc91c..cde1468ac 100644 --- a/inc/parser/xhtml.php +++ b/inc/parser/xhtml.php @@ -715,9 +715,6 @@ class Doku_Renderer_xhtml extends Doku_Renderer { $this->doc .= $this->_formatLink($link); } - /** - * @todo don't add link for flash - */ function internalmedia ($src, $title=NULL, $align=NULL, $width=NULL, $height=NULL, $cache=NULL) { global $conf; @@ -735,15 +732,30 @@ class Doku_Renderer_xhtml extends Doku_Renderer { $link['title'] = $this->_xmlEntities($src); list($ext,$mime) = mimetype($src); if(substr($mime,0,5) == 'image'){ - $link['url'] = ml($src,array('id'=>$ID,'cache'=>$cache),false); - }else{ - $link['url'] = ml($src,array('id'=>$ID,'cache'=>$cache),true); - } - $link['name'] = $this->_media ($src, $title, $align, $width, $height, $cache); + // link only jpeg images + // if ($ext != 'jpg' && $ext != 'jpeg') $noLink = TRUE; + $link['url'] = ml($src,array('id'=>$ID,'cache'=>$cache),false); + }elseif($mime == 'application/x-shockwave-flash'){ + // don't link flash movies + $noLink = TRUE; + }else{ + // add file icons + $link['class'] = 'urlextern'; + if(@file_exists(DOKU_INC.'lib/images/fileicons/'.$ext.'.png')){ + $link['style']='background-image: url('.DOKU_BASE.'lib/images/fileicons/'.$ext.'.png)'; + }elseif(@file_exists(DOKU_INC.'lib/images/fileicons/'.$ext.'.gif')){ + $link['style']='background-image: url('.DOKU_BASE.'lib/images/fileicons/'.$ext.'.gif)'; + }else{ + $link['style']='background-image: url('.DOKU_BASE.'lib/images/fileicons/file.gif)'; + } + $link['url'] = ml($src,array('id'=>$ID,'cache'=>$cache),true); + } + $link['name'] = $this->_media ($src, $title, $align, $width, $height, $cache); - //output formatted - $this->doc .= $this->_formatLink($link); + //output formatted + if ($noLink) $this->doc .= $link['name']; + else $this->doc .= $this->_formatLink($link); } /** @@ -766,8 +778,28 @@ class Doku_Renderer_xhtml extends Doku_Renderer { $link['name'] = $this->_media ($src, $title, $align, $width, $height, $cache); + list($ext,$mime) = mimetype($src); + if(substr($mime,0,5) == 'image'){ + // link only jpeg images + // if ($ext != 'jpg' && $ext != 'jpeg') $noLink = TRUE; + }elseif($mime == 'application/x-shockwave-flash'){ + // don't link flash movies + $noLink = TRUE; + }else{ + // add file icons + $link['class'] = 'urlextern'; + if(@file_exists(DOKU_INC.'lib/images/fileicons/'. $ext.'.png')){ + $link['style']='background-image: url('.DOKU_BASE.'lib/images/fileicons/'.$ext.'.png)'; + }elseif(@file_exists(DOKU_INC.'lib/images/fileicons/'.$ext.'.gif')){ + $link['style']='background-image: url('.DOKU_BASE.'lib/images/fileicons/'.$ext.'.gif)'; + }else{ + $link['style']='background-image: url('.DOKU_BASE.'lib/images/fileicons/file.gif)'; + } + } + //output formatted - $this->doc .= $this->_formatLink($link); + if ($noLink) $this->doc .= $link['name']; + else $this->doc .= $this->_formatLink($link); } /** diff --git a/lib/images/fileicons/conf.png b/lib/images/fileicons/conf.png new file mode 100644 index 000000000..7d9225ede Binary files /dev/null and b/lib/images/fileicons/conf.png differ diff --git a/lib/images/fileicons/deb.png b/lib/images/fileicons/deb.png new file mode 100644 index 000000000..17cb31a0a Binary files /dev/null and b/lib/images/fileicons/deb.png differ diff --git a/lib/images/fileicons/doc.png b/lib/images/fileicons/doc.png new file mode 100644 index 000000000..fbc3792d9 Binary files /dev/null and b/lib/images/fileicons/doc.png differ diff --git a/lib/images/fileicons/gz.png b/lib/images/fileicons/gz.png new file mode 100644 index 000000000..1de1da3c8 Binary files /dev/null and b/lib/images/fileicons/gz.png differ diff --git a/lib/images/fileicons/htm.png b/lib/images/fileicons/htm.png new file mode 100644 index 000000000..8ecb4bc0d Binary files /dev/null and b/lib/images/fileicons/htm.png differ diff --git a/lib/images/fileicons/html.png b/lib/images/fileicons/html.png new file mode 100644 index 000000000..f94c6e3ec Binary files /dev/null and b/lib/images/fileicons/html.png differ diff --git a/lib/images/fileicons/pdf.png b/lib/images/fileicons/pdf.png new file mode 100644 index 000000000..2bd4c4f85 Binary files /dev/null and b/lib/images/fileicons/pdf.png differ diff --git a/lib/images/fileicons/ppt.png b/lib/images/fileicons/ppt.png new file mode 100644 index 000000000..8215c8993 Binary files /dev/null and b/lib/images/fileicons/ppt.png differ diff --git a/lib/images/fileicons/ps.png b/lib/images/fileicons/ps.png new file mode 100644 index 000000000..2e39a1000 Binary files /dev/null and b/lib/images/fileicons/ps.png differ diff --git a/lib/images/fileicons/rtf.png b/lib/images/fileicons/rtf.png new file mode 100644 index 000000000..c85bc5554 Binary files /dev/null and b/lib/images/fileicons/rtf.png differ diff --git a/lib/images/fileicons/sxc.png b/lib/images/fileicons/sxc.png new file mode 100644 index 000000000..3d6992708 Binary files /dev/null and b/lib/images/fileicons/sxc.png differ diff --git a/lib/images/fileicons/sxd.png b/lib/images/fileicons/sxd.png new file mode 100644 index 000000000..7d29896cd Binary files /dev/null and b/lib/images/fileicons/sxd.png differ diff --git a/lib/images/fileicons/sxi.png b/lib/images/fileicons/sxi.png new file mode 100644 index 000000000..d8eeb9298 Binary files /dev/null and b/lib/images/fileicons/sxi.png differ diff --git a/lib/images/fileicons/sxw.png b/lib/images/fileicons/sxw.png new file mode 100644 index 000000000..655d4a63a Binary files /dev/null and b/lib/images/fileicons/sxw.png differ diff --git a/lib/images/fileicons/tgz.png b/lib/images/fileicons/tgz.png new file mode 100644 index 000000000..3ab716414 Binary files /dev/null and b/lib/images/fileicons/tgz.png differ diff --git a/lib/images/fileicons/txt.png b/lib/images/fileicons/txt.png new file mode 100644 index 000000000..1bc7f1c3a Binary files /dev/null and b/lib/images/fileicons/txt.png differ diff --git a/lib/images/fileicons/xls.png b/lib/images/fileicons/xls.png new file mode 100644 index 000000000..31aa9b344 Binary files /dev/null and b/lib/images/fileicons/xls.png differ diff --git a/lib/images/fileicons/xml.png b/lib/images/fileicons/xml.png new file mode 100644 index 000000000..1286a5b18 Binary files /dev/null and b/lib/images/fileicons/xml.png differ diff --git a/lib/images/fileicons/zip.png b/lib/images/fileicons/zip.png new file mode 100644 index 000000000..0f60c038b Binary files /dev/null and b/lib/images/fileicons/zip.png differ -- cgit v1.2.3