Exemplo n.º 1
0
        protected async void btnRecuperarContrasenia_Click(object sender, EventArgs e)
        {
            if (!string.IsNullOrEmpty(txtEmail.Text))
            {
                TBLUSUARIOS usuXCorreo = LogicaUsuarios.buscarCorreoExistente(txtEmail.Text);

                bool existeCorreo = !usuXCorreo.EMAIL_USUARIO.Equals("");

                if (existeCorreo)
                {
                    string codigo = GenerateNewRandom();

                    LogicaCodigos.guardarCodigo(usuXCorreo.ID_USUARIO, codigo);
                    LogicaUsuarios.cambiarEstadoRecuperacion(usuXCorreo);

                    string subject    = "Recuperación de contraseña";
                    string htmlString = @"
                          <html>
	                          <body>
	                              <h3>Estimad@ "     + usuXCorreo.NOMBRE_USUARIO + @"</h3>
                                  <p><i>Pasos para la recuperación de contraseña</i></p>
                                  <p>Tu usuario es: <b style='font-size: 20px;'>" + usuXCorreo.USU_USUARIO + @"</b></p>
	                              <p>Ingresa el siguiente codigo: </p>
                                  </br>
                                  <code style='font-size: 20px;'>" + codigo.ToString() + @"</code >
                                  </br>
	                              <p>El código deberás ingresarlo en el siguiente enlace: </p>
                                  </br>
                                  <a href = 'https://localhost:44305/loginTemplates/RecuperarPage.aspx' target = '_blank'>https://localhost:44305/loginTemplates/RecuperarPage.aspx</a>
                                  </br>                                  
                                  <p>En caso de no poder ingresar a la direcion, ingrese al Login del sistema e ingrese su usuario y cualquier contraseña. Le redireccionará automaticamente a la recuperacion de contraseña.</p>
	                          </body>
	                      </html>"    ;

                    EmailProvider ep = new EmailProvider(subject, htmlString, txtEmail.Text);

                    await ep.SendEmailAsync();

                    mostrarToast("Correo Enviado", "El correo ha sido enviado a: " + txtEmail.Text + ". Revise su correo y siga las instrucciones para recuperar sus credenciales.", "Success", 6000);
                    Limpiar();
                }
                else
                {
                    mostrarToast("Correo Inexistente", "El correo provisto no está registrado", "Error");
                }
            }
            else
            {
                mostrarToast("Error", "Esta vacio", "Error");
            }
        }