]> git.llucax.com Git - mecon/meconlib.git/blobdiff - lib/MECON/HTML/QuickForm.php
Se modifico el Renderer de MECON. Ahora se puede llamar a la funcion $FORM->renderer...
[mecon/meconlib.git] / lib / MECON / HTML / QuickForm.php
index a6310db17022be65dcaec8fa827d5368bb8473ce..be8a7f9e22caa44658c2072250475ac6118bbc11 100644 (file)
@@ -26,14 +26,15 @@ $Id$
 
 require_once 'HTML/QuickForm.php';
 require_once 'MECON/HTML/QuickForm/Renderer/Tabla.php';
-require_once 'MECON/HTML/QuickForm/Renderer/Tabla_Servicios.php';
 
 /**
  * QuickForm de uso general del MECON.
  */
 class MECON_HTML_QuickForm extends HTML_QuickForm {
+    
     var $_rendererOpts = array();
-    var $_renderer = 'MECON_HTML_QuickForm_Renderer_Tabla';
+    var $renderer;
+    
     function MECON_HTML_QuickForm($formName='', $method='post', $action='', $target='_self', $attributes=null)
     {
         parent::HTML_QuickForm($formName, $method, $action, $target, $attributes);
@@ -41,6 +42,9 @@ class MECON_HTML_QuickForm extends HTML_QuickForm {
         $this->registerRule('fecha', 'function', 'validate', 'HTML_QuickForm_mdate');
         $this->setRequiredNote('<FONT color="red">*</FONT> indica un campo obligatorio');
         $this->setJsWarnings('Hay errores en el formulario:', 'Por favor corríjalos antes de continuar.');
+
+        $this->renderer =& new MECON_HTML_QuickForm_Renderer_Tabla($this->_rendererOpts);
+        
     }
     function addRule($element, $message, $type, $format='', $validation='client', $reset = false, $force = false)
     {
@@ -50,37 +54,39 @@ class MECON_HTML_QuickForm extends HTML_QuickForm {
     {
         parent::addGroupRule($group, $arg1, $type, $format, $howmany, $validation);
     }
-    function toHtml() {
-
-        switch ($this->_renderer) {
-            case 'MECON_HTML_QuickForm_Renderer_Tabla': 
-                $renderer =& new MECON_HTML_QuickForm_Renderer_Tabla($this->_rendererOpts);
-                break;
-            case 'MECON_HTML_QuickForm_Renderer_Tabla_Servicios': 
-                $renderer =& new MECON_HTML_QuickForm_Renderer_Tabla_Servicios($this->_rendererOpts); 
-                break;
-        }
-        
-        $this->accept($renderer);
-        return $renderer->toHtml();
+    function toHtml() 
+    {
+        $this->accept($this->renderer);
+        return $this->renderer->toHtml();
     }
+
+    /**
+     * TODO aclarar que usar
+     * $FORM->renderer->updateAttributes()
+     *
+     * @deprecated 
+     */
     function setRendererOpts($opts) {
-        $this->_rendererOpts = $opts;
+        $this->renderer->setAttributes($opts);
     }
-    function getRendererOpts($opts) {
-        return $this->_rendererOpts;;
+    /**
+     * TODO aclarar que usar
+     * $FORM->renderer->updateAttributes()
+     *
+     * @deprecated 
+     */
+    function getRendererOpts() {
+        return $this->renderer->getAttributes();
     }
+    /**
+     * TODO aclarar que usar
+     * $FORM->renderer->updateAttributes()
+     *
+     * @deprecated 
+     */
     function updateRendererOpts($opts) {
-        $this->_rendererOpts = array_merge($this->_rendererOpts, $opts);
+        $this->renderer->updateAttributes($opts);
     }
-    
-    //AGREGADO POR mmarre PARA PODER DECIDIR CUAL DE NUESTROS RENDERES UTILIZAR
-    //Por defecto utiliza el renderer que deja las tablas como estaban en un
-    //principio.
-    function setRenderer($renderer = 'MECON_HTML_QuickForm_Renderer_Tabla') {
-        $this->_renderer = $renderer;
-    }
-
 }
 
 ?>
\ No newline at end of file