]> git.llucax.com Git - mecon/samurai.git/blob - lib/SAMURAI/Perfil.php
Permisos, Sistemas y Perfiles terminado.
[mecon/samurai.git] / lib / SAMURAI / Perfil.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 11:20:04 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
29
30
31 // +X2C Class 208 :SAMURAI_Perfil
32 /**
33  * Clase para el manejo de los perfies.
34  *
35  * @access public
36  */
37 class SAMURAI_Perfil {
38     /**
39      * Identificador del perfil.
40      *
41      * @var    int $id
42      * @access protected
43      */
44     var $_id;
45
46     /**
47      * Descripcion del perfil.
48      *
49      * @var    string $descripcion
50      * @access protected
51      */
52     var $_descripcion;
53
54     /**
55      * Tipo de perfil. E = Externo. I = Interno. D = Dios.
56      *
57      * @var    string $tipo
58      * @access protected
59      */
60     var $_tipo;
61
62     /**
63      * Objeto Samurai_DB
64      *
65      * @var    SAMURAI_DB $db
66      * @access protected
67      */
68     var $_db;
69
70     /**
71      * Responsable de las ultimas modificaciones
72      *
73      * @var    string $responsable
74      * @access protected
75      */
76     var $_responsable;
77
78     /**
79      * Gets Id.
80      *
81      * @return int
82      * @access public
83      */
84     function getId()
85     {
86         return $this->_id;
87     }
88     /**
89      * Sets Id.
90      *
91      * @param  int $id Id.
92      *
93      * @return void
94      * @access public
95      */
96     function setId($id)
97     {
98         $this->_id = $id;
99     }
100
101     /**
102      * Gets Descripcion.
103      *
104      * @return string
105      * @access public
106      */
107     function getDescripcion()
108     {
109         return $this->_descripcion;
110     }
111     /**
112      * Sets Descripcion.
113      *
114      * @param  string $descripcion Descripcion.
115      *
116      * @return void
117      * @access public
118      */
119     function setDescripcion($descripcion)
120     {
121         $this->_descripcion = $descripcion;
122     }
123
124     /**
125      * Gets Tipo.
126      *
127      * @return string
128      * @access public
129      */
130     function getTipo()
131     {
132         return $this->_tipo;
133     }
134     /**
135      * Sets Tipo.
136      *
137      * @param  string $tipo Tipo.
138      *
139      * @return void
140      * @access public
141      */
142     function setTipo($tipo)
143     {
144         $this->_tipo = $tipo;
145     }
146
147     /**
148      * Gets Responsable.
149      *
150      * @return string
151      * @access public
152      */
153     function getResponsable()
154     {
155         return $this->_responsable;
156     }
157     /**
158      * Sets Responsable.
159      *
160      * @param  string $responsable Responsable.
161      *
162      * @return void
163      * @access public
164      */
165     function setResponsable($responsable)
166     {
167         $this->_responsable = $responsable;
168     }
169
170     // ~X2C
171
172     // +X2C Operation 229
173     /**
174      * Constructor. Si recibe un identificador como parametro, busca la informacion en la base.
175      *
176      * @param  SAMURAI_DB &$db Objeto conexion
177      * @param  int $id Identificador del perfil.
178      *
179      * @return void
180      * @access public
181      */
182     function SAMURAI_Perfil(&$db, $id = null) // ~X2C
183     {
184         $this->_db = $db;
185         if (!is_null($id)) {
186             $this->setId($id);
187             $this->_obtenerDatosDb();
188         }
189         else {
190             //INICIALIZO LA VI
191             $this->_id          = null;
192             $this->_descripcion = null; 
193             $this->_tipo        = null;
194         }
195     }
196     // -X2C
197
198     // +X2C Operation 322
199     /**
200      * Obtiene los datos de la base de datos
201      *
202      * @return void
203      * @access protected
204      */
205     function _obtenerDatosDb() // ~X2C
206     {
207         $sql = include 'Perfil/consultas.php'; //Incluyo las consultas de este objeto nada mas.
208         $tmp = $sql['obtener_datos_perfil'].$sql['obtener_datos_perfil2'];
209         $dbh = $this->_db->prepare($tmp);
210         $tmp = array ($this->getId());
211         $res = $this->_db->execute($dbh,$tmp);        
212
213         if ($re  = $res->fetchRow(DB_FETCHMODE_ASSOC)) {
214             if (isset($re['desc_perfil'])) {
215                $this->setDescripcion($re['desc_perfil']);
216             }
217             else {
218                 $this->setDescripcion();
219             }
220             if (isset($re['tipo_perfil'])) {
221                $this->setTipo($re['tipo_perfil']);
222             }
223             else {
224                 $this->setTipo();
225             }
226             if (isset($re['responsable'])) {
227                 $this->setResponsable($re['responsable']);
228             }
229             else {
230                 $this->setResponsable();
231             }
232         }
233     }
234     // -X2C
235
236     // +X2C Operation 323
237     /**
238      * Redirecciona segun la accion correspondiente
239      *
240      * @param  string $accion Representa la accion a desarrollar
241      *
242      * @return mixed
243      * @access public
244      */
245     function guardarDatos($accion = grabar) // ~X2C
246     {
247         trigger_error('Not implemented!', E_USER_WARNING);
248     }
249     // -X2C
250
251     // +X2C Operation 324
252     /**
253      * Graba la informacion del perfil en base
254      *
255      * @return mixed
256      * @access protected
257      */
258     function _grabarDb() // ~X2C
259     {
260         trigger_error('Not implemented!', E_USER_WARNING);
261     }
262     // -X2C
263
264     // +X2C Operation 325
265     /**
266      * Borra la informacion del perfil de la base
267      *
268      * @return mixed
269      * @access protected
270      */
271     function _borrarDb() // ~X2C
272     {
273         trigger_error('Not implemented!', E_USER_WARNING);
274     }
275     // -X2C
276
277     // +X2C Operation 326
278     /**
279      * @return mixed
280      * @access protected
281      */
282     function _modificarDb() // ~X2C
283     {
284         trigger_error('Not implemented!', E_USER_WARNING);
285     }
286     // -X2C
287
288     // +X2C Operation 338
289     /**
290      * Devuleve un array con los identificadores de todos los perfiles.
291      *
292      * @param  SAMURAI_DB &$db Base de Datos
293      *
294      * @return array(int)
295      * @access protected
296      * @static
297      */
298     function _getIdPerfiles(&$db) // ~X2C
299     {
300         trigger_error('Not implemented!', E_USER_WARNING);
301     }
302     // -X2C
303
304     // +X2C Operation 339
305     /**
306      * @param  SAMURAI_DB &$db Base de datos
307      *
308      * @return array(Perfil)
309      * @access public
310      * @static
311      */
312     function getPerfiles(&$db) // ~X2C
313     {
314         trigger_error('Not implemented!', E_USER_WARNING);
315     }
316     // -X2C
317
318 } // -X2C Class :SAMURAI_Perfil
319
320 ?>