protected void btnregistrar_Click(object sender, EventArgs e)
        {
            string nombre      = txtNombre.Text.Trim();
            string apellido    = txtApellido.Text.Trim();
            string email       = txtEmail.Text.Trim();
            string usuario     = txtUsername.Text.Trim();
            string contrasenia = txtPassword.Text.Trim();
            string telefono    = txtTelefono.Text.Trim();
            string pathImagen  = "";

            ComprobarEmail();
            ComprobarUsuario();

            if (!string.IsNullOrEmpty(nombre) && !string.IsNullOrEmpty(apellido) && !string.IsNullOrEmpty(email) && !string.IsNullOrEmpty(usuario) && !string.IsNullOrEmpty(contrasenia) && !string.IsNullOrEmpty(telefono))
            {
                pathImagen = SaveAvatarLocal(usuario);
                if (!string.IsNullOrEmpty(pathImagen))
                {
                    try
                    {
                        TBLUSUARIOS usu = new TBLUSUARIOS();
                        usu.NOMBRE_USUARIO    = nombre;
                        usu.APELLIDO_USUARIO  = apellido;
                        usu.EMAIL_USUARIO     = email;
                        usu.USU_USUARIO       = usuario;
                        usu.PASS_USUARIO      = LogicaUsuarios.GenerateMD5(contrasenia);
                        usu.TELEFONO_USUARIO  = telefono;
                        usu.FOTO_PATH_USUARIO = pathImagen;

                        LogicaUsuarios.guardarUsuario(usu);
                        Session["toastTitulo"]  = "Usuario Registrado";
                        Session["toastMensaje"] = "Sus datos han sido registrados. Espere a que el administrador confirme su registro.";
                        Session["toastClass"]   = "success";

                        Response.Redirect("LoginPage.aspx");
                        //mostrarToast("Usuario Registrado", "Sus datos han sido registrados. Espere a que el administrador confirme su registro.", "Success", 6000);
                    }
                    catch (Exception ex)
                    {
                        mostrarToast("Error", "Error al guardar el usuario: " + ex.Message, "Error", 8000);
                        return;
                    }
                }
                else
                {
                    mostrarToast("Imagen", "Presione en el boton 'Cargar Imagen' para mostrar el avatar a cargar. es posible que deba ingresar de nuevo su contraseña", "Warning", 8000);
                }
            }
            else
            {
                mostrarToast("Campos Vacíos", "No deje los campos vacíos", "Error");
            }
        }
Exemple #2
0
 protected void btnCambiarContrasenia_Click(object sender, EventArgs e)
 {
     if (!string.IsNullOrEmpty(txtPassword.Text) && !string.IsNullOrEmpty(txtPasswordConfirm.Text))
     {
         if (txtPassword.Text == txtPasswordConfirm.Text)
         {
             if (LogicaUsuarios.GenerateMD5(txtPassword.Text) != Session["contrseniaUsuario"].ToString())
             {
                 TBLUSUARIOS usuarioCambiar = (TBLUSUARIOS)Session["usuarioRecuperar"];
                 LogicaUsuarios.cambiarContrasenia(usuarioCambiar, LogicaUsuarios.GenerateMD5(txtPassword.Text));
                 Session["toastTitulo"]  = "Recuperación de contraseña exitosa.";
                 Session["toastMensaje"] = "Ingrese nuevamente con su nueva contraseña.";
                 Session["toastClass"]   = "success";
                 Response.Redirect("LoginPage.aspx");
             }
             else
             {
                 mostrarToast("Misma contrasenia", "La contraseña nueva no puede ser la misma a la que desea recuperar", "Error", 5000);
             }
         }
     }
 }
        private void ingresar()
        {
            if (string.IsNullOrEmpty(txtUsername.Text))
            {
                mostrarToast("Advertencia", "No deje vácio el nombre de usuario", "Warning");
                return;
            }
            if (string.IsNullOrEmpty(txtPassword.Text))
            {
                mostrarToast("Advertencia", "No deje vácio el campo de contraseña", "Warning");
                return;
            }

            bool existeNombre  = LogicaUsuarios.autenticaNombreUsuario(txtUsername.Text);
            bool existeUsuario = LogicaUsuarios.autenticar(txtUsername.Text, LogicaUsuarios.GenerateMD5(txtPassword.Text));

            TBLUSUARIOS usuarioExistente = new TBLUSUARIOS();

            if (existeNombre)
            {
                usuarioExistente = LogicaUsuarios.buscarXUsuario(txtUsername.Text);

                if (!string.IsNullOrEmpty(usuarioExistente.FOTO_PATH_USUARIO))
                {
                    string filePath = usuarioExistente.FOTO_PATH_USUARIO;
                    cambiarImagen(filePath);
                }
                else
                {
                    cambiarImagen(pathDefaultAvatar);
                }

                comprobarEstadoUsuario(usuarioExistente);

                if (existeUsuario)
                {
                    TBLUSUARIOS usuario = new TBLUSUARIOS();
                    try
                    {
                        usuario = LogicaUsuarios.autenticarXLogin(txtUsername.Text, LogicaUsuarios.GenerateMD5(txtPassword.Text));
                    }
                    catch (Exception ex)
                    {
                        mostrarToast("Error", "Error: " + ex.Message, "Error");
                        throw;
                    }
                    int  rolUsuario    = usuario.TBLROLE_ID;
                    char estadoUsuario = usuario.ESTADO_USUARIO;


                    Session["nomUsuario"]    = usuario.NOMBRE_USUARIO.ToString();
                    Session["estadoUsuario"] = usuario.ESTADO_USUARIO.ToString();
                    Session["passUsuario"]   = usuario.PASS_USUARIO.ToString();
                    Session["usuUsuario"]    = usuario.USU_USUARIO.ToString();

                    if (estadoUsuario == 'A')
                    {
                        switch (rolUsuario)
                        {
                        case 1:
                            //mostrarToast("Administrador", "Este es administrador", "Success", 1000);
                            Session["tipoUsuario"] = "Administrador";
                            Response.Redirect("~/HomePage.aspx");
                            break;

                        case 2:
                            //mostrarToast("Usuario", "Este es usuario", "Success", 1000);
                            Session["tipoUsuario"] = "Usuario";
                            Response.Redirect("~/HomePage.aspx");
                            break;

                        default:
                            mostrarToast("Error", "No tiene - error", "Error", 1000);
                            break;
                        }
                    }
                }
                else
                {
                    intentos            = (contador + (Convert.ToInt32(Session["count"]))).ToString();
                    Session["countOld"] = intentos.ToString();

                    if (Convert.ToInt32(intentos) >= 3)
                    {
                        try
                        {
                            LogicaUsuarios.bloquearUsu(usuarioExistente);
                            mostrarToast("Máximo de intentos", "Su usuario ha sido bloqueado por máximo de intentos permitidos (3). Consulte con el administrador.", "Error", 4000);
                            Session.Clear();
                            btnLogin.Visible = false;
                        }
                        catch (Exception ex)
                        {
                            mostrarToast("Error", "Error al bloquear usuario: " + ex.Message, "Error", 6000);
                        }
                    }
                    else
                    {
                        mostrarToast("Usuario o contraseña incorrectos", "Intentos restantes: " + intentos, "Warning", 2000);
                    }
                }
            }
            else
            {
                mostrarToast("El usuario no existe", "Usuario Inexistente", "Warning", 1000);
                cambiarImagen(pathDefaultAvatar);
            }
        }