]> git.llucax.com Git - mecon/meconlib.git/blobdiff - lib/MLIB/HTML/Tabla.php
Se agrega a la clase MLIB_PDF_Tabla la posibilidad de agregar estilos nuevos para
[mecon/meconlib.git] / lib / MLIB / HTML / Tabla.php
index f5cdad0ff98daae9b6d8e12fb5d175a3ba11c349..d553b921ff75a8113a13e2b9671cdf71847b4754 100644 (file)
@@ -1,16 +1,15 @@
 <?php /* vim: set binary expandtab tabstop=4 shiftwidth=4 textwidth=80:
 -------------------------------------------------------------------------------
-                             Ministerio de Economía
-                                    meconlib
+                                    mlib
 -------------------------------------------------------------------------------
-This file is part of meconlib.
+This file is part of mlib.
 
-meconlib is free software; you can redistribute it and/or modify it under
+mlib is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free
 Software Foundation; either version 2 of the License, or (at your option)
 any later version.
 
-meconlib is distributed in the hope that it will be useful, but WITHOUT
+mlib is distributed in the hope that it will be useful, but WITHOUT
 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
  
@@ -25,14 +24,14 @@ $Id$
 -----------------------------------------------------------------------------*/
 
 require_once 'HTML/Table.php';
-require_once 'MECON/HTML/Image.php';
-require_once 'MECON/HTML/Link.php';
+require_once 'MLIB/HTML/Image.php';
+require_once 'MLIB/HTML/Link.php';
 
 /**
  * Libreria para le manejo de las tablas de los sistemas de intranet.
  *
  */
-class MECON_HTML_Tabla extends HTML_Table {
+class MLIB_HTML_Tabla extends HTML_Table {
     
     /**
      * Valores de Configuracion particular
@@ -78,7 +77,7 @@ class MECON_HTML_Tabla extends HTML_Table {
      * 
      * @access public
      */
-    function MECON_HTML_Tabla($attrs = null, $estilo = 'comun') {
+    function MLIB_HTML_Tabla($attrs = null, $estilo = 'comun') {
         // Obtengo los valores particulares de configuracion.
         $this->_conf = include(dirname(__FILE__) . '/Tabla/estilo_' . $estilo . '.php');
         // Seteo los atributos para la tabla
@@ -263,13 +262,6 @@ class MECON_HTML_Tabla extends HTML_Table {
             $attr = strtolower($attr);
             switch ($attr) {
                 // Estilos de celda
-                case 'comun':
-                case 'cabecera':
-                case 'titulo':
-                    $rta = array_merge($rta,
-                            $this->_conf['atributos']["celda_$attr"]);
-                    $rta[$attr] = $attr;
-                    break;
                 case 'align':
                 case 'valign':
                 case 'width':
@@ -291,12 +283,32 @@ class MECON_HTML_Tabla extends HTML_Table {
                 case 'th':
                     $rta[$attr] = '';
                     break;
+                //NO HTML STANDAR
+                //HAY QUE SACAR LAS LINEAS QUE CONTIENEN $rta[$attr] = $attr;
+                //que son reemplazadas por las que tienen $rta['mlib_style'] = $attr;
+                //El estilo mlib_style es utilizado internamente y no representa
+                //nada en el html generado.
+                //Ej: Sirve para poder asignar un estilo especifico a una celda
+                //para que MLIB_PDF_Tabla lo interprete.
+                //Esto nos da mas flexibilidad.
+                case 'mlib_style':
+                    $rta['mlib_style'] = $val;
+                    break;
+                case 'comun':
+                case 'cabecera':
+                case 'titulo':
+                    $rta = array_merge($rta,
+                            $this->_conf['atributos']["celda_$attr"]);
+                    $rta[$attr] = $attr;
+                    $rta['mlib_style'] = $attr;
+                    break;
                 case 'clara': 
                     $tmp = $this->_conf['atributos']['celda_comun'];
                     $tmp['bgcolor'] = $this->_conf['atributos']['celda_titulo']['bgcolor'];
                     $tmp['class'] = $this->_conf['atributos']['celda_titulo']['class'];
                     $rta = array_merge($rta, $tmp);
                     $rta[$attr] = $attr;
+                    $rta['mlib_style'] = $attr;
                     break;
                 case 'oscura':
                     $tmp = $this->_conf['atributos']['celda_comun'];
@@ -304,6 +316,7 @@ class MECON_HTML_Tabla extends HTML_Table {
                     $tmp['class'] = $this->_conf['atributos']['celda_cabecera']['class'];
                     $rta = array_merge($rta, $tmp);
                     $rta[$attr] = $attr;
+                    $rta['mlib_style'] = $attr;
                     break;
                 case 'comun_clara':
                     $tmp = $this->_conf['atributos']['celda_comun'];
@@ -311,6 +324,7 @@ class MECON_HTML_Tabla extends HTML_Table {
                     $rta = array_merge($rta,
                             $this->_conf['atributos']["celda_comun"]);
                     $rta[$attr] = $attr;
+                    $rta['mlib_style'] = $attr;
                     break;
                 default:
                     trigger_error("No se permite setear el atributo $attr", E_USER_ERROR);
@@ -423,17 +437,17 @@ class MECON_HTML_Tabla extends HTML_Table {
      *      $tabla->addLink('nuevos', 'nuevos.php');
      * }
      * $tabla->addLink('volver',
-     *      new MECON_HTML_Link('atras.php'));
+     *      new MLIB_HTML_Link('atras.php'));
      * $tabla->addLink('anterior',
-     *      new MECON_HTML_Link('previo.php', 'Persona Anterior'));
+     *      new MLIB_HTML_Link('previo.php', 'Persona Anterior'));
      * $tabla->addLink('siguiente',
-     *      new MECON_HTML_Link('previo.php', 'Siguiente persona',
+     *      new MLIB_HTML_Link('previo.php', 'Siguiente persona',
      *          array('pers' => 'prox')));
      * @endcode
      *
      * @param string $id Identificador del link predefinido. Puede ser 'volver',
      *                   'nuevo', 'nuevos', 'buscar', 'anterior' y 'siguiente'.
-     * @param MECON_HTML_Link $link Link a usar. Si no tiene contenidos, se pone
+     * @param MLIB_HTML_Link $link Link a usar. Si no tiene contenidos, se pone
      *                              uno por defecto. Si es null, se pone como
      *                              link la página actual.
      * 
@@ -443,11 +457,11 @@ class MECON_HTML_Tabla extends HTML_Table {
             $link = @$_SERVER['PHP_SELF'];
         }
         if (is_string($link)) {
-            $link = new MECON_HTML_Link($link, '');
+            $link = new MLIB_HTML_Link($link, '');
         }
         switch ($id) {
             case 'nuevo':
-                $img = new MECON_HTML_Image('/MECON/images/general_nuevo', ' >>');
+                $img = new MLIB_HTML_Image('/MLIB/images/general_nuevo', ' >>');
                 // Si no tiene titulo, le pone titulo por defecto.
                 if (!$link->getContents()) {
                     $link->setContents('Nuevo');
@@ -456,7 +470,7 @@ class MECON_HTML_Tabla extends HTML_Table {
                 $this->updateCabecera($link, 'derecha');
                 break;
             case 'nuevos':
-                $img = new MECON_HTML_Image('/MECON/images/general_muchos_nuevo', ' >>');
+                $img = new MLIB_HTML_Image('/MLIB/images/general_muchos_nuevo', ' >>');
                 // Si no tiene titulo, le pone titulo por defecto.
                 if (!$link->getContents()) {
                     $link->setContents('Nuevos');
@@ -465,7 +479,7 @@ class MECON_HTML_Tabla extends HTML_Table {
                 $this->updateCabecera($link, 'derecha');
                 break;
             case 'buscar':
-                $img = new MECON_HTML_Image('/MECON/images/general_lupa', ' ?>');
+                $img = new MLIB_HTML_Image('/MLIB/images/general_lupa', ' ?>');
                 // Si no tiene titulo, le pone titulo por defecto.
                 if (!$link->getContents()) {
                     $link->setContents('Buscar');
@@ -474,7 +488,7 @@ class MECON_HTML_Tabla extends HTML_Table {
                 $this->updateCabecera($link, 'derecha');
                 break;
             case 'siguiente':
-                $img = new MECON_HTML_Image('/MECON/images/general_posterior', ' >>');
+                $img = new MLIB_HTML_Image('/MLIB/images/general_posterior', ' >>');
                 // Si no tiene titulo, le pone titulo por defecto.
                 if (!$link->getContents()) {
                     $link->setContents('Siguiente');
@@ -483,7 +497,7 @@ class MECON_HTML_Tabla extends HTML_Table {
                 $this->updatePie($link, 'derecha');
                 break;
             case 'volver':
-                $img = new MECON_HTML_Image('/MECON/images/general_anterior', '<< ');
+                $img = new MLIB_HTML_Image('/MLIB/images/general_anterior', '<< ');
                 // Si no tiene titulo, le pone titulo por defecto.
                 $cont = $link->getContents() ? $link->getContents() : 'Volver';
                 $link->setContents($img);
@@ -491,7 +505,7 @@ class MECON_HTML_Tabla extends HTML_Table {
                 $this->updateCabecera($link, 'izquierda');
                 break;
             case 'anterior':
-                $img = new MECON_HTML_Image('/MECON/images/general_anterior', '<< ');
+                $img = new MLIB_HTML_Image('/MLIB/images/general_anterior', '<< ');
                 // Si no tiene titulo, le pone titulo por defecto.
                 $cont = $link->getContents() ? $link->getContents() : 'Anterior';
                 $link->setContents($img);