------------------------------------------------------------------------------- $Id: Usuario.php 242 2003-08-11 18:02:16Z manazar $ -----------------------------------------------------------------------------*/ require_once 'DB.php'; // +X2C Class 131 :MECON_Usuario /** * @access public */ class MECON_Usuario { /** * @var int $dni * @access public */ var $dni; /** * @var string $login * @access public */ var $login; /** * @var string $nombre * @access public */ var $nombre; /** * @var string $dsn * @access public */ var $dsn = 'mysql://intranet:intranet@bal747f.mecon.ar/usuario'; // ~X2C // +X2C Operation 138 /** * @param string $dni * * @return void * @access public */ function ArmarconDNI($dni) // ~X2C { $db = DB::connect($this->dsn); if (DB::isError($db)) { die ($db->getMessage("No pudo conectarse a la base")); } else { $sql = "SELECT login,nombre from Usuario where dni = $dni"; $result = $db->query($sql); if ($result->NumRows()>0) { $row = $result->fetchRow(); $login = $row[0]; $nombre = $row[1]; $this->login=$login; $this->nombre=$nombre; $this->dni=$dni; } else { die ('El dni '.$dni.' no existe, debe loguearse al menos una vez a la intranet.'); } } } // -X2C // +X2C Operation 136 /** * @param string $login * * @return void * @access public */ function ArmarconLOGIN($login) // ~X2C { $db = DB::connect($this->dsn); if (DB::isError($db)) { die ($db->getMessage("No pudo conectarse a la base")); } else { //$login = ereg_replace ("@", "\\\@", $login); $sql = "SELECT dni,nombre from Usuario where login = '$login'"; $result = $db->query($sql); if ($result->NumRows()>0) { $row = $result->fetchRow(); $dni = $row[0]; $nombre = $row[1]; $this->dni=$dni; $this->nombre=$nombre; $this->login=$login; } else { die ('El usuario '.$login.' no existe, debe loguearse al menos una vez a la intranet.'); } } } // -X2C // +X2C Operation 135 /** * @param int $dni * * @return void * @access public */ function MECON_Usuario($dni = NULL, $login = NULL) // ~X2C { if(! is_null($dni)) { $this->ArmarconDNI($dni); $this->buscarUsuarioDNI($dni); } if(! is_null($login)) { $this->ArmarconLOGIN($login); $this->buscarUsuarioDNI($this->getDni()); } } // -X2C // +X2C Operation 136 /** * @param int $uario * * @return void * @access public */ function Insertar_Usuario($dni = NULL, $login = NULL, $nombre = NULL) // ~X2C { if((! is_null($dni)) && (! is_null($login)) && (! is_null($nombre))) { $db = DB::connect($this->dsn); if (DB::isError($db)) { die ($db->getMessage("No pudo conectarse a la base")); } else { $sql = "REPLACE INTO Usuario (login,dni,nombre) values ('$login',$dni,'$nombre')"; $result = $db->query($sql); } } } // -X2C // +X2C Operation 136 /** * @return int * @access public */ function getDni() // ~X2C { return $this->dni; } // -X2C // +X2C Operation 137 /** * @return string * @access public */ function getLogin() // ~X2C { return $this->login; } // -X2C // +X2C Operation 138 /** * @return string * @access public */ function getNombre() // ~X2C { return $this->nombre; } // -X2C // +X2C Operation 154 /** * @param int $dni * * @return void * @access public */ function buscarUsuarioDNI($dni) // ~X2C { $this->dni = $dni; $dsn = 'mysql://intranet:intranet@intranet-db/novedades'; $db = DB::connect($dsn); if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base")); $sql = "SELECT nombre FROM web003 WHERE nrodoc = $dni"; $result = $db->query($sql); if(DB::isError($result)) { die($result->getMessage("query mal hecho")); } if($result->numRows() > 0) { $row = $result->fetchRow(); $nombre = $row[0]; $this->nombre = $nombre; } else { $dsn = 'mysql://intranet:intranet@intranet-db/Contratados'; $db = DB::connect($dsn); if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base")); $sql = "SELECT nombre FROM Contratados WHERE nrodoc = $dni"; $result = $db->query($sql); if(DB::isError($result)) die($result->getMessage("query mal hecho")); if($result->numRows() > 0) { $row = $result->fetchRow(); $nombre = $row[0]; $this->nombre = $nombre; } else return false; } return true; } // -X2C /** * Verifica si el login pasado por parametro es valido * * @param string $login Login a verificar * * @return mixed * @access public */ function verificarLogin($login = null) { if ($login) { $db = DB::connect($this->dsn); if (PEAR::isError($db)) { return $db; } $sql = "SELECT count(*) as cuenta FROM Usuario WHERE login = '$login'"; $result = $db->query($sql); if (PEAR::isError($result)) { return $result; } $row = $result->fetchRow(DB_FETCHMODE_ASSOC); if ($row['cuenta'] != 0) { return true; } } return false; } } // -X2C Class :MECON_Usuario ?>