-
-
Save parzibyte/0a9e91fb45cbd36aac593689083e42a0 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Recibe un apuntador a un apuntador de un NodoDeCliente en donde se desea colocar el usuario logueado, el inicio de la lista de clientes, el correo y la contraseña | |
Regresa 1 o 0 indicando si el correo y la contraseña coinciden. | |
Además, en caso de que el inicio de sesión sea correcto pondrá el usuario logueado en usuarioLogueado | |
*/ | |
int iniciarSesionUsuario(struct NodoDeCliente **usuarioLogueado, struct NodoDeCliente *nodo, char *correoElectronico, char *palabraSecreta) | |
{ | |
while (nodo != NULL) | |
{ | |
if (strcmp(nodo->correoElectronico, correoElectronico) == 0 && strcmp(nodo->palabraSecreta, palabraSecreta) == 0) | |
{ | |
if (nodo->habilitado == ESTADO_DESHABILITADO) | |
{ | |
printf("Credenciales correctas, pero el usuario esta deshabilitado\n"); | |
return 0; | |
} | |
*usuarioLogueado = nodo; | |
return 1; | |
} | |
nodo = nodo->siguiente; | |
} | |
return 0; | |
} | |
int menuIngresarUsuario(struct NodoDeCliente **apuntadorListaClientes, struct NodoDeCliente *clienteLogueado) | |
{ | |
char palabraSecreta[MAXIMA_LONGITUD_CADENA] = ""; | |
char correoElectronico[MAXIMA_LONGITUD_CADENA] = ""; | |
leerCorreoElectronico(correoElectronico); | |
leerPalabraSecreta(palabraSecreta); | |
int ok = iniciarSesionUsuario(&clienteLogueado, *apuntadorListaClientes, correoElectronico, palabraSecreta); | |
if (!ok) | |
{ | |
printf("Correo o palabra secreta incorrectos\n"); | |
} | |
else | |
{ | |
printf("Bienvenido, %s\n", clienteLogueado->nombre); | |
menuUsuario(apuntadorListaClientes, clienteLogueado); | |
} | |
return ok; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment