# Login-Ereignis-Listener

**URL:** <https://meta.discourse.org/t/login-event-listener/211653>\
**Category:** Product Support\
**Created:** [9. Dezember 2021 um 20:00 UTC](https://meta.discourse.org/t/login-event-listener/211653 "2021-12-09T20:00:51Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![Johani](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/johani/32/176920_2.png) [@Johani](https://meta.discourse.org/u/Johani)\
**Post date:** [10. Dezember 2021 um 12:31 UTC](https://meta.discourse.org/t/login-event-listener/211653/2 "2021-12-10T12:31:49Z")

</div>

Sie können etwas Ähnliches im Tab `common > header` einer Theme-Komponente verwenden.

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

  // Benutzer ist bereits angemeldet, abbrechen
  if (user) {
    return;
  }

  // erledigen Sie Ihre Arbeit hier...
  const clickCallback = (clickEvent) => {
    console.log(clickEvent);
    alert("Benutzer meldet sich an");
    // ..
    // ..
  };

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

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

```

Fügen Sie den benötigten Code in die Funktion `clickCallback` ein, und er wird ausgelöst, wenn der Benutzer auf die Schaltfläche `Login` im Modal klickt. Diese ID fehlt derzeit auf Mobilgeräten, aber das wird behoben, wenn [dies](https://github.com/discourse/discourse/pull/15255) zusammengeführt wird.

---

_[View the full topic](https://meta.discourse.org/t/login-event-listener/211653)._
