$Id$
-----------------------------------------------------------------------------*/
-require_once 'PEAR.php';
-
+require_once 'MECON/HTML/Image.php';
// +X2C Class 9 :MECON_Marco_Copete
/**
- * Clase para el manejo de los copetes de los sistemas integrantes de intranet. Recibe el directorio porque debe obtener la imagen del directorio especificado.
+ * Manejo del copete de los sistemas que utilizan MECON_Marco
*
* @package MECON_Marco
* @access public
*/
var $_directorio = '';
+ /**
+ * String con la referencia y los getvars de la ayuda
+ *
+ * @var string $ayuda
+ * @access private
+ */
+ var $_ayuda = null;
+
+ /**
+ * Nombre del sistema.
+ *
+ * @private
+ */
+ var $_sistema = '';
+
// ~X2C
// +X2C Operation 34
/**
- * Constructor. Recibe el nombre del directorio en donde se encuentra instalado el sistema. El directorio es case sensitive.
+ * Recibe el nombre del directorio en donde se encuentra instalado el sistema. El directorio es case sensitive.
*
* @param string $directorio Nombre del directorio en donde se encuentra el sistema.
+ * @param mixed $ayuda Objeto MECON_HTML_Link o string para armar el map de la ayuda.
*
* @return void
* @access public
*/
- function MECON_Marco_Copete($directorio) // ~X2C
+ function MECON_Marco_Copete($directorio, $ayuda = null, $sistema = '') // ~X2C
{
$this->_directorio = $directorio;
+ $this->_sistema = $sistema;
+ if (@$ayuda) {
+ if (is_object($ayuda)) {
+ $val = $ayuda->getHref();
+ foreach ($ayuda->getGetVars() as $var => $v) {
+ if (is_object($v) and method_exists($v, 'tostring')) {
+ $v = $v->tostring();
+ } elseif (is_object($v) or is_array($v)) {
+ $v = serialize($v);
+ }
+ $vars[] = urlencode($var) . '=' . urlencode($v);
+ }
+ if ($vars) {
+ $val .= '?' . join('&', $vars);
+ }
+ $this->_ayuda = $val;
+ }
+ else {
+ $this->_ayuda = $ayuda;
+ }
+ }
}
// -X2C
function toHtml() // ~X2C
{
if (!is_null($this->_directorio)) {
- return '<img src="'.$this->_directorio.'/copete">';
+ $image = new MECON_HTML_Image(
+ $this->_directorio.'/copete',
+ 'Intranet - Ministerio de EconomÃa - ' . $this->_sistema,
+ array(
+ 'width' => 760,
+ 'height' => 42,
+ 'border' => 0,
+ )
+ );
+ if (@$this->_ayuda) {
+ $image->updateAttributes(array('usemap' => '#Map_copete'));
+ $image->setSrc($image->getSrc() . '_ayuda');
+ return $image->toHtml() . '<map name="Map_copete"><area shape="circle" coords="748,30,7" href="'
+ . $this->_ayuda . '"></map>';
+ }
+ else {
+ return $image->toHtml();
+ }
}
else {
return '';