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);
71 if (DB::isError($db)) {
72 die ($db->getMessage("No pudo conectarse a la base"));
74 $sql = "SELECT login,nombre
77 $result = $db->query($sql);
79 if ($result->NumRows()>0) {
80 $row = $result->fetchRow();
84 $this->nombre=$nombre;
87 die ('El dni '.$dni.' no existe, debe loguearse al
88 menos una vez a la intranet.');
98 * @param string $login
103 function ArmarconLOGIN($login) // ~X2C
105 $db = DB::connect($this->dsn);
106 if (DB::isError($db)) {
107 die ($db->getMessage("No pudo conectarse a la base"));
110 //$login = ereg_replace ("@", "\\\@", $login);
111 $sql = "SELECT dni,nombre
113 where login = '$login'";
115 $result = $db->query($sql);
117 if ($result->NumRows()>0) {
118 $row = $result->fetchRow();
122 $this->nombre=$nombre;
125 die ('El usuario '.$login.' no existe, debe loguearse al
126 menos una vez a la intranet.');
132 // +X2C Operation 135
139 function MECON_Usuario($dni = NULL, $login = NULL) // ~X2C
141 if(! is_null($dni)) {
142 $this->ArmarconDNI($dni);
143 $this->buscarUsuarioDNI($dni);
145 if(! is_null($login)) {
146 $this->ArmarconLOGIN($login);
147 $this->buscarUsuarioDNI($this->getDni());
153 // +X2C Operation 136
160 function Insertar_Usuario($dni = NULL, $login = NULL, $nombre = NULL) // ~X2C
162 if((! is_null($dni)) && (! is_null($login)) && (! is_null($nombre))) {
163 $db = DB::connect($this->dsn);
164 if (DB::isError($db)) {
165 die ($db->getMessage("No pudo conectarse a la base"));
167 $sql = "REPLACE INTO Usuario (login,dni,nombre)
168 values ('$login',$dni,'$nombre')";
169 $result = $db->query($sql);
175 // +X2C Operation 136
180 function getDni() // ~X2C
186 // +X2C Operation 137
191 function getLogin() // ~X2C
197 // +X2C Operation 138
202 function getNombre() // ~X2C
204 return $this->nombre;
209 // +X2C Operation 154
216 function buscarUsuarioDNI($dni) // ~X2C
219 $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
220 $db = DB::connect($dsn);
221 if (DB::isError($db))
222 die ($db->getMessage("No pudo conectarse a la base"));
223 $sql = "SELECT nombre
225 WHERE nrodoc = $dni";
226 $result = $db->query($sql);
227 if(DB::isError($result)) {
228 die($result->getMessage("query mal hecho"));
230 if($result->numRows() > 0) {
231 $row = $result->fetchRow();
233 $this->nombre = $nombre;
235 $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
236 $db = DB::connect($dsn);
237 if (DB::isError($db))
238 die ($db->getMessage("No pudo conectarse a la base"));
239 $sql = "SELECT nombre
241 WHERE nrodoc = $dni";
242 $result = $db->query($sql);
243 if(DB::isError($result))
244 die($result->getMessage("query mal hecho"));
245 if($result->numRows() > 0) {
246 $row = $result->fetchRow();
248 $this->nombre = $nombre;
257 * Verifica si el login pasado por parametro es valido
259 * @param string $login Login a verificar
264 function verificarLogin($login = null) {
266 $db = DB::connect($this->dsn);
267 if (PEAR::isError($db)) {
270 $sql = "SELECT count(*) as cuenta FROM Usuario WHERE login = '$login'";
271 $result = $db->query($sql);
272 if (PEAR::isError($result)) {
275 $row = $result->fetchRow(DB_FETCHMODE_ASSOC);
276 if ($row['cuenta'] != 0) {
283 } // -X2C Class :MECON_Usuario