]> git.llucax.com Git - mecon/meconlib.git/blobdiff - lib/MECON/HTML/Icon.php
Se borran cosas que no entran en mlib.
[mecon/meconlib.git] / lib / MECON / HTML / Icon.php
index 471e48d177734e285424e6825bdd5c0d3400d049..2b5001d3c2b6b83aa68d409dbfb3022b33a11c9c 100644 (file)
@@ -60,25 +60,39 @@ class MECON_HTML_Icon extends MECON_HTML_Image {
      */
     var $_link;
 
+    /**
+     * Alineacion de la imagen con respecto al texto.
+     * @private
+     */
+    var $_align;
+
     /**
      * Constructor.
      *
      * @param $nombre Nombre de la imágen.
      * @param $link   Link a donde apunta. Si es null, no tiene un link.
                       Puede ser un link o un MECON_HTML_Link.
+     * @param $alt    Texto alternativo para la imagen.
      * @param $attrs  Atributos de la imágen.
+     * @param $align  Alineación de la imagen con respecto al texto.
      */
-    function MECON_HTML_Icon($nombre, $link = null, $alt = null, $attrs = array())
+    function MECON_HTML_Icon($nombre, $link = null, $alt = null, $attrs =
+            array(), $align = 'right')
     {
-        switch ($nombre) {
-            default:
-                $src = "/MECON/images/general_$nombre";
+        if (is_readable($nombre))
+        {
+            $src = $nombre; 
+        }
+        else             
+        {
+            $src = "/MECON/images/general_$nombre";
         }
         if (is_null($alt)) {
             $alt = '(' . strtoupper($nombre{0}) . ')';
         }
         parent::MECON_HTML_Image($src, $alt, $attrs);
         $this->setLink($link);
+        $this->_align = $align;
     }
 
     /**
@@ -147,8 +161,15 @@ class MECON_HTML_Icon extends MECON_HTML_Image {
         if (!$full or is_null($link)) {
             return $link;
         }
-        $link->addContents(new MECON_HTML_Image($this->getSrc(),
-            $this->getAlt(), $this->getAttributes()));
+
+        if ($this->_align == 'left') {
+            $link->addContents(new MECON_HTML_Image($this->getSrc(),
+                        $this->getAlt(), $this->getAttributes()), true);
+        }
+        elseif ($this->_align == 'right') {
+            $link->addContents(new MECON_HTML_Image($this->getSrc(),
+                        $this->getAlt(), $this->getAttributes()));
+        }
         return $link;
     }