]> git.llucax.com Git - mecon/meconlib.git/blobdiff - HTML/php/Tabla.php
- Agregue la funcion getValue a mdate
[mecon/meconlib.git] / HTML / php / Tabla.php
index ae441c8ae1d2210847c6518985ba7851b5ea3898..30ab34a32611badb7e02865a09e43e78e9a9d469 100644 (file)
@@ -84,7 +84,6 @@ class Tabla extends HTML_Table {
         //inserciones.
     }    
 
-
     /**                 
      * Agrega una fila del tipo Cabecera
      *
@@ -129,7 +128,6 @@ class Tabla extends HTML_Table {
         return $this->addRow($contenido, 'comun');
     }
 
-
     /**                 
      * Modifica el atributo rowSpan a la celda pasada por parametro
      *
@@ -175,7 +173,7 @@ class Tabla extends HTML_Table {
         return $this->updateCellAttributes($fila, $columna, 'align="'.$valor.'"');
     }
 
-    /**                 
+    /**
      * Setea una columna como del tipo cabecera    
      *
      * @param int $columna
@@ -265,7 +263,8 @@ class Tabla extends HTML_Table {
             $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 {
@@ -275,7 +274,6 @@ class Tabla extends HTML_Table {
         return $result;
     }
 
-    
     /**
      * Cambia las propiedades de una celda
      *
@@ -291,7 +289,7 @@ class Tabla extends HTML_Table {
      */
     function updateCellAttributes($row, $col, $attrs)
     {
-        return parent::updateCellAttributes($row, $col, $this->_attrToString($attrs));
+        return parent::updateCellAttributes($row, $col, $this->_translateAttributes($attrs));
     }
 
     /**
@@ -309,7 +307,7 @@ class Tabla extends HTML_Table {
      */
     function setCellAttributes($row, $col, $attrs)
     {
-        return parent::setCellAttributes($row, $col, $this->_attrToString($attrs));
+        return parent::setCellAttributes($row, $col, $this->_translateAttributes($attrs));
     }
 
     /**
@@ -327,7 +325,7 @@ class Tabla extends HTML_Table {
      */
     function addRow($content, $attrs = 'comun')
     {
-        return parent::addRow($content,$attrs);
+        return parent::addRow($content, $attrs);
     }
     
     /**
@@ -341,26 +339,26 @@ class Tabla extends HTML_Table {
      * @return string
      * @access private
      */
-    function _attrToString($attrs) 
+    function _translateAttributes($attrs) 
     {
-        $rta = '';
         if (!$attrs) {
             return array();
         }
         if (is_string($attrs)) {
             $attrs = $this->_parseAttributes($attrs);
         }
+        #$rta = array();
+        $rta = $this->_conf['atributos']['celda_comun'];
+        #$sin_estilo = true;
         foreach ($attrs as $attr => $val) {
             $attr = strtolower($attr);
             switch ($attr) {
+                // Estilos de celda
                 case 'comun':
-                    $rta.=$this->_conf['atributos']['celda_comun'];
-                    break;
                 case 'cabecera':
-                    $rta.=$this->_conf['atributos']['celda_cabecera'];
-                    break;
                 case 'titulo':
-                    $rta.=$this->_conf['atributos']['celda_titulo'];
+                    #$sin_estilo = false;
+                    $rta = array_merge($rta, $this->_conf['atributos']["celda_$attr"]);
                     break;
                 case 'align':
                 case 'valign':
@@ -369,25 +367,31 @@ class Tabla extends HTML_Table {
                 case 'rowspan':
                 case 'colspan':
                 case 'bgcolor':
-                case 'cellspacing':
-                case 'cellpadding':
                 case 'class':
                 case 'border':
-                   $rta.="$attr=\"$val\"";
+                case 'cellspacing':
+                case 'cellpadding':
+                    $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 puede setear el atributo $attr", E_USER_ERROR);
+                    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;
     }
-}  
+
+}
+
 ?>