Escuchador de eventos de inicio de sesión

Hola,

Estoy intentando rastrear el inicio de sesión de los usuarios en el foro de nuestro cliente. Básicamente, me gustaría crear un detector de eventos (en vanilla JS) que ejecute una función de JavaScript cada vez que un usuario inicie sesión en el foro.

¿Hay algún evento DOM al que pueda escuchar?

Lo estoy intentando en Google Tag Manager.

Gracias.

Puedes usar algo como esto en la pestaña common > header de un componente de tema.

<script type="text/discourse-plugin" version="0.8">
  const user = api.getCurrentUser();

  // el usuario ya ha iniciado sesión, sal
  if (user) {
    return;
  }

  // haz tu trabajo aquí...
  const clickCallback = (clickEvent) => {
    console.log(clickEvent);
    alert("el usuario está iniciando sesión");
    // ..
    // ..
  };

  api.onAppEvent("modal:body-shown", (event) => {
    const loginButton = document.querySelector("#login-button");

    if (loginButton) {
      loginButton.addEventListener("click", clickCallback, { once: true });
    }
  });
</script>

Añade el código que necesites en la función clickCallback, y se activará cuando el usuario haga clic en el botón Login dentro del modal. Actualmente, esa id falta en el móvil, pero se corregirá cuando esto se fusione.

3 Me gusta

¡Muchas gracias por la respuesta, Joe!

1 me gusta