public ActionResult Registrarse(FrmRegistroCliente registroCliente) { if (registroCliente.CUIL == null && registroCliente.Direccion == null && registroCliente.Email == null && registroCliente.Psw == null && registroCliente.RazonSocial == null && registroCliente.Telefono == null) { registroCliente.CUIL = registroCliente.CUIL_Eng; registroCliente.Direccion = registroCliente.Direccion_Eng; registroCliente.Email = registroCliente.Email_Eng; registroCliente.Psw = registroCliente.Psw_Eng; registroCliente.RazonSocial = registroCliente.RazonSocial_Eng; registroCliente.Telefono = registroCliente.Telefono_Eng; } var ln = new NegocioCuenta(); var ws = new WebService(); var mensajeria = new Mensajeria(); TraducirPagina((String)Session["IdiomaApp"]); Session["ErrorRegistro"] = null; Session["Excepcion"] = null; // Usuario existente, solo devuelvo el error. if (ln.ValidarUsuario(registroCliente.Email) == false) { if ((String)Session["IdiomaApp"] == "Esp" || (String)Session["IdiomaApp"] == null) { Session["ErrorRegistro"] = "EL CORREO DE REGISTRO YA EXISTE"; } else { Session["ErrorRegistro"] = "THAT USER ALREADY EXIST"; } return(RedirectToAction("Registrarse")); } if (ws.ValidarCUIT(registroCliente.CUIL) == false) { if ((String)Session["IdiomaApp"] == "Esp" || (String)Session["IdiomaApp"] == null) { Session["ErrorRegistro"] = "EL CUIT ES INVÁLIDO"; } else { Session["ErrorRegistro"] = "INVALID CUIT NUMBER"; } return(RedirectToAction("Registrarse")); } var usuario = new Usuario(); usuario.RazonSocial = registroCliente.RazonSocial; usuario.Email = registroCliente.Email; usuario.Psw = registroCliente.Psw; usuario.CUIL = registroCliente.CUIL.ToString(); usuario.Direccion = registroCliente.Direccion; usuario.Localidad = registroCliente.Localidad; usuario.PerfilUsr = new PerfilUsr { Id = 3, Descripcion = "Cliente" }; usuario.Idioma = new Idioma { Id = 1, Descripcion = "Español", Abreviacion = "Esp" }; usuario.Estado = "S"; usuario.FechaAlta = DateTime.Now; usuario.FechaBaja = new DateTime(2000, 01, 01); // Características propias de Clientes. usuario.Nombre = registroCliente.RazonSocial; usuario.Apellido = registroCliente.RazonSocial; usuario.Usr = registroCliente.Email; usuario.Telefono = registroCliente.Telefono; // Registro Usuario. var usrSesion = ln.RegistrarUsuario(usuario); ln.OtorgarPermisosCliente(usrSesion.Id); try { // Envío correo de bienvenida. var cuerpoMsj = "Bienvenido a Implantagraf. Muchas gracias por confiar en nosotros, esperamos que encuentres lo que buscas y no dudes en consultarnos por lo que necesites."; var asuntoMsj = "Bienvenido!!"; mensajeria.EnviarCorreo("*****@*****.**", usuario.Email, asuntoMsj, cuerpoMsj); } catch { } if (usrSesion.Nombre != "" && usrSesion.PerfilUsr.Descripcion != "") { Session["IdUsuario"] = usrSesion.Id.ToString(); Session["NombreUsuario"] = usrSesion.Nombre; Session["RazonSocialUsuario"] = usrSesion.RazonSocial; Session["PerfilUsuario"] = usrSesion.PerfilUsr.Descripcion; Session["EmailUsuario"] = usrSesion.Email; Session["CodUsuario"] = usrSesion.Id; Session["DireccionUsuario"] = usrSesion.Direccion; Session["UsrLogin"] = usrSesion.Usr; HttpCookie cookie = new HttpCookie("UsrLogin"); cookie.Value = usrSesion.Usr; Response.Cookies.Add(cookie); return(RedirectToAction("Index", "Home")); } else { var audi = new Auditoria(); audi.grabarBitacora(DateTime.Now, "SISTEMA", "ERROR CAMBIO CLAVE", "ERROR LEVE", "Error al intentar registrar un Usuario."); return(RedirectToAction("Index", "Home")); } }
public ActionResult EnviarNuevaPsw(FrmOlvidoPsw formularioCambioPsw) { if (formularioCambioPsw.Usuario == null) { formularioCambioPsw.Usuario = formularioCambioPsw.Usuario_Eng; } var negocioUsuario = new NegocioCuenta(); // Traduce páginas de CUENTA. TraducirPagina((String)Session["IdiomaApp"]); if (negocioUsuario.ValidarUsuario(formularioCambioPsw.Usuario)) { if ((String)Session["IdiomaApp"] == "Esp" || (String)Session["IdiomaApp"] == null) { Session["ErrorRecuperoPsw"] = "El Usuario que ingreso es inválido."; } else { Session["ErrorRecuperoPsw"] = "Invalid User."; } return(RedirectToAction("RecuperarPsw")); } var servicioCorreo = new Mensajeria(); var usuarioActual = negocioUsuario.BuscarUsuarioPorUsuario(formularioCambioPsw.Usuario); negocioUsuario.ActualizarPswUsuario(usuarioActual.Usr, "Inicio1234"); var aud = new Auditoria(); aud.grabarBitacora(DateTime.Now, usuarioActual.Usr, "BLANQUEO PSW", "INFO", "El usuario ha pedido nueva clave."); try { if ((String)Session["IdiomaApp"] == "Esp" || (String)Session["IdiomaApp"] == null) { var asuntoMsj = "Cambio de Contraseña"; var cuerpoMsj = "Se ha reestablecido su contraseña. La misma es 'Inicio1234'. Por favor cuando ingrese correctamente se recomienda cambiarla. Muchas gracias."; servicioCorreo.EnviarCorreo("*****@*****.**", usuarioActual.Email, asuntoMsj, cuerpoMsj); } else { var asuntoMsj = "PSW Changed"; var cuerpoMsj = "Your Psw has been changed. The new one is 'Inicio1234'. Please when you Login again for the first time chage it. Thank you very much."; servicioCorreo.EnviarCorreo("*****@*****.**", usuarioActual.Email, asuntoMsj, cuerpoMsj); } } catch { var audi = new Auditoria(); audi.grabarBitacora(DateTime.Now, "SISTEMA", "ERROR CAMBIO CLAVE", "ERROR LEVE", "Error al intentar cambiar la PSW."); return(RedirectToAction("Index", "Home")); } return(View()); }
public ActionResult Login(FrmLogin login) { var priv = new Privacidad(); if (login.Usuario == null && login.Contraseña == null) { login.Usuario = login.Usuario_Eng; login.Contraseña = login.Contraseña_Eng; } var ln = new NegocioCuenta(); var seg = new Privacidad(); // Traduce páginas de LOGIN. TraducirPagina((String)Session["IdiomaApp"]); // Usuario con Sesión activa. if (ln.ValidarSesionActiva(login.Usuario)) { Session["ErrorLogin"] = ViewBag.ERROR_LOGIN_SESION_ACTIVA; return(RedirectToAction("Login")); } Session["IdUsuario"] = null; Session["NombreUsuario"] = null; Session["PerfilUsuario"] = null; Session["EmailUsuario"] = null; Session["CodUsuario"] = null; Session["DireccionUsuario"] = null; Session["RazonSocialUsuario"] = null; Session["UsrLogin"] = null; Session["ErrorLogin"] = null; Session["Excepcion"] = null; // Usuario incorrecto, solo devuelvo el error al Login. if (ln.ValidarUsuario(login.Usuario)) { Session["ErrorLogin"] = ViewBag.ERROR_LOGIN_USUARIO_PSW_INVALIDOS; return(RedirectToAction("Login")); } // Valido que la cuenta no este bloqueada. if (ln.ValidarBloqueoCuenta(login.Usuario)) { return(RedirectToAction("CuentaBloqueada")); } // Valido que la contraseña sea correcta, en caso negativo incremento intentos fallidos. if (ln.ValidarUsuarioPsw(login.Usuario, login.Contraseña)) { Session["ErrorLogin"] = ViewBag.ERROR_LOGIN_USUARIO_PSW_INVALIDOS; //Sumo intento fallido. if (ln.SumarIntentoFallido(login.Usuario) == 3) { ln.BloquearCuentaUsuario(login.Usuario); //Bloqueo cuenta de Usuario. var aud = new Auditoria(); aud.grabarBitacora(DateTime.Now, "SISTEMA", "BLOQUEO USUARIO", "ERROR LEVE", "Se bloqueó al Usuario: " + login.Usuario); return(RedirectToAction("CuentaBloqueada")); } return(RedirectToAction("Login")); } var usrSesion = ln.Autenticar(login); //Error en la base de datos. if (usrSesion.Nombre == null || usrSesion.PerfilUsr.Descripcion == null) { var aud = new Auditoria(); aud.grabarBitacora(DateTime.Now, "SISTEMA", "ERROR LOGIN", "ERROR LEVE", "Error al intentar ingresar al sistema."); return(RedirectToAction("Index", "Home")); } //Usuario Logueado correctamente, se mapean las variables de Sesión. Session["IdUsuario"] = usrSesion.Id.ToString(); Session["NombreUsuario"] = usrSesion.Nombre; Session["RazonSocialUsuario"] = usrSesion.RazonSocial; Session["PerfilUsuario"] = usrSesion.PerfilUsr.Descripcion; Session["EmailUsuario"] = usrSesion.Email; Session["CodUsuario"] = usrSesion.Id; Session["DireccionUsuario"] = usrSesion.Direccion; Session["IdiomaApp"] = usrSesion.Idioma.Abreviacion; Session["UsrLogin"] = usrSesion.Usr; HttpCookie cookie = new HttpCookie("UsrLogin"); cookie.Value = usrSesion.Usr; Response.Cookies.Add(cookie); //Activo la Sesión. //ln.ActivarSesionCuentaUsuario(usrSesion.Usr); return(RedirectToAction("Index", "Home")); }