*
* @access public
*/
- function Tabla($attrs = '')
+ function Tabla($attrs = null)
{
$this->_conf = include 'Tabla/conf_Tabla.php'; // Obtengo los valores particulares de configuracion
// Seteo los atributos para la tabla
- $this->_attrs = $this->_parseAttributes($this->_conf['atributos']['tabla_comun']);
+ $this->_attrs = $this->_conf['atributos']['tabla_comun'];
//Genero el objeto HTML_Table
- if ($attrs != '') {
- $tmp = $this->_parseAttributes($attrs);
- if (isset($tmp['width'])) {
- $this->_attrs['width'] = $tmp['width'];
+ if (is_string($attrs)) {
+ $attrs = $this->_parseAttributes($attrs);
+ }
+ if (is_array($attrs)) {
+ if (isset($attrs['width'])) {
+ $this->_attrs['width'] = $attrs['width'];
}
- if (isset($tmp['bgcolor'])) {
- $this->_attrs['bgcolor'] = $tmp['bgcolor'];
+ if (isset($attrs['bgcolor'])) {
+ $this->_attrs['bgcolor'] = $attrs['bgcolor'];
}
- if (isset($tmp['cellspacing'])) {
- $this->_attrs['cellspacing'] = $tmp['cellspacing'];
+ if (isset($attrs['cellspacing'])) {
+ $this->_attrs['cellspacing'] = $attrs['cellspacing'];
}
- if (isset($tmp['cellpadding'])) {
- $this->_attrs['cellpadding'] = $tmp['cellpadding'];
+ if (isset($attrs['cellpadding'])) {
+ $this->_attrs['cellpadding'] = $attrs['cellpadding'];
}
}
$this->HTML_Table($this->_attrs);
- //Modifico los atributos de todas las tablas
- //Hay que encontrar o hacer una funcion que setee los atributos para las futuras
- //inserciones.
}
/**
$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(),$this->_conf['atributos']['celda_comun']);
+ $tabla_externa->setCellContents(0, 0, parent::toHtml());
+ $tabla_externa->setCellAttributes(0, 0, $this->_conf['atributos']['celda_comun']);
$result = $tabla_externa->toHtml();
}
else {
if (is_string($attrs)) {
$attrs = $this->_parseAttributes($attrs);
}
- $rta = '';
- $sin_estilo = true;
+ #$rta = array();
+ $rta = $this->_conf['atributos']['celda_comun'];
+ #$sin_estilo = true;
foreach ($attrs as $attr => $val) {
$attr = strtolower($attr);
switch ($attr) {
case 'comun':
case 'cabecera':
case 'titulo':
- $sin_estilo = false;
- $rta .= $this->_conf['atributos']["celda_$attr"];
+ #$sin_estilo = false;
+ $rta = array_merge($rta, $this->_conf['atributos']["celda_$attr"]);
break;
case 'align':
case 'valign':
case 'border':
case 'cellspacing':
case 'cellpadding':
- $rta .= "$attr=\"$val\"";
+ $rta[$attr] = $val;
break;
case 'spacing':
case 'padding':
- $rta .= "cell$attr=\"$val\"";
+ $rta["cell$attr"] = $val;
break;
case 'nowrap':
case 'th':
- $rta .= $attr;
+ $rta[$attr] = '';
break;
default:
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'];
- }
+ #if ($sin_estilo) {
+ #$rta = $this->_conf['atributos']['celda_comun'];
+ #}
return $rta;
}