ERROR_GENERAL = ""
ERROR_EMAIL_NO_EXISTE = "La cuenta no existe" //Recuperado desde el backend
ERROR_EMAIL_VACIO = "Ingresar email"
ERROR_EMAIL_INVALIDO = "Ingresar email válido"
ERROR_CONTRASENIA_INCORRECTA = "La contraseña es incorrecta" // Recuperado desde el backend
ERROR_CONTRASENIA_VACIO = "Ingresar contraseña"
ERROR_NUEVAS_CONTRASEÑAS = "Las contraseñas no coinciden"
ERROR_ACTUALIZACION_CONTRASENIA = "No se terminó la actualización de contraseña"
ERROR_CODIGO_VACIO = "Ingresar código"
ERROR_CODIGO_INVALIDO = "Código inválido"
ERROR_CONEXION_INTERRUMPIDA = "Conexión interrumpida"
ERROR_SERVIDOR_INTERNO = 'Error desde el servidor. Contactar administrador'
ALERTA_DE_ERROR_INICIO = '
'
ALERTA_DE_ERROR_FIN='
'
LABEL_INICIANDO_SESION = 'Verificando cuenta'
LABEL_ENVIADNDO_CODIGO = 'Enviando código de confirmación'
LABEL_ACTUALIZANDO_CONTRASENIA = 'Actualizando contraseña'
LABEL_ACTIVANDO_CUENTA = 'Activando cuenta'
var url_envia_notificacion = '/inicio_sesion/notifica_bloqueo_usr'
function isEmail(email) {
var regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/;
return regex.test(email);
}
function getValueCampo(campo){
let valor = $("#" + campo).val();
return valor
}
function notificarErrorCampo(campo, notificacion){
let error = ALERTA_DE_ERROR_INICIO + notificacion + ALERTA_DE_ERROR_FIN;
$("#" + campo + "Help").html(error);
$("#" + campo + "Help").show();
}
function quitarNotificacionErrorCampo(campo){
$("#" + campo + "Help").html('');
$("#" + campo + "Help").hide();
}
// campo: email, password,
function isCampoVacio(campo){
if(!getValueCampo(campo)){
return true;
}
return false;
}
function notificarErrorInJson(data){ // data recuperado desde backend
let campos = ['email', 'password', 'codigo'];
let error;
for(campo in data){
if (!campos.includes(campo)){
mensaje = data[campo]
if (campo == 'blocked'){
alertaSwitch('alert', 'Usuario bloqueado', mensaje);
enviarNotificacion({'email': getValueCampo('email')})
}
else {alertaSwitch('error', 'ERROR', mensaje);}
continue
}
error = data[campo];
notificarErrorCampo(campo, error);
}
}
function notificarErrorNuevaContrasenia(data){
campo = 'nuevaContrasenia2'
if('password' in data){
notificarErrorCampo(campo, data['password'])
}
}
function isCorrectEmail(email){
if(isCampoVacio(email)){
notificarErrorCampo(email, ERROR_EMAIL_VACIO);
return false;
}
if (!isEmail(getValueCampo(email))){
notificarErrorCampo(email, ERROR_EMAIL_INVALIDO);
return false;
}
quitarNotificacionErrorCampo(email)
return true;
}
function isCorrectContrasenia(contrasenia){
if(isCampoVacio(contrasenia)){
notificarErrorCampo(contrasenia, ERROR_CONTRASENIA_VACIO);
return false;
}
quitarNotificacionErrorCampo(contrasenia)
return true;
}
function isCorrectCodigo(codigo){
if(isCampoVacio(codigo)){
notificarErrorCampo(codigo, ERROR_CODIGO_VACIO);
return false;
}
quitarNotificacionErrorCampo(codigo)
return true;
}
function isCorrectNuevaContrasenia(contrasenia1, contrasenia2){
let bandera_error=0;
if(isCampoVacio(contrasenia1)){
notificarErrorCampo(contrasenia1, ERROR_CONTRASENIA_VACIO);
bandera_error=1;
}else{
quitarNotificacionErrorCampo(contrasenia1)
}
if(isCampoVacio(contrasenia2)){
notificarErrorCampo(contrasenia2, ERROR_CONTRASENIA_VACIO);
bandera_error=1;
}else{
quitarNotificacionErrorCampo(contrasenia2)
}
if(bandera_error){
return false;
}
if(getValueCampo(contrasenia1) != getValueCampo(contrasenia2)){
notificarErrorCampo(contrasenia2, ERROR_NUEVAS_CONTRASEÑAS);
return false
}
quitarNotificacionErrorCampo(contrasenia2)
return true;
}
function cambiarTitulo(titulo){
$("#titulo").html(titulo)
}
function ocultarId(id){
$("#" + id).hide()
}
function estructurarFormulario(campos, submits){
let id_campos = ['Email', 'Contrasenia', 'Codigo', 'NuevaContrasenia1', 'NuevaContrasenia2']; // sin anteceder mostrar
let id_submits = ['iniciar_sesion', 'mandar_codigo', 'actualizar_contrasenia', 'preregistrar', 'registrar', 'cancelar']
for(let i=0; i