/** * @todo Funcion para obtener si el usuario logueado esta dentro de la base de datos * @version 1.1 * @author Rolando Arriaza * @param String $user usuario o correo corporativo * @param String $password contraseña * @return boolean , true si existe , false si no existe */ public function GetLogin($user, $password) { $password = \SivarApi\Tools\Encriptacion\Encriptacion::encrypt($password); $this->query = "SELECT login.id_login as id_log , usuario.id_usuario as id , login.user , login.activo , login.rol " . ", concat(usuario.nombre , ' ' , usuario.apellido) as nombre" . ", usuario.email , usuario.imagen , login.password FROM login " . " INNER JOIN usuario ON login.id_usuario=usuario.id_usuario " . " WHERE "; if (\SivarApi\Tools\Validation::CheckEmail($user)) { $this->query .= "usuario.email LIKE '{$user}' AND login.password LIKE '{$password}'"; } else { $this->query .= "login.user LIKE '{$user}' AND login.password LIKE '{$password}'"; } $result = $this->RawQuery($this->query); if (count($result) >= 1) { session_start(); $_SESSION['login'] = $result[0]; return TRUE; } else { return FALSE; } }
$url_err = null; $url_index = null; if (SivarApi\Tools\Validation::Is_Empty_OrNull($redirect)) { $url = "login.php"; $url_err = "login.php?error=true"; $url_index = "index.php"; } else { $url = "login.php?redirect=" . $_REQUEST['redirect']; $url_err = "login.php?error=true&redirect=" . $_REQUEST['redirect']; $url_index = "index.php?redirect=" . $_REQUEST['redirect']; } if (!isset($_POST['username'])) { $header->redirect(FunctionsController::GetUrl($url)); } if (preg_match("/[^A-Za-z0-9]/", $user) || preg_match("/[^A-Za-z0-9]/", $pass)) { if (!\SivarApi\Tools\Validation::CheckEmail($user)) { $header->redirect(FunctionsController::GetUrl($url_err)); exit; } } $admin_controller = new AdminController(); $is_user = $admin_controller->GetLogin($user, $pass); if ($is_user) { $hora_entrada = FunctionsController::get_time(); $fecha = FunctionsController::get_date(); $id_user = Session::GetSession("login", "id"); if (!$admin_controller->SessionActive(Session::GetSession('login', "id_log"))) { $id_log = $admin_controller->Create_Log($id_user, $hora_entrada, $fecha); $admin_controller->UpdateSession(Session::GetSession('login', "id_log"), 1); } else { $_SESSION['DUPLICATE_SESSION'] = true;