2 // vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
3 // +----------------------------------------------------------------------+
5 // +----------------------------------------------------------------------+
6 // | Copyright (c) 1997-2003 The PHP Group |
7 // +----------------------------------------------------------------------+
8 // | This source file is subject to version 2.02 of the PHP license, |
9 // | that is bundled with this package in the file LICENSE, and is |
10 // | available at through the world-wide-web at |
11 // | http://www.php.net/license/2_02.txt. |
12 // | If you did not receive a copy of the PHP license and are unable to |
13 // | obtain it through the world-wide-web, please send a note to |
14 // | license@php.net so we can mail you a copy immediately. |
15 // +----------------------------------------------------------------------+
16 // | Created: Tue May 27 17:05:58 2003
17 // | Author: Martin Marrese - Myrna Degano <mmarre@mecon.gov.ar - mdegan@mecon.gov.ar>
18 // +----------------------------------------------------------------------+
27 #require_once 'PEAR.php';
28 require_once 'Sistema.php';
29 require_once 'Usuario.php';
30 require_once 'Permiso.php';
31 require_once 'Perfil.php';
35 // +X2C Class 274 :Samurai
43 * Identificador del sistema.
45 * @var int $id_sistema
62 * Constructor. Recibe como parametro el identificador del sistema.
64 * @param Samurai_DB &$db Objeto conexion
65 * @param int $idSistema Indetificador del sistema
70 function Samurai(&$db, $idSistema = null)// ~X2C
72 $this->_id_sistema = $idSistema;
79 * Devuleve un array con los identificadores de todos los sistemas.
84 function _getIdSistemas()// ~X2C
87 $sql = include 'Samurai/consultas.php';
88 $dbh = $this->_db->prepare($sql['obtener_id_sistemas']);
89 $res = $this->_db->execute($dbh);
90 while ($re = $res->fetchrow(DB_FETCHMODE_ASSOC)) {
91 array_push($rta,$re['id_sistema']);
100 * Arma el array de sistemas
102 * @return array(Sistema)
105 function _armarArraySistemas()// ~X2C
108 foreach ($this->_getIdSistemas() as $id) {
109 $tmp = new Sistema($this->_db,$id);
110 array_push($rta, $tmp);
116 // +X2C Operation 286
118 * Devuelve el array de sistemas
120 * @return array(Sistema)
123 function getSistemas()// ~X2C
125 return $this->_armarArraySistemas();
130 // +X2C Operation 292
132 * Devuelve el array de permisos
134 * @return array(Permiso)
137 function getPermisos()// ~X2C
139 return $this->_armarArrayPermisos();
143 // +X2C Operation 293
145 * Arma el array de permisos
150 function _armarArrayPermisos()// ~X2C
153 foreach ($this->_getIdPermisos() as $id) {
154 $tmp = new Permiso($this->_db,$id);
155 array_push($rta, $tmp);
161 // +X2C Operation 294
163 * Devuleve un array con los identificadores de todos los permisos.
168 function _getIdPermisos()// ~X2C
171 $sql = include 'Samurai/consultas.php';
172 $dbh = $this->_db->prepare($sql['obtener_id_permisos']);
173 $res = $this->_db->execute($dbh);
174 while ($re = $res->fetchrow(DB_FETCHMODE_ASSOC)) {
175 array_push($rta,$re['id_permiso']);
182 // +X2C Operation 299
184 * Devuelve un array asociativo en donde la clave es el identificador y el valor es la descripcion del permiso
189 function getSelectPermisos()// ~X2C
192 foreach ($this->_armarArrayPermisos() as $permiso) {
193 $rta[$permiso->getId()] = $permiso->getDescripcion();
199 } // -X2C Class :Samurai