includes/wikiengine/Render/Xhtml/Image.php
changeset 1027 98c052fc3337
parent 1026 f0431eb8161e
child 1028 dde4416dea00
--- a/includes/wikiengine/Render/Xhtml/Image.php	Sun Jun 21 00:16:21 2009 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,180 +0,0 @@
-<?php
-// vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4:
-/**
- * Image rule end renderer for Xhtml
- *
- * PHP versions 4 and 5
- *
- * @category   Text
- * @package    Text_Wiki
- * @author     Paul M. Jones <pmjones@php.net>
- * @license    http://www.gnu.org/copyleft/lesser.html  LGPL License 2.1
- * @version    CVS: $Id: Image.php,v 1.16 2006/02/10 23:07:03 toggg Exp $
- * @link       http://pear.php.net/package/Text_Wiki
- */
-
-/**
- * This class inserts an image in XHTML.
- *
- * @category   Text
- * @package    Text_Wiki
- * @author     Paul M. Jones <pmjones@php.net>
- * @license    http://www.gnu.org/copyleft/lesser.html  LGPL License 2.1
- * @version    Release: @package_version@
- * @link       http://pear.php.net/package/Text_Wiki
- */
-class Text_Wiki_Render_Xhtml_Image extends Text_Wiki_Render {
-
-    var $conf = array(
-        'base' => '/',
-        'url_base' => null,
-        'css'  => null,
-        'css_link' => null
-    );
-
-
-    /**
-    *
-    * Renders a token into text matching the requested format.
-    *
-    * @access public
-    *
-    * @param array $options The "options" portion of the token (second
-    * element).
-    *
-    * @return string The text rendered from the token options.
-    *
-    */
-
-    function token($options)
-    {
-        // note the image source
-        $src = $options['src'];
-
-        // is the source a local file or URL?
-        if (strpos($src, '://') === false) {
-            // the source refers to a local file.
-            // add the URL base to it.
-            $src = $this->getConf('base', '/') . $src;
-        }
-
-        // stephane@metacites.net
-        // is the image clickable?
-        if (isset($options['attr']['link'])) {
-            // yes, the image is clickable.
-            // are we linked to a URL or a wiki page?
-            if (strpos($options['attr']['link'], '://')) {
-                // it's a URL, prefix the URL base
-                $href = $this->getConf('url_base') . $options['attr']['link'];
-            } else {
-                // it's a WikiPage; assume it exists.
-                /** @todo This needs to honor sprintf wikilinks (pmjones) */
-                /** @todo This needs to honor interwiki (pmjones) */
-                /** @todo This needs to honor freelinks (pmjones) */
-                $href = $this->wiki->getRenderConf('xhtml', 'wikilink', 'view_url') .
-                    $options['attr']['link'];
-            }
-        } else {
-            // image is not clickable.
-            $href = null;
-        }
-        // unset so it won't show up as an attribute
-        unset($options['attr']['link']);
-
-        // stephane@metacites.net -- 25/07/2004
-        // we make up an align="center" value for the <img> tag.
-        if (isset($options['attr']['align']) &&
-            $options['attr']['align'] == 'center') {
-
-            // unset so it won't show up as an attribute
-            unset($options['attr']['align']);
-
-            // make sure we have a style attribute
-            if (! isset($options['attr']['style'])) {
-                // no style, set up a blank one
-                $options['attr']['style'] = '';
-            } else {
-                // style exists, add a space
-                $options['attr']['style'] .= ' ';
-            }
-
-            // add a "center" style to the existing style.
-            $options['attr']['style'] .=
-                'display: block; margin-left: auto; margin-right: auto;';
-        }
-
-        // stephane@metacites.net -- 25/07/2004
-        // try to guess width and height
-        if (! isset($options['attr']['width']) &&
-            ! isset($options['attr']['height'])) {
-
-            // does the source refer to a local file or a URL?
-            if (strpos($src,'://')) {
-                // is a URL link
-                $imageFile = $src;
-            } elseif ($src[0] == '.') {
-            	// reg at dav-muz dot net -- 2005-03-07
-				// is a local file on relative path.
-				$imageFile = $src; # ...don't do anything because it's perfect!
-			} else {
-                // is a local file on absolute path.
-                $imageFile = $_SERVER['DOCUMENT_ROOT'] . $src;
-            }
-
-            // attempt to get the image size
-            $imageSize = @getimagesize($imageFile);
-
-            if (is_array($imageSize)) {
-                $options['attr']['width'] = $imageSize[0];
-                $options['attr']['height'] = $imageSize[1];
-            }
-
-        }
-
-        // start the HTML output
-        $output = '<img src="' . $this->textEncode($src) . '"';
-
-        // get the CSS class but don't add it yet
-        $css = $this->formatConf(' class="%s"', 'css');
-
-        // add the attributes to the output, and be sure to
-        // track whether or not we find an "alt" attribute
-        $alt = false;
-        foreach ($options['attr'] as $key => $val) {
-
-            // track the 'alt' attribute
-            if (strtolower($key) == 'alt') {
-                $alt = true;
-            }
-
-            // the 'class' attribute overrides the CSS class conf
-            if (strtolower($key) == 'class') {
-                $css = null;
-            }
-
-            $key = $this->textEncode($key);
-            $val = $this->textEncode($val);
-            $output .= " $key=\"$val\"";
-        }
-
-        // always add an "alt" attribute per Stephane Solliec
-        if (! $alt) {
-            $alt = $this->textEncode(basename($options['src']));
-            $output .= " alt=\"$alt\"";
-        }
-
-        // end the image tag with the automatic CSS class (if any)
-        $output .= "$css />";
-
-        // was the image clickable?
-        if ($href) {
-            // yes, add the href and return
-            $href = $this->textEncode($href);
-            $css = $this->formatConf(' class="%s"', 'css_link');
-            $output = "<a$css href=\"$href\">$output</a>";
-        }
-
-        return $output;
-    }
-}
-?>