2 // vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
3 // +--------------------------------------------------------------------+
5 // +--------------------------------------------------------------------+
6 // | Sistema de Administracion y Matenimiento de Usuarios Relativo A |
8 // | Ministerio de EconomÃa |
9 // +--------------------------------------------------------------------+
10 // | Creado: fri mar 21 ART 2003 |
11 // | Autor: Martin Marrese <mmarre@mecon.gov.ar> |
12 // +--------------------------------------------------------------------+
21 require_once 'PEAR.php';
22 require_once 'DB.php';
23 require_once 'HTML/Tabla.php';
28 * Libreria para le manejo de los sistemas de intranet.
34 class SA_Sistemas extends PEAR {
58 * Valores de Configuracion particular
68 * Recibe como parametro el identificador del sistema
72 function SA_Sistemas ($id_sistema, $dbh)
74 $this->_id_sistema = $id_sistema;
76 $this->_sql = include 'lib/SA/Sistemas/sql_Conf.php'; // Obtengo las consultas SQL
77 $this->_conf = include 'lib/SA/Sistemas/Conf.php'; // Obtengo los valores particulares de configuracion
81 * Devuelve un array con los datos del sistema.
83 * Funcion que devuelve un hasharray con los datos del sistema,
84 * en donde cada clave es un campo de la tabla sistema.
92 $sql = $this->_sql['obtener_datos_sistema'];
93 $sql.= $this->_sql['obtener_datos_sistema2'];
94 $tmp = array ('0'=>$this->_id_sistema);
95 $result = $this->_dbh->getAll($sql, $tmp,DB_FETCHMODE_OBJECT);
100 * Devuelve un array con los datos de todos los sistemas.
102 * Funcion que devuelve un hasharray con todos los datos de los
103 * sistemas cargados en base, en donde cada clave es un campo
104 * de la tabla sistema.
110 function datosTodos()
112 $sql = $this->_sql['obtener_datos_sistema'];
113 $sql.= $this->_sql['obtener_datos_sistema3'];
114 $result = $this->_dbh->getAll($sql, '',DB_FETCHMODE_OBJECT);
119 * Devuelve en HTML un tabla con los datos de los sistemas.
125 function htmlTablaCompleta()
127 $TABLE = new Tabla();
128 $row = array ('Id','Nombre','Descripcion','Modificar','Eliminar');
129 $TABLE->agregarFilaCabecera($row);
130 // Ver si esta parte la puedo evitar usando alguna funcion de html_table {{{
132 $datos = $this->datosTodos();
133 //Genero las filas con los datos de los sistemas
134 foreach ($datos as $dato) {
135 $add_link = '&id='.$dato['0']; // texto a agregar al path del link
136 // ID NOMBRE DESC MODIF
137 $row = array ($dato['0'],$dato['1'],$dato['2'],$this->htmlLinkAbm('link_modif',$add_link),$this->htmlLinkAbm('link_elim',$add_link));
138 $TABLE->agregarFila($row);
139 $TABLE->align($TABLE->getRowCount() - 1,2,'left');
143 return $TABLE->toHtml();
147 * Devuelve en HTML el link con la imagen al abm
149 * Recibe como parametro el nombre del link que se quiere mostrar
151 * @param $nombre_link nombre del link en el archivo configuracion
152 * @param $extra_link texto extra para agregar al link dela pagina
158 function htmlLinkAbm ($nombre, $add_link = '')
160 $link='<a href="'.$this->_conf[$nombre]['link_path'].$add_link.'"><img alt="'.$this->_conf[$nombre]['imagen_nombre'].'" src="'.$this->_conf[$nombre]['imagen_path'].'" border="0">'.$this->_conf[$nombre]['link_texto'].'</a>';
165 * Devuelve en HTML un tabla con los datos del sistema seleccionado.
167 * @param int $id_sistema
174 function htmlDatosSistema($id, $accion)
176 $TABLE = new Tabla();
178 //TODO: IMPORTANTE, ME TENGO QUE FIJAR QUE ACCION VOY A REALIZAR ANTES
179 //DE INTENTAR CARGAR LOS DATOS DEL SISTEMA...........SI, SI, SOY UN GIL
180 //TENGO QUE TRADUCIR LAS FECHAS
182 //Cargo los datos del sistema
183 $datos = $this->datosSistema($id);
184 //Genero las filas con los datos del sistema
185 $row = array ('Id Sistema',$datos['0']['0']);
186 $TABLE->agregarFila($row);
187 $row = array ('Nombre Sistema',$datos['0']['1']);
188 $TABLE->agregarFila($row);
189 $row = array ('Descripcion',$datos['0']['2']);
190 $TABLE->agregarFila($row);
193 $row = array ('Fecha Inicio',$datos['0']['3']);
194 $TABLE->agregarFila($row);
195 $row = array ('Fecha Fin',$datos['0']['4']);
196 $TABLE->agregarFila($row);
197 $row = array ('Fecha Implementacion',$datos['0']['5']);
198 $TABLE->agregarFila($row);
200 $row = array ('Contacto',$datos['0']['6']);
201 $TABLE->agregarFila($row);
204 $row = array ('Fecha Ultima Modificacion',$datos['0']['7']);
205 $TABLE->agregarFila($row);
207 $TABLE->setColCabecera(0); //Seteo la columna 0 como cabecera vertical de mi tabla
208 $TABLE->setColAlign(1, 'left'); //Seteo la alineacion de la columna 1
210 return $TABLE->toHtml();
214 * Devuelve un array con los datos del sistema.
216 * Funcion que devuelve un hasharray con todos los datos del
217 * sistema pasado por parametro, en donde cada clave es un campo
218 * de la tabla sistema.
224 function datosSistema($id)
227 $sql = $this->_sql['obtener_datos_sistema'];
228 $sql.= $this->_sql['obtener_datos_sistema2'];
229 $sql.= $this->_sql['obtener_datos_sistema3'];
230 $result = $this->_dbh->getAll($sql,$tmp);