1 <?php /* vim: set binary expandtab tabstop=4 shiftwidth=4 textwidth=80:
2 -------------------------------------------------------------------------------
3 Ministerio de EconomÃa
5 -------------------------------------------------------------------------------
6 This file is part of meconlib.
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)
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.
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 -----------------------------------------------------------------------------*/
27 require_once 'DB.php';
29 // +X2C Class 131 :MECON_Usuario
56 var $dsn = 'mysql://intranet:intranet@bal747f.mecon.ar/usuario';
68 function ArmarconDNI($dni) // ~X2C
70 $db = DB::connect($this->dsn);
73 die ($db->getMessage("No pudo conectarse a la base"));
77 $sql = "SELECT login,nombre
80 $result = $db->query($sql);
82 if ($result->NumRows()>0){
83 $row = $result->fetchRow();
87 $this->nombre=$nombre;
91 die ('El dni '.$dni.' no existe, debe loguearse al
92 menos una vez a la intranet.');
100 // +X2C Operation 136
102 * @param string $login
107 function ArmarconLOGIN($login) // ~X2C
109 $db = DB::connect($this->dsn);
110 if (DB::isError($db))
112 die ($db->getMessage("No pudo conectarse a la base"));
117 //$login = ereg_replace ("@", "\\\@", $login);
118 $sql = "SELECT dni,nombre
120 where login = '$login'";
122 $result = $db->query($sql);
124 if ($result->NumRows()>0){
125 $row = $result->fetchRow();
129 $this->nombre=$nombre;
133 die ('El usuario '.$login.' no existe, debe loguearse al
134 menos una vez a la intranet.');
140 // +X2C Operation 135
147 function MECON_Usuario($dni = NULL, $login = NULL) // ~X2C
151 $this->ArmarconDNI($dni);
152 $this->buscarUsuarioDNI($dni);
154 if(! is_null($login))
156 $this->ArmarconLOGIN($login);
157 $this->buscarUsuarioDNI($this->getDni());
163 // +X2C Operation 136
170 function Insertar_Usuario($dni = NULL, $login = NULL, $nombre = NULL) // ~X2C
172 if((! is_null($dni)) && (! is_null($login)) && (! is_null($nombre)))
174 $db = DB::connect($this->dsn);
175 if (DB::isError($db))
177 die ($db->getMessage("No pudo conectarse a la base"));
181 $sql = "REPLACE INTO Usuario (login,dni,nombre)
182 values ('$login',$dni,'$nombre')";
183 $result = $db->query($sql);
189 // +X2C Operation 136
194 function getDni() // ~X2C
200 // +X2C Operation 137
205 function getLogin() // ~X2C
211 // +X2C Operation 138
216 function getNombre() // ~X2C
218 return $this->nombre;
223 // +X2C Operation 154
230 function buscarUsuarioDNI($dni) // ~X2C
233 $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
234 $db = DB::connect($dsn);
235 if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
236 $sql = "SELECT nombre
238 WHERE nrodoc = $dni";
239 $result = $db->query($sql);
240 if(DB::isError($result)) {
241 die($result->getMessage("query mal hecho"));
243 if($result->numRows() > 0)
245 $row = $result->fetchRow();
247 $this->nombre = $nombre;
251 $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
252 $db = DB::connect($dsn);
253 if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
254 $sql = "SELECT nombre
256 WHERE nrodoc = $dni";
257 $result = $db->query($sql);
258 if(DB::isError($result))
259 die($result->getMessage("query mal hecho"));
260 if($result->numRows() > 0)
262 $row = $result->fetchRow();
264 $this->nombre = $nombre;
274 * Verifica si el login pasado por parametro es valido
276 * @param string $login Login a verificar
281 function verificarLogin($login = null) {
283 $db = DB::connect($this->dsn);
284 if (PEAR::isError($db)) {
287 $sql = "SELECT count(*) as cuenta FROM Usuario WHERE login = '$login'";
288 $result = $db->query($sql);
289 if (PEAR::isError($result)) {
292 $row = $result->fetchRow(DB_FETCHMODE_ASSOC);
293 if ($row['cuenta'] != 0) {
300 } // -X2C Class :MECON_Usuario