]> git.llucax.com Git - mecon/samurai.git/blob - sistema/local_lib/Samurai.php
Se agrega SAMURAI lib (o un primer intento).
[mecon/samurai.git] / sistema / local_lib / Samurai.php
1 <?php
2 // vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
3 // +----------------------------------------------------------------------+
4 // | PHP Version 4                                                        |
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 // +----------------------------------------------------------------------+
19 //
20 // $Id$
21 // $Author$
22 // $URL$
23 // $Date$
24 // $Rev$
25 //
26
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';
32
33
34
35 // +X2C Class 274 :Samurai
36 /**
37  * Objeto general.
38  *
39  * @access public
40  */
41 class Samurai {
42     /**
43      * Identificador del sistema.
44      *
45      * @var    int $id_sistema
46      *
47      * @access private
48      */
49     var $_id_sistema;
50
51     /**
52      * Objeto Conexion
53      *
54      * @var    Samurai_DB $db
55      *
56      * @access private
57      */
58     var $_db;
59
60     // ~X2C
61
62     // +X2C Operation 280
63     /**
64      * Constructor. Recibe como parametro el identificador del sistema.
65      *
66      * @param  Samurai_DB &$db Objeto conexion
67      * @param  int $idSistema Indetificador del sistema
68      *
69      * @return void
70      *
71      * @access public
72      */
73     function Samurai(&$db, $idSistema = null) // ~X2C
74     {
75         $this->_id_sistema = $idSistema;
76         $this->_db = &$db;
77     }
78     // -X2C
79
80     // +X2C Operation 283
81     /**
82      * Devuleve un array con los identificadores de todos los sistemas.
83      *
84      * @return array(Sistema)
85      *
86      * @access private
87      */
88     function _getIdSistemas() // ~X2C
89     {
90         $rta = array();
91         $sql = include 'Samurai/consultas.php';
92         $dbh = $this->_db->prepare($sql['obtener_id_sistemas']);
93         $res = $this->_db->execute($dbh);
94         while ($re = $res->fetchrow(DB_FETCHMODE_ASSOC)) {
95             array_push($rta,$re['id_sistema']);
96         }        
97         $res->free();
98         return $rta;
99     }
100     // -X2C
101
102     // +X2C Operation 285
103     /**
104      * Arma el array de sistemas
105      *
106      * @return array(Sistema)
107      *
108      * @access private
109      */
110     function _armarArraySistemas() // ~X2C
111     {
112         $rta = array ();
113         foreach ($this->_getIdSistemas() as $id) {
114             $tmp = new Sistema($this->_db,$id);
115             array_push($rta, $tmp);
116         }
117         return $rta;
118     }
119     // -X2C
120
121     // +X2C Operation 286
122     /**
123      * Devuelve el array de sistemas
124      *
125      * @return array(Sistema)
126      *
127      * @access public
128      */
129     function getSistemas() // ~X2C
130     {
131         return $this->_armarArraySistemas();
132     }
133     // -X2C
134
135     // +X2C Operation 287
136     /**
137      * Devuelve el identificador maximo de un sistema que hay en base
138      *
139      * @return int
140      *
141      * @access public
142      */
143     function getMaxIdSistema() // ~X2C
144     {
145         $sql = include 'Samurai/consultas.php';
146         $dbh = $this->_db->prepare($sql['obtener_max_id_sistemas']);
147         $res = $this->_db->execute($dbh);
148         $re = $res->fetchrow(DB_FETCHMODE_ASSOC);
149         $res->free();
150         return $re['id_sistema'];
151     }
152     // -X2C
153
154 } // -X2C Class :Samurai
155
156 ?>