Bloques

Helper trae un nuevo manejo de bloques, que es muy rapido de utilizar, compuesto de tres funciones

Vista->startBlock(nombre)

Esta función reemplaza al set_block de Template, su funcionamiento es igual.

El parámetro nombre es el nombre del bloque definido dentro del template, por ejemplo:

$vista->startBlock("items");

Vista->parseBlock(nombre)

Esta función reemplaza al parse de Template, su funcionamiento es igual para bloques.

El parámetro nombre es el nombre del bloque definido dentro del template, por ejemplo:

$vista->parseBlock("items");

Vista->makeBlock(valores, nombre)

Crea un bloque en la Vista a partir del arreglo valores donde nombre es el nombre del bloque. También abre el bloque, por lo tanto no necesita de startBlock() ni de parseBlock(). $users[0]['nombre'] = "Agustin Bosso";
$users[1]['nombre'] = "Pablo Oneto";
$users[2]['nombre'] = "Juan Miranda";

$vista->makeBlock($users,"Usuarios");
Este ejemplo parsea 3 usuarios dentro del bloque "Usuarios".

 

Una funcionalidad muy útil, es parsear resultados directamente desde la BD.

$users = $db->query_array("SELECT nombre FROM users",__FILE__,__LINE__);

$vista->makeBlock($users,"Usuarios");

Si valores contiene una sola dimensión, se parsea en la variable "_value", por ejemplo:

$users[] = "Pablo";
$users[] = "Juan";
$vista->makeBlock($users,"Usuarios"); // listara en {_value} "Pablo" y luego "Juan"

Vista->makeBlock(valores, nombre, [translate])

Si se especifica un translate (mayor a 0), makeBlock intentará parsear este valor en una variable llamada "_translate". Por cada valores la variable translate avanza en 1.

Por ejemplo:

$users = $db->query_array("SELECT * FROM atleta ORDER BY tiempo ASC LIMT 0,3",__FILE__,__LINE__);

$vista->makeBlock($users,"Usuarios",100); // el idioma 100 equivale a "Medalla de Oro"; el 101 es "Medalla de Plata"; el 102 es "Medalla de Bronce"

Este ejemplo pruduce una lista que distingue a los medallistas de una competencia.