2 // vim: set binary noeol et sw=4 sts=4 :
5 // Lucarella, Schein, Arena
7 // Creado: Leandro Lucarella (lun may 2 15:36:09 ART 2005)
13 $args = func_get_args();
15 call_user_func_array('printf', $args);
19 * Listador genérico de ítems. Usa las variables de GET lista_from.
21 function listar($item, $link = '', $caption = null, $summary = null, $cant = 15)
24 $total = $item->getTotal();
27 echo error('No se encontraron ' . $item->getObjNamePl());
30 $from = intval(@$_GET["lista_from"]);
31 $c = min($total - $from, $cant);
33 if (is_null($summary)) $summary = 'Listado de ' . $item->getObjNamePl();
34 if (is_null($caption)) $caption = $summary;
35 printfl('<table border="1" summary="%s">', $summary);
36 if ($caption) printfl(' <caption>%s</caption>', $caption);
39 foreach ($item->getHeaderArray() as $header)
40 printfl(' <th>%s</th>', $header);
44 while ($item->next() and $c--)
47 foreach ($item->asArray() as $i) printfl(' <td>%s</td>', $i);
52 printfl('<table summary="Paginador" border="0"><tr>');
53 $pags = ceil($total / $cant);
54 if ($pags == 1) return; // Si tengo una sóla página, para qué el paginador?
55 for ($i = 0; $i < $pags; ++$i)
57 printfl('<td><a href="%s?lista_from=%d">%s</a></td>', $link, $i * $cant, $i + 1);
59 printfl('</tr></table>');