Exemplo n.º 1
0
        public ActionResult RecuperarContraseña(CorreoModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    using (_db)
                    {
                        var user = _validacion.UsuarioEmail(model.Email);

                        if (user != null)
                        {
                            //insertamos o actualizamos la fecha de control
                            _validacion.ActualizarFecha(model.Email);

                            // Generar el enlace HTML enviado por correo electrónico

                            string resetLink = UrlEmail(user);

                            // Intento de enviar el correo electrónico

                            var envio = new Email();
                            envio.Send(resetLink, model.Email);
                            ViewBag.Successful = _mensajes.AlertaCorreoEnviado();
                        }
                        else // correo no encontrado
                        {
                            ViewBag.Error = _mensajes.AlertaCorreoErroneo();
                        }
                    }
                }
                catch (Exception e)
                {
                    ViewBag.Error = _mensajes.AlertaCorreo() + e.Message;
                }
            }

            ModelState.Clear();

            return(View());
        }