-----------------------------------------------------------------------------*/
require_once 'HTML/Table.php';
+require_once 'MECON/HTML/Image.php';
/**
* Libreria para le manejo de las tablas de los sistemas de intranet.
}
}
+ /**
+ * Agrega un link predefinido a la cabecera o pie de la tabla.
+ * Ejemplo:
+ * @code
+ * $tabla->addLink('nuevo');
+ * $tabla->addLink('volver', new MECON_HTML_Link('atras.php'));
+ * $tabla->addLink('anterior', new MECON_HTML_Link('previo.php', 'Persona Anterior'));
+ * $tabla->addLink('siguiente', new MECON_HTML_Link('previo.php', 'Siguiente persona', array('pers' => 'prox')));
+ * @endcode
+ *
+ * @param string $id Identificador del link predefinido. Puede ser 'volver',
+ * 'nuevo', 'nuevos', 'anterior' y 'siguiente'.
+ * @param MECON_HTML_Link $link Link a usar. Si no tiene contenidos, se pone
+ * uno por defecto. Si es null, se pone como
+ * link la página actual.
+ *
+ */
+ function addLink($id, $link = null) {
+ if (!$link) {
+ $link = new MECON_HTML_Link($_SERVER['PHP_SELF'], '');
+ }
+ switch ($id) {
+ case 'nuevo':
+ $img = new MECON_HTML_Image('/MECON/images/general_nuevo', '-<');
+ // Si no tiene titulo, le pone titulo por defecto.
+ if (!$link->getContents()) {
+ $link->setContents('Nuevo');
+ }
+ $link->addContents($img);
+ $this->updateCabecera($link, 'derecha');
+ break;
+ case 'nuevos':
+ $img = new MECON_HTML_Image('/MECON/images/general_muchos_nuevo', '-<');
+ // Si no tiene titulo, le pone titulo por defecto.
+ if (!$link->getContents()) {
+ $link->setContents('Nuevos');
+ }
+ $link->addContents($img);
+ $this->updateCabecera($link, 'derecha');
+ break;
+ case 'siguiente':
+ $img = new MECON_HTML_Image('/MECON/images/general_posterior', '-<');
+ // Si no tiene titulo, le pone titulo por defecto.
+ if (!$link->getContents()) {
+ $link->setContents('Siguiente');
+ }
+ $link->addContents($img);
+ $this->updatePie($link, 'derecha');
+ break;
+ case 'volver':
+ $img = new MECON_HTML_Image('/MECON/images/general_anterior', '>-');
+ // Si no tiene titulo, le pone titulo por defecto.
+ $cont = $link->getContents() ? $link->getContents() : 'Volver';
+ $link->setContents($img);
+ $link->addContents($cont);
+ $this->updateCabecera($link, 'izquierda');
+ break;
+ case 'anterior':
+ $img = new MECON_HTML_Image('/MECON/images/general_anterior', '>-');
+ // Si no tiene titulo, le pone titulo por defecto.
+ $cont = $link->getContents() ? $link->getContents() : 'Anterior';
+ $link->setContents($img);
+ $link->addContents($cont);
+ $this->updatePie($link, 'izquierda');
+ break;
+ default:
+ $this->raiseError("No hay un link predefinido llamado '$id'.");
+ }
+ }
+
}
?>