]> git.llucax.com Git - mecon/meconlib.git/blobdiff - lib/MECON/Marco/MenuHorizontal.php
- Correccion de bugs
[mecon/meconlib.git] / lib / MECON / Marco / MenuHorizontal.php
index 3e54f9e8dfbd6d4a48f7256adf10d6bb45153ddf..684a4c731cc270acc68dbab9ba7c97afd9b3d06f 100644 (file)
@@ -24,24 +24,15 @@ Autor:  Martin Marrese <mmarre@mecon.gov.ar>
 $Id$
 -----------------------------------------------------------------------------*/
 
-#require_once 'PEAR.php';
-
-
-// +X2C includes
 require_once 'MECON/Marco/Menu.php';
-// ~X2C
+require_once 'MECON/HTML/Image.php';
 
-// +X2C Class 100 :MECON_Marco_MenuHorizontal
 /**
  * Clase que se encarga del manejo de los menues horizontales
  *
- * @package MECON_Marco
  * @access public
  */
 class MECON_Marco_MenuHorizontal extends MECON_Marco_Menu {
-    // ~X2C
-
-    // +X2C Operation 139
     /**
      * Funcion para agregar el cuerpo de la pagina a la pagina
      *
@@ -52,78 +43,79 @@ class MECON_Marco_MenuHorizontal extends MECON_Marco_Menu {
      * @return void
      * @access public
      */
-    function addBody($body, $titulo, $menu = null) // ~X2C
+    function addBody($body, $titulo, $menu = null) 
     {
-        $c = count($this->_componentes); 
-        //Agrego el titulo
-        $tit = '<font face="Arial, Helvetica, sans-serif" size="3" color="#FFFFFF"><b>'.$titulo.'</b></font>';
-        $row = array ($tit);
-        $this->_tabla->addRow($row,'align="left" bgcolor="#336699" colspan="'.$c.'"');
-        //
         $tmp = $this->_componentes;
         $this->_componentes = array ();
         $this->_armarArraySecciones($tmp);
-        $this->_tabla->addRow($this->_componentes,'align="center" bgcolor="#FFFFFF"');
+        $tmp = $this->_tabla->addRow($this->_componentes,
+                'align="center" bgcolor="#CCCCCC" valign="top"');
+        $colspan = count($this->_componentes); 
+        $width = intval (100 / $colspan);
+        for ($col=0; $col < $colspan; $col++) {
+            $this->_tabla->updateCellAttributes($tmp, $col,
+                    'width="'.$width.'%"');
+        }
+
+        $imagen = new MECON_HTML_Image('/MECON/images/general_linea.gif', 
+                str_repeat('=', 108));
+        $tmp = $this->_tabla->addRow(array($imagen->toHtml()), 
+                'align="center"  height="1" colspan="'. $colspan .'"');
 
-        $colcount = $this->_tabla->getColCount();
-        $width = 100 / $colcount;
-        for ($col=0; $col < $colcount; $col++) {
-            $this->_tabla->updateColAttributes($col,'width="'.$width.'%"');
-        }        
         
+        //Agrego el titulo
+        $row = array($this->_armarEncabezado($titulo . 
+                    $this->_configuracion['subtitulo']));
+        $this->_tabla->addRow($row,
+                'align="left" bgcolor="#FFFFFF" colspan="'
+                . $colspan .'"');
+        $imagen = new MECON_HTML_Image('/MECON/images/general_linea2.gif',
+                str_repeat('.', 108), 'border="0" align="center"');
+        $this->_tabla->addRow(array ($imagen->toHtml()), 
+                'align="center" colspan="'. $colspan .'"');
+                   
         $tmp='';
+
+        $this->resultado[] = $this->_tabla;
         
-        //Agrego si corresponde el espacio al inicio
-        if ($this->_configuracion['espacios']) {
-            $row = array ('&nbsp;');
-            $this->_tabla->addRow($row,'align="left" bgcolor="#FFFFFF" colspan="'.$c.'"');
-        }
-        //
-        //AGREGO EL MENU VERTICAL
-        $TABLA = new HTML_Table('width=760 align="center" bgcolor="#FFFFFF" cellspacing="0" cellpadding="0" border="0"');
-        $row = array();
-        $tmp = '';
         if ($menu) {
-            if (is_object($menu)) {
-                if (method_exists($menu,'toHtml')) {
-                    $tmp.=$menu->toHtml();
+            $MENUVERTICAL = new HTML_Table ('width="760"');
+            $cuerpo = '';
+            if (is_array($body)) {
+                if ($this->_configuracion['espacios']) {
+                    $cuerpo.= '&nbsp;<BR>';
                 }
-                else {
-                    trigger_error('El metodo no existe!', E_USER_WARNING);
-                }                
-            }
-            else {
-                $tmp.=$menu;
-            }
-            $row[] = $tmp;
-        }
-        $tmp = ''; 
-        foreach ($body as $bod) {
-            if (is_object($bod)) {
-                if (method_exists($bod,'toHtml')) {
-                    $tmp.=$bod->toHtml();
+                foreach ($body as $bod) {
+                    if (is_object($bod)) {
+                        if (method_exists($bod,'toHtml')) {
+                            $cuerpo.= $bod->toHtml();
+                        } 
+                        else {
+                            trigger_error('El metodo no existe! - '. 
+                                    get_class($bod).'::toHtml()', 
+                                    E_USER_WARNING);
+                        }
+                    } 
+                    else {
+                        $cuerpo.= $bod;
+                    }
                 }
-                else {
-                    trigger_error('El metodo no existe! - '.get_class($bod).'::toHtml()', E_USER_WARNING);
-                }                
-            }
+            } 
             else {
-                $tmp.=$bod;
+                $cuerpo = $body;
             }
+            $MENUVERTICAL->addRow(array($menu, $cuerpo),
+                    'valign="top"');
+            $MENUVERTICAL->updateColAttributes(0, 'width="10%"');
+            $this->resultado[] = $MENUVERTICAL;
         }
-        $row[] = $tmp;
-        $TABLA->addRow($row);
-        $row = array ($TABLA->toHtml());
-        $this->_tabla->addRow($row,'align="center" bgcolor="#FFFFFF" colspan="'.$c.'"');
-        //Agrego si corresponde el espacio al final
-        if ($this->_configuracion['espacios']) {
-            $row = array ('&nbsp;');
-            $this->_tabla->addRow($row,'align="left" bgcolor="#FFFFFF" colspan="'.$c.'"');
+        else {
+            //Agrego si corresponde el espacio al inicio
+            if ($this->_configuracion['espacios']) {
+                $this->resultado[] = '&nbsp;<BR>';
+            }
+            $this->resultado = array_merge($this->resultado, $body);
         }
-        //
     }
-    // -X2C
-
-} // -X2C Class :MECON_Marco_MenuHorizontal
-
+}
 ?>
\ No newline at end of file