Слушатель события входа

Привет,

Я пытаюсь отслеживать входы пользователей на форуме нашего клиента. По сути, мне нужно создать слушатель событий (на чистом JS), который будет запускать JavaScript-функцию каждый раз, когда пользователь входит в форум.

Существует ли событие DOM, на которое можно подписаться?

Я пытаюсь реализовать это в Google Tag Manager.

Спасибо.

Вы можете использовать что-то подобное во вкладке common > header компонента темы.

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

  // Если пользователь уже вошёл в систему, выходим
  if (user) {
    return;
  }

  // Здесь выполните ваши действия...
  const clickCallback = (clickEvent) => {
    console.log(clickEvent);
    alert("Пользователь входит в систему");
    // ..
    // ..
  };

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

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

Добавьте необходимый код в функцию clickCallback, и она сработает при нажатии пользователем на кнопку Войти внутри модального окна. У этой кнопки в настоящее время отсутствует идентификатор на мобильных устройствах, но это будет исправлено после слияния этого запроса.

Огромное спасибо за ответ, Джо!