]> git.llucax.com Git - mecon/meconlib.git/blob - lib/MECON/Usuario.php
Agrego un mensaje de error a Usuario.php en caso de que no exista.
[mecon/meconlib.git] / lib / MECON / Usuario.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: Thu Aug 11 15:17:11 2003
22 Autor:  Manuel Nazar <manazar@mecon.gov.ar>
23 -------------------------------------------------------------------------------
24 $Id: Usuario.php 242 2003-08-11 18:02:16Z manazar $
25 -----------------------------------------------------------------------------*/
26
27 require_once 'DB.php';
28
29 // +X2C Class 131 :MECON_Usuario
30 /**
31  * @access public
32  */
33 class MECON_Usuario {
34     /**
35      * @var    int $dni
36      * @access public
37      */
38     var $dni;
39
40      /**
41      * @var    string $login
42      * @access public
43      */
44     var $login;
45
46
47    /**
48      * @var    string $nombre
49      * @access public
50      */
51     var $nombre;
52    /**
53      * @var    string $dsn
54      * @access public
55      */
56     var $dsn = 'mysql://intranet:intranet@bal747f.mecon.ar/usuario';
57
58
59     // ~X2C
60
61 // +X2C Operation 138
62     /**
63      * @param  string $dni 
64      *
65      * @return void
66      * @access public
67      */
68     function ArmarconDNI($dni) // ~X2C
69   {
70         $db = DB::connect($this->dsn);
71         if (DB::isError($db)) 
72         {
73             die ($db->getMessage("No pudo conectarse a la base"));
74         }
75         else
76         {
77             $sql = "SELECT login,nombre
78                     from Usuario
79                     where dni = $dni";
80             $result = $db->query($sql);
81
82             if ($result->NumRows()>0){
83                 $row = $result->fetchRow();
84                 $login = $row[0];
85                 $nombre = $row[1];
86                 $this->login=$login;
87                 $this->nombre=$nombre;
88                 $this->dni=$dni;
89             else {
90                 die ('El dni '.$dni.' no existe, debe loguearse al
91                         menos una vez a la intranet.');
92             }
93
94         }
95   }
96   // -X2C
97
98
99 // +X2C Operation 136
100     /**
101      * @param  string $login 
102      *
103      * @return void
104      * @access public
105      */
106     function ArmarconLOGIN($login) // ~X2C
107   {
108         $db = DB::connect($this->dsn);
109         if (DB::isError($db)) 
110         {
111             die ($db->getMessage("No pudo conectarse a la base"));
112         }
113         else
114         {
115             
116             //$login = ereg_replace ("@", "\\\@", $login);
117             $sql = "SELECT dni,nombre
118                     from Usuario
119                     where login = '$login'";
120
121             $result = $db->query($sql);
122            
123             if ($result->NumRows()>0){
124                 $row = $result->fetchRow();
125                 $dni = $row[0];
126                 $nombre = $row[1];
127                 $this->dni=$dni;
128                 $this->nombre=$nombre;
129                 $this->login=$login;
130             }
131             else {
132                 die ('El usuario '.$login.' no existe, debe loguearse al
133                         menos una vez a la intranet.');
134             }
135         }
136   }
137   // -X2C
138
139      // +X2C Operation 135
140     /**
141      * @param  int $dni 
142      *
143      * @return void
144      * @access public
145      */
146     function MECON_Usuario($dni = NULL, $login = NULL) // ~X2C
147   {
148       if(! is_null($dni))
149       {
150             $this->ArmarconDNI($dni);
151             $this->buscarUsuarioDNI($dni);
152       }
153       if(! is_null($login))
154       {
155             $this->ArmarconLOGIN($login);
156             $this->buscarUsuarioDNI($this->getDni());
157       }
158         
159   }
160   // -X2C
161
162   // +X2C Operation 136
163     /**
164      * @param  int $uario 
165      *
166      * @return void
167      * @access public
168      */
169     function Insertar_Usuario($dni = NULL, $login = NULL, $nombre = NULL) // ~X2C
170   {
171       if((! is_null($dni)) && (! is_null($login)) && (! is_null($nombre)))
172       {
173         $db = DB::connect($this->dsn);
174         if (DB::isError($db)) 
175         {
176             die ($db->getMessage("No pudo conectarse a la base"));
177         }
178         else
179         {
180             $sql = "REPLACE INTO Usuario (login,dni,nombre) 
181                     values ('$login',$dni,'$nombre')";
182             $result = $db->query($sql);
183         }
184       }
185   }
186   // -X2C
187
188 // +X2C Operation 136
189     /**
190      * @return int
191      * @access public
192      */
193     function getDni() // ~X2C
194   {
195       return $this->dni;
196   }
197   // -X2C
198
199     // +X2C Operation 137
200     /**
201      * @return string
202      * @access public
203      */
204     function getLogin() // ~X2C
205   {
206       return $this->login;
207   }
208   // -X2C
209
210     // +X2C Operation 138
211     /**
212      * @return string
213      * @access public
214      */
215     function getNombre() // ~X2C
216   {
217       return $this->nombre;
218   }
219   // -X2C
220
221    
222    // +X2C Operation 154
223     /**
224      * @param  int $dni 
225      *
226      * @return void
227      * @access public
228      */
229     function buscarUsuarioDNI($dni) // ~X2C
230     {
231       $this->dni = $dni;
232       $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
233       $db = DB::connect($dsn);
234       if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
235       $sql = "SELECT nombre
236               FROM web003
237               WHERE nrodoc = $dni";
238       $result = $db->query($sql);
239       if(DB::isError($result)) {
240         die($result->getMessage("query mal hecho"));
241       }
242       if($result->numRows() > 0)
243       {
244           $row = $result->fetchRow(); 
245           $nombre = $row[0];
246           $this->nombre = $nombre; 
247       }
248       else
249       {
250           $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
251           $db = DB::connect($dsn);
252           if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
253           $sql = "SELECT nombre 
254                   FROM Contratados
255                   WHERE nrodoc = $dni";
256           $result = $db->query($sql);
257           if(DB::isError($result))
258             die($result->getMessage("query mal hecho"));
259           if($result->numRows() > 0)
260           {
261             $row = $result->fetchRow(); 
262             $nombre = $row[0];
263             $this->nombre = $nombre; 
264           }
265           else
266             return false;
267       }
268       return true;
269     }
270     // -X2C
271
272 } // -X2C Class :MECON_Usuario
273 ?>