]> git.llucax.com Git - mecon/meconlib.git/blobdiff - lib/MECON/HTML/Tabla.php
El contenido no se agrega mas como referencia.
[mecon/meconlib.git] / lib / MECON / HTML / Tabla.php
index 3f31b1b2f482c001c546fea608ab8febe4b0b2b7..14147b0643f8d272576d06a82e8e1ff581d0d449 100644 (file)
@@ -1,65 +1,69 @@
-<?php
-// vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
-// +--------------------------------------------------------------------+
-// |                          HTML - TABLE                              |
-// +--------------------------------------------------------------------+
-// |   Libreria para la estandarizacion de los elementos html de los    |
-// |                         de la Intranet                             |
-// |                      Ministerio de Economía                        |
-// +--------------------------------------------------------------------+
-// | Creado: fri mar 21 ART 2003                                        |
-// | Autor:  Martin Marrese <mmarre@mecon.gov.ar>                       |
-// +--------------------------------------------------------------------+
-// 
-// $Id$
-// 
-// $URL$
-// $Rev$
-// $Date$
-// $Author$
+<?php /* vim: set binary expandtab tabstop=4 shiftwidth=4 textwidth=80:
+-------------------------------------------------------------------------------
+                             Ministerio de Economía
+                                    meconlib
+-------------------------------------------------------------------------------
+This file is part of meconlib.
+
+meconlib 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
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+You should have received a copy of the GNU General Public License; if not,
+write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
+Boston, MA  02111-1307  USA
+-------------------------------------------------------------------------------
+Creado: fri mar 21 ART 2003
+Autor:  Martin Marrese <mmarre@mecon.gov.ar>
+-------------------------------------------------------------------------------
+$Id$
+-----------------------------------------------------------------------------*/
 
 require_once 'HTML/Table.php';
 
 /**
- * Manejo de tablas.
- *
  * Libreria para le manejo de las tablas de los sistemas de intranet.
  *
- * @version $Rev$
- * @author  $Author$
  */
 
-class Tabla extends HTML_Table {
-
+class MECON_HTML_Tabla extends HTML_Table {
+    
     /**
      * Valores de Configuracion particular
      *
-     * @var array
+     * @var array() $conf
+     * @access protected
      */
     var $_conf;
 
     /**
      * Atributos de las tablas.
      *
-     * @var array
+     * @var array() attrs
+     * @access protected
      */
     var $_attrs;
 
     /**
      * Constructor. 
-     *
      * Puede recibir como parametro un string con los atributos que se 
      * quieren dar a la tabla en cuestion. Estos atributos estan
      * seteados por default segun el archivo de configuracion.
+     * Ademas puede recibir la indicacion de algun estilo en particular.
      *
-     * @param $atributos Atributos diferentes a los estandares para la
-     * tabla
+     * @param mixed $atributos Atributos diferentes a los estandares para la tabla
+     * @param string $estilo Tipo de tabla
      * 
      * @access public
      */
-    function Tabla($attrs = null
+    function MECON_HTML_Tabla($attrs = null, $estilo = 'comun'
     {
-        $this->_conf = include 'Tabla/conf_Tabla.php'; // Obtengo los valores particulares de configuracion
+        $this->_conf = include 'MECON/HTML/Tabla/estilo_'.$estilo.'.php'; // Obtengo los valores particulares de configuracion
         // Seteo los atributos para la tabla
         $this->_attrs = $this->_conf['atributos']['tabla_comun'];
         //Genero el objeto HTML_Table
@@ -84,19 +88,16 @@ class Tabla extends HTML_Table {
     }    
 
     /**                 
-     * Agrega una fila del tipo Cabecera
-     *
-     * Agrega una fila del tipo cabecera, tomando colores y demas del  
+     * Agrega una fila del tipo cabecera tomando colores y demas del  
      * archivo de configuracion. Recibe como parametro un array con 
      * los datos a incluir en la linea. Agrega tantas columnas como
      * elementos tenga el array. Si no recibe parametro alguno, 
      * inserta una fila en blanco. Devuelve el identificador de la
      * fila en donde inserto los datos.
      *
-     * @param $contenido Contenido de la fila
+     * @param array() $contenido Contenido de la fila
      *
      * @return int Identificador de Linea
-     * 
      * @access public
      * @deprecated
      */
@@ -106,8 +107,6 @@ class Tabla extends HTML_Table {
     }
 
     /**                 
-     * Agrega una fila del tipo Comun
-     *
      * Agrega una fila del tipo comun, tomando colores y demas del  
      * archivo de configuracion. Recibe como parametro un array con 
      * los datos a incluir en la linea. Agrega tantas columnas como
@@ -115,7 +114,7 @@ class Tabla extends HTML_Table {
      * inserta una fila en blanco. Devuelve el identificador de la
      * fila en donde inserto los datos.
      *
-     * @param $contenido Contenido de la fila
+     * @param array() $contenido Contenido de la fila
      *
      * @return int Identificador de Linea
      * 
@@ -130,9 +129,9 @@ class Tabla extends HTML_Table {
     /**                 
      * Modifica el atributo rowSpan a la celda pasada por parametro
      *
-     * @param int $fila
-     * @param int $columna
-     * @param int $valor
+     * @param int $fila    Identificador de la fila que se quiere modificar
+     * @param int $columna Identificador de la columna que se quiere modificar
+     * @param int $valor   Atributo a modificar
      * 
      * @access public
      * @deprecated
@@ -145,9 +144,9 @@ class Tabla extends HTML_Table {
     /**                 
      * Modifica el atributo colSpan a la celda pasada por parametro
      *
-     * @param int $fila
-     * @param int $columna
-     * @param int $valor
+     * @param int $fila    Identificador de la fila que se quiere modificar    
+     * @param int $columna Identificador de la columna que se quiere modificar
+     * @param int $valor   Atributo a modificar                               
      * 
      * @access public
      * @deprecated
@@ -160,9 +159,9 @@ class Tabla extends HTML_Table {
     /**                 
      * Modifica el atributo aling de la celda pasada por parametro
      *
-     * @param int $fila
-     * @param int $columna
-     * @param string $valor (left, center, right...)
+     * @param int $fila     Identificador de la fila que se quiere modificar      
+     * @param int $columna  Identificador de la columna que se quiere modificar
+     * @param string $valor Atributo a modificar                               
      * 
      * @access public
      * @deprecated
@@ -175,7 +174,7 @@ class Tabla extends HTML_Table {
     /**
      * Setea una columna como del tipo cabecera    
      *
-     * @param int $columna
+     * @param int $columna Identificador de la columna que se quiere modificar
      * 
      * @access public
      * @deprecated
@@ -188,7 +187,7 @@ class Tabla extends HTML_Table {
     /**                 
      * Setea una columna como del tipo titulo
      *
-     * @param int $columna
+     * @param int $columna Identificador de la columna que se quiere modificar
      * 
      * @access public
      * @deprecated
@@ -201,8 +200,8 @@ class Tabla extends HTML_Table {
     /**                 
      * Alinea una columna entera  
      *
-     * @param int $columna
-     * @param string $valor
+     * @param int $columna Identificador de la columna que se quiere modificar
+     * @param string $valor Valor
      * 
      * @access public
      * @deprecated
@@ -215,8 +214,8 @@ class Tabla extends HTML_Table {
     /**                 
      * Cambia el tamanio de una columna entera  
      *
-     * @param int $columna
-     * @param string $valor
+     * @param int $columna  Identificadore de la columna que se quiere modificar
+     * @param string $valor Valor
      * 
      * @access public
      * @deprecated
@@ -229,9 +228,9 @@ class Tabla extends HTML_Table {
     /**                 
      * Cambia el color de fondo de una celda  
      *
-     * @param int $fila
-     * @param int $columna
-     * @param string $valor
+     * @param int $fila     Identificador de la fila que se quiere modificar    
+     * @param int $columna  Identificador de la columna que se quiere modificar
+     * @param string $valor Atributo a modificar                               
      *
      * @access public
      * @deprecated
@@ -249,7 +248,7 @@ class Tabla extends HTML_Table {
      * Si $simple es falso, devuelve el html comun y corriente (con 2
      * tablas), si es false devuelve una tabla sola.
      *
-     * @param bool $simple
+     * @param bool $simple Tipo de tabla que se quiere recibir.
      *
      * @return string Html
      * 
@@ -258,16 +257,16 @@ class Tabla extends HTML_Table {
     function toHtml($simple = 0)
     {
         // Agregar la tabla de fondo.
-        if ($simple == 0) {
-            $tmp = $this->_parseAttributes($this->_conf['atributos']['tabla_contenedora']);
-            $tmp['width'] = $this->_attrs['width'];
-            $tabla_externa =  new HTML_Table($tmp);
-            $tabla_externa->setCellContents(0, 0, parent::toHtml());
-            $tabla_externa->setCellAttributes(0, 0, $this->_conf['atributos']['celda_contenedora']);
-            $result = $tabla_externa->toHtml();    
-        }
-        else {
+        if ($simple) {
             $result = parent::toHtml();
+        } else {
+            $contenedora = $this->_conf['atributos']['tabla_contenedora'];
+            $contenedora['width'] = $this->getAttribute('width');
+            $this->updateAttributes(array('width' => '100%'));
+            $tabla_externa =  new HTML_Table($contenedora);
+            $tabla_externa->addRow(array(parent::toHtml()),
+                $this->_conf['atributos']['celda_contenedora']);
+            $result = $tabla_externa->toHtml();    
         }
 
         return $result;
@@ -280,9 +279,9 @@ class Tabla extends HTML_Table {
      * asociativo, se setean los atributos representados por las claves
      * con los valores.
      *
-     * @param int $row
-     * @param int $col
-     * @param mixed $attrs
+     * @param int $row     Identificador de la fila que se quiere modificar    
+     * @param int $col     Identificador de la columna que se quiere modificar
+     * @param mixed $attrs Atributo a modificar                               
      *
      * @access public
      */
@@ -298,9 +297,9 @@ class Tabla extends HTML_Table {
      * asociativo, se setean los atributos representados por las claves
      * con los valores.
      *
-     * @param int $row
-     * @param int $col
-     * @param mixed $attrs
+     * @param int $row     Identificador de la fila que se quiere modificar     
+     * @param int $col     Identificador de la columna que se quiere modificar
+     * @param mixed $attrs Atributo a modificar                               
      *
      * @access public
      */
@@ -315,10 +314,10 @@ class Tabla extends HTML_Table {
      * Agrega una fila. El contenido es el que viene representado por 
      * el array $content. Recibe los atributos en la variable $attrs
      *
-     * @param mixed $content
-     * @param mixed $attrs
+     * @param mixed $content Contenido
+     * @param mixed $attrs Atributos
      *
-     * @return int $rowId
+     * @return int $rowId Identificador de la fila
      *
      * @access public
      */
@@ -333,7 +332,7 @@ class Tabla extends HTML_Table {
      * Convierte un atributo HTML al string para pasar a los metodos de HTML_Table
      * Recibe en $attrs los atributos a modificar.
      *
-     * @param string $attrs
+     * @param string $attrs Atributos
      *
      * @return string
      * @access private
@@ -370,13 +369,13 @@ class Tabla extends HTML_Table {
                 case 'border':
                 case 'cellspacing':
                 case 'cellpadding':
+                case 'nowrap':
                     $rta[$attr] = $val;
                     break;
                 case 'spacing':
                 case 'padding':
                     $rta["cell$attr"] = $val;
                     break;
-                case 'nowrap':
                 case 'th':
                     $rta[$attr] = '';
                     break;