Wie man den Zugriff auf Button pin/unpin einschränkt

Ich habe diesen Code im Header ausprobiert

document.addEventListener("DOMContentLoaded", function() {
    setTimeout(() => {
        let userTrustLevel = parseInt(Discourse.User.current().trust_level);

        if (userTrustLevel < 4) {
            document.querySelectorAll(".pin-topic, .unpin-topic").forEach(button => {
                button.style.pointerEvents = "none";
                button.style.opacity = "0.5";
                button.title = "Sie haben keine Berechtigung, Themen anzuheften";
            });
        }
    }, 1000);  complet
});

und in CSS

.d-header-icons .pin-topic,
.d-header-icons .unpin-topic,
.controls .pin-topic,
.controls .unpin-topic {
    display: none !important;
}

aber ein einfacher Benutzer mit Vertrauensstufe 1 oder 0 kann auf die Anheften-Schaltfläche tippen und sie sehen.

Themen automatisch lösen, wenn der Benutzer den unteren Rand erreicht, standardmäßig. Dies ist aus
Themen automatisch lösen, wenn der Benutzer den unteren Rand erreicht. Dies ist aus

Hallo, willkommen! :wave:

Sprichst du über diese Buttons?

Du kannst die Buttons nur mit CSS ausblenden.

Installiere zuerst diese Komponente: CSS Classes for Current User's Groups. Sie fügt die Namen der aktuellen Benutzergruppen, z. B. group-<name>, in das <body>-Element ein.

Dann kannst du auf alles abzielen:

:not(.group-trust_level_4) #topic-footer-buttons .pinned-button {
  display: none;
}
5 „Gefällt mir“

Beachten Sie auch, dass ein Thema an mehreren Stellen angeheftet/nicht angeheftet werden kann:

4 „Gefällt mir“

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.