]> git.llucax.com Git - mecon/meconlib.git/blob - lib/MECON/Marco/Copete.php
BugFix.
[mecon/meconlib.git] / lib / MECON / Marco / Copete.php
1 <?php /* vim: set binary expandtab tabstop=4 shiftwidth=4 textwidth=80:
2 -------------------------------------------------------------------------------
3                              Ministerio de Economía
4                                     meconlib
5 -------------------------------------------------------------------------------
6 This file is part of meconlib.
7
8 meconlib is free software; you can redistribute it and/or modify it under
9 the terms of the GNU General Public License as published by the Free
10 Software Foundation; either version 2 of the License, or (at your option)
11 any later version.
12
13 meconlib is distributed in the hope that it will be useful, but WITHOUT
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16  
17 You should have received a copy of the GNU General Public License; if not,
18 write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
19 Boston, MA  02111-1307  USA
20 -------------------------------------------------------------------------------
21 Creado: Mon Apr 14 16:23:22 2003
22 Autor:  Martin Marrese <mmarre@mecon.gov.ar>
23 -------------------------------------------------------------------------------
24 $Id$
25 -----------------------------------------------------------------------------*/
26
27 require_once 'MECON/HTML/Image.php';
28
29 // +X2C Class 9 :MECON_Marco_Copete
30 /**
31  * Manejo del copete de los sistemas que utilizan MECON_Marco
32  *
33  * @package MECON_Marco
34  * @access public
35  */
36 class MECON_Marco_Copete {
37     /**
38      * Nombre del directorio en donde se encuentra el sistema. Es case sensitive.
39      *
40      * @var    string $directorio
41      * @access private
42      */
43     var $_directorio = '';
44
45     /**
46      * String con la referencia y los getvars de la ayuda
47      *
48      * @var    string $ayuda
49      * @access private
50      */
51     var $_ayuda = null;
52
53     /**
54      * Nombre del sistema.
55      *
56      * @private
57      */
58     var $_sistema = '';
59
60     // ~X2C
61
62     // +X2C Operation 34
63     /**
64      * Recibe el nombre del directorio en donde se encuentra instalado el sistema. El directorio es case sensitive.
65      *
66      * @param  string $directorio Nombre del directorio en donde se encuentra el sistema.
67      * @param  mixed $ayuda Objeto MECON_HTML_Link o string para armar el map de la ayuda.
68      *
69      * @return void
70      * @access public
71      */
72     function MECON_Marco_Copete($directorio, $ayuda = null, $sistema = '') // ~X2C
73     {
74         $this->_directorio  = $directorio;
75         $this->_sistema     = $sistema;
76         if (@$ayuda) {
77             if (is_object($ayuda)) {
78                 $val = $ayuda->getHref();
79                 foreach ($ayuda->getGetVars() as $var => $v) {
80                     if (is_object($v) and method_exists($v, 'tostring')) {
81                         $v = $v->tostring();
82                     } elseif (is_object($v) or is_array($v)) {
83                         $v = serialize($v);
84                     }
85                     $vars[] = urlencode($var) . '=' . urlencode($v);
86                 }
87                 if ($vars) {
88                     $val .= '?' . join('&', $vars);
89                 }
90                 $this->_ayuda = $val;
91             }
92             else {
93                 $this->_ayuda = $ayuda;
94             }
95         }
96     }
97     // -X2C
98
99     // +X2C Operation 35
100     /**
101      * Funcion que devuelve el string html a imprimir en pantalla.
102      *
103      * @return string
104      * @access public
105      */
106     function toHtml() // ~X2C
107     {
108         if (!is_null($this->_directorio)) {
109             $image = new MECON_HTML_Image(
110                 $this->_directorio.'/copete',
111                 'Intranet - Ministerio de Economía - ' . $this->_sistema,
112                 array(
113                     'width' => 760,
114                     'height' => 42,
115                     'border' => 0,
116                 )
117             );
118             if (@$this->_ayuda) {
119                 $image->updateAttributes(array('usemap' => '#Map_copete'));
120                 $image->setSrc($image->getSrc() . '_ayuda');
121                 return $image->toHtml() . '<map name="Map_copete"><area shape="circle" coords="748,30,7" href="'
122                     . $this->_ayuda . '"></map>';                
123             }
124             else {
125                 return $image->toHtml();
126             }
127         }
128         else {
129             return '';
130         }
131     }
132     // -X2C
133
134
135 } // -X2C Class :MECON_Marco_Copete
136
137 ?>