¿Cómo restringir el acceso a los botones de fijar/desfijar?

Intento este código en el encabezado

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 = "No tienes permiso para fijar temas";
            });
        }
    }, 1000);
});

y en css

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

pero un usuario simple con nivel de confianza 1 o 0 puede tocar el botón de fijar y verlo.

Desfijar automáticamente los temas cuando el usuario llega al final por defecto. está desactivado
Desfijar automáticamente los temas cuando el usuario llega al final. está desactivado

¡Hola, bienvenido! :wave:

¿Te refieres a estos botones?

Puedes ocultar los botones solo con CSS.

Primero, instala este componente: CSS Classes for Current User's Groups. Añadirá los nombres de los grupos de usuarios actuales, por ejemplo, group-<nombre>, al elemento <body>.

Luego puedes apuntar a cualquier cosa:

:not(.group-trust_level_4) #topic-footer-buttons .pinned-button {
  display: none;
}
5 Me gusta

También tenga en cuenta que hay varios lugares donde un tema se puede fijar/desfijar:

4 Me gusta

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