getError(); if ($error) { return false; } $result = $client->call("valida_user", array($user, $pass)); if ($client->fault) { return false; } else { $error = $client->getError(); if ($error) { return false; } else { if($result) return 1; else return 0; } } } if(!isset($_POST["username"]) || !isset($_POST["passwd"])){ $return["error"] = "No se recibieron los datos"; }else{ $usr = trim(filter_input(INPUT_POST, "username"));//limpia texto $pass = $_POST["passwd"]; //trim(filter_input(INPUT_POST, "passwd"));//limpia texto $valido = validaUsuario($usr, $pass);//false = error, 0 = sin permiso, 1 = con permiso if($valido === false){ $return["error"] = "El usuario y/o contraseña son incorrectos"; }else if($valido == 1){//valido //busca en DB if ( ACTUALIZA && strtolower(substr($usr, 0, 2)) == "al") { $url = "http://ateneapruebas.lci.ulsa.mx/calificaciones"; $data = array( 'clave' => $usr, 'contraseña' => $pass, ); $curl = curl_init($url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); $response = curl_exec($curl); if($response === false) { echo curl_error($curl); } curl_close($curl); } $usr_db = limpiaClave($usr); $stmt = $pdo->prepare('Select * from fs_validaclaveulsa_all(:usr) AS "Usuario_id"'); $stmt->bindParam(":usr", $usr_db); if(!$stmt->execute()){ $return["error"] = "Ocurrió un error al validar los datos"; }else{ $usr_rs = $stmt->fetch();//Devuelve sólo 1 resultado $stmt->closeCursor(); // cierra conexion de resultado $stmt = $pdo->prepare('Select * from fs_usuario_all(:id)'); $stmt->bindParam(":id", $usr_rs["Usuario_id"]); if(!$stmt->execute()){ $return["error"] = "No existe ese usuario en el sistema de ingeniería"; }else{ $rs = $stmt->fetch(); $stmt->closeCursor(); // cierra conexion de resultado //Obtiene 2 corrreos $stmt = $pdo->prepare('Select * from fs_contacto(:id,3 , NULL) ORDER BY "PerfilContacto_id" LIMIT 2 OFFSET 0');//3 correo, Null todos $stmt->bindParam(":id", $usr_rs["Usuario_id"]); if(!$stmt->execute()){ $return["error"] = "No existe ese usuario en el sistema de ingeniería"; }else{ $contacto_rs = $stmt->fetchAll(); $return["id"] = $rs["Usuario_id"]; $return["nombre"] = $rs["Usuario_nombre"]; $return["apellidos"] = $rs["Usuario_apellidos"]; $return["curp"] = $rs["Usuario_curp"]; $return["correo_id1"] = ""; $return["correo_id2"] = ""; $return["correo1"] = ""; $return["correo2"] = ""; $i = 1; foreach($contacto_rs as $correo){ $return["correo_id".$i] = $correo["Contacto_id"]; $return["correo".$i] = $correo["Contacto_valor"]; $i++; } //Si el primer correo no es institucional, es personal y se va a campo 2 if( strpos($return["correo1"], "lasalle.mx") === false && strpos($return["correo1"], "lasallistas.org.mx") === false ){ $tmp = $return["correo2"]; $return["correo2"] = $return["correo1"]; $return["correo1"] = $tmp; $tmp = $return["correo_id2"]; $return["correo_id2"] = $return["correo_id1"]; $return["correo_id1"] = $tmp; } } $stmt->closeCursor(); // cierra conexion de resultado $return["administrativo"] = $rs["Usuario_administrativo"]; $return["tel_fijo_id"] = ""; $return["tel_fijo"] = ""; $return["tel_cel_id"] = ""; $return["tel_cel"] = ""; if($rs["Usuario_administrativo"]){ //Obtiene 1 teléfono de casa $stmt = $pdo->prepare('SELECT * from fs_contacto(:id, 1 , NULL) WHERE "SubtipoContacto_id" = 1 ORDER BY "PerfilContacto_id" LIMIT 1 OFFSET 0');//3 correo, Null todos $stmt->bindParam(":id", $rs["Usuario_id"]); if($stmt->execute()){ $contacto_rs = $stmt->fetch(); $return["tel_fijo_id"] = $contacto_rs["Contacto_id"]; $return["tel_fijo"] = $contacto_rs["Contacto_valor"]; } $stmt->closeCursor(); // cierra conexion de resultado //Obtiene 1 teléfono celular $stmt = $pdo->prepare('SELECT * from fs_contacto(:id, 1 , NULL) WHERE "SubtipoContacto_id" = 2 ORDER BY "PerfilContacto_id" LIMIT 1 OFFSET 0');//3 correo, Null todos $stmt->bindParam(":id", $rs["Usuario_id"]); if(!$stmt->execute()){ $errorMessage = "No existe ese usuario en el sistema de ingeniería"; }else{ $contacto_rs = $stmt->fetch(); $return["tel_cel_id"] = $contacto_rs["Contacto_id"]; $return["tel_cel"] = $contacto_rs["Contacto_valor"]; } $stmt->closeCursor(); // cierra conexion de resultado } } } $stmt->closeCursor(); // cierra conexion de resultado $stmt = null; // cierra conexion }else{//error de autenticación $return["error"] = "El usuario y/o contraseña son incorrectos"; $error = true; } } //Si no entró a ninguna, no tiene permisos $return["json"] = json_encode($return); echo json_encode($return); $pdo = null; ?>