X-Git-Url: https://git.llucax.com/mecon/meconlib.git/blobdiff_plain/71acf4950362871b3ad6bc168d08db422edf0509..83f5ca1886eca8af58874f3a9967ab1d5dbf5b18:/lib/MECON/HTML/Tabla.php diff --git a/lib/MECON/HTML/Tabla.php b/lib/MECON/HTML/Tabla.php index ca72590..035e4f4 100644 --- a/lib/MECON/HTML/Tabla.php +++ b/lib/MECON/HTML/Tabla.php @@ -27,45 +27,43 @@ $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 'MECON/HTML/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 @@ -90,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 */ @@ -112,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 @@ -121,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 * @@ -136,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 @@ -151,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 @@ -166,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 @@ -181,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 @@ -194,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 @@ -207,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 @@ -221,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 @@ -235,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 @@ -255,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 * @@ -286,15 +279,15 @@ 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 */ function updateCellAttributes($row, $col, $attrs) { - return parent::updateCellAttributes($row, $col, $this->_translateAttributes($attrs)); + return parent::updateCellAttributes($row, $col, $this->_translateAttributes($attrs, false)); } /** @@ -304,15 +297,15 @@ 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 */ function setCellAttributes($row, $col, $attrs) { - return parent::setCellAttributes($row, $col, $this->_translateAttributes($attrs)); + return parent::setCellAttributes($row, $col, $this->_translateAttributes($attrs, true)); } /** @@ -321,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 */ @@ -339,12 +332,13 @@ 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 mixed $attrs Atributos. + * @param bool $isSet Indica si hay que setear. * - * @return string + * @return array * @access private */ - function _translateAttributes($attrs) + function _translateAttributes($attrs, $isSet) { if (!$attrs) { return array(); @@ -352,9 +346,11 @@ class Tabla extends HTML_Table { if (is_string($attrs)) { $attrs = $this->_parseAttributes($attrs); } - #$rta = array(); - $rta = $this->_conf['atributos']['celda_comun']; - #$sin_estilo = true; + if ($isSet) { + $rta = $this->_conf['atributos']['celda_comun']; + } else { + $rta = array(); + } foreach ($attrs as $attr => $val) { $attr = strtolower($attr); switch ($attr) { @@ -362,7 +358,6 @@ class Tabla extends HTML_Table { case 'comun': case 'cabecera': case 'titulo': - #$sin_estilo = false; $rta = array_merge($rta, $this->_conf['atributos']["celda_$attr"]); break; case 'align': @@ -376,13 +371,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; @@ -390,10 +385,6 @@ class Tabla extends HTML_Table { trigger_error("No se permite setear el atributo $attr", E_USER_ERROR); } } - // Si no tiene estilo, agrego estilo comun. - #if ($sin_estilo) { - #$rta = $this->_conf['atributos']['celda_comun']; - #} return $rta; }