Helpers

Los Helpers son ayudas proporcionadas por la clase View (o sea las vistas) para escribir codigo HTML5 o repetitivo a traves de propiedades sin preocuparnos nosotros por mantener la sintaxis correcta, de eso se encarga la clase que se indique.
El sistema dispone de los siguientes:
  • Audio
  • Css
  • HighlightNum
  • Img
  • Input
  • Js
  • Label
  • Link
  • PhpCode
  • UtlBase
Estas se iran extendiendo con el correr de las versiones de Agenor.
Cada uno de estos Helpers posen propiedades comunes y sus propiedades caracteristicas que se van ingresando como metodos los cuales pueden encadenarse puesto que se realizaron como interfaz fluida.

Metodos de Uso

Se pueden usar desde dos lugares, ellos son las clases adapters o desde las plantillas de vista.
1> Desde las Vistas:
El uso desde las vistas requiere menos codificacion y es mas directa dado que se ejecuta directamente en la plantilla phtml.
Para solicitar el helper desde la vista (plantilla phtml) debemos hacer:
<?php
echo $this->helper('helper')->propiedad1('propiedad1')->.....->propiedadn('propiedadn')->render(); ?>", true);
La primera parte $this->helper('helper), lo que hace es llamar al metodo helper de la vista(Objeto View) y le pasa un parametro que es el nombre del helper a usar, que puede ser cualquiera de los mencionados en el primer cuadro, como this->helper, retorna un objeto del tipo solicitado podemos ya encadenar las propiedades, entonces ->propiedad1('propiedad1') lo que hace es darle valor a una propiedad y asi podremos encadenar las propiedaes pues se hizo uso de las interfaces fluidas. Una vez que terminamos de dar las propiedades llamamos a ->render(); que realiza la salida en la plantilla.

2> Desde el Adaptador:
Este metodo requiere codificar tanto del lado de la vista (minimo), como desde el adaptador, esta forma es mas flexible si tenemos que cambiar el helper segun alguna condicionante del sistema.
En la vista archivo phtml:
<?php echo $this->ayuda; ?>
Como se ve en la plantilla solo mostramos una variable, la cual va a ser cargada desde el adaptador.
En el adaptador:
<?php
$this
->_view->ayuda $this->_view->helper('helper')->propiedad1('propiedad1')->.....->propiedadn('propiedadn')->render();
La parte que antecede al igual $this->_view->ayuda simplemente le dice a la vista que vamos a cargar la variable ayuda con lo que precede al simbolo de igual. En la segunda parte solo cambia la forma de llamar al helper, puesto que el acceso a la vista desde el adaptador es $this->_view, con eso obtenemos la instancia de la vista, luego llamamos el metodo helper y pasamsos las propiedades como en el primer caso.

Consideraciones

La desventaja de usar los helpers es que nuestros IDE'S no reconocen sus metodos, por lo cual solo para los Helpers del sistema se creo una clase que nos da el helper y permite a nuestro IDE favorito seguir las propiedades del mismo.

<?php echo \agenor\helpers\HTML5::Helper()->.... ?>

El resto de la codificacion es igual que en las anteriores formas de llamar a los mismos.