¿Cómo crear un tema que solo los administradores puedan usar?

¿Cómo crear un tema que no solo los administradores puedan usar?

No estoy seguro de entender a qué te refieres. ¿Podrías dar más detalles?

1 me gusta

Tengo muchos problemas en mi foro, ya comenté aquí en meta al respecto, y como no pude deshabilitar las funciones peligrosas de los moderadores, porque Discourse no tiene esa opción, hice una solución provisional a través de CSS, para eliminar las opciones que son peligrosas para mi foro y a las que tienen acceso, cuando lo hice a través de CSS resultó que también me las quitaron, opciones como ver IP, banear, eliminar todas las publicaciones, etc… Las quité de todos los temas, me gustaría dejar solo un tema sin CSS para poder ver las opciones, pero que solo yo pueda usar ese tema.

1 me gusta

No sé por qué usas CSS y temas para administrar a tus moderadores, pero así no se hace. Usa niveles de confianza para crear moderadores de categoría y también elige a tus moderadores con más cuidado. Probablemente solo estés creando más problemas para ti mismo al intentar limitar las funciones de los moderadores a través de CSS y temas.

1 me gusta

Resolví todos mis problemas modificando los roles de mis moderadores a través de CSS. Es una situación muy compleja y la única solución real fue esta. Ya probé la moderación por categorías y no fue viable para mi foro, no fue interesante para la demanda. La única forma que resolvió mis problemas fueron las modificaciones a través de CSS. Como Discourse deja las mismas opciones de moderador para el administrador, esta fue la única solución. Pero ahora solo necesito una forma de poder usar un tema que no tenga modificaciones CSS. Así no tengo que desactivarlo cada vez que lo uso.

Voy a contarles un poco sobre lo que pasó: Vivo en Brasil, aquí hay 214,3 millones de habitantes, la mayoría desempleados y sin poder adquisitivo. Mucha gente usa internet como medio de entretenimiento, así que mi foro encaja en eso. Pero la existencia de mi foro amenaza mucho a otro foro, que ya ha realizado NUMEROSOS ataques al mío, y ya ha comprado a muchos de mis moderadores, innumerables moderadores ya han eliminado usuarios, eliminado mensajes, filtrado IPs a otros, realmente me han destruido. Ya he pasado meses sin moderadores, pero es muy difícil tener un foro sin moderador, quiero volver a poner moderadores, pero de nada sirve elegir bien, no sé cómo es la cultura de los países nórdicos, pero al menos en la cultura del sector de foros de mi país, la gente no se lo toma muy en serio y se corrompe fácilmente, tarde o temprano el dinero habla más fuerte y pueden usar sus poderes para destruir mi foro, la única solución que tengo es que los moderadores no tengan los mismos poderes que los administradores, y eso fue lo único que lo solucionó, a través de CSS.

1 me gusta

Ya había creado un tema sobre esto, que inició un gran debate que no llegó a ninguna parte, muchos me aconsejaron que eligiera mejor a los moderadores, para que tuviera un sentido de criterio y eligiera personas más confiables, bueno, pero eso no se aplica a los foros mundiales en los que estoy, la única solución fue quitarles algunos poderes a los moderadores (IP, Ban, Eliminar todas las publicaciones, verificar correo electrónico, etc.) pero eso también me afectó a mí.

Hola :wave:
Puedes usar el Modo Seguro (igual que tus moderadores) para deshabilitar temas.

Con secciones personalizadas puedes crear tu acceso directo a /safe-mode

  1. Crea una sección personalizada en tu barra lateral como esta.


    Debería verse así. (Añade un título, Nombre y Enlace /safe-mode) Asegúrate de no marcar la casilla Hacer esta sección pública y visible para todos.

  2. Se colocará en la sección personalizada del Menú de Navegación (barra lateral).

  3. Aquí puedes deshabilitar los temas y componentes de temas. Haz clic en el botón Entrar en Modo Seguro.

4 Me gusta

¿Quizás revisar a los moderadores de categoría?

2 Me gusta

Si un actor malintencionado descubre el modo seguro, sus contramedidas CSS serán ineficaces.

La única forma de proteger Discourse es mediante una cuidadosa asignación de privilegios a través del backend.

4 Me gusta

Es decir, que necesitarías un plugin personalizado que hiciera esos cambios. A menos que tengas un presupuesto (¿quizás entre 1000 y 5000 dólares?), necesitarás probar con moderadores de categoría o tl4.

2 Me gusta

Ya se habló de ello aquí: :slight_smile:

1 me gusta

Creo que debería ser posible hacer que el componente temático oculte las cosas para todos excepto para los administradores.

Pero el modo seguro seguiría siendo una forma fácil de eludirlo. Quizás un plugin rápido y sucio podría deshabilitar esas funciones sin tanto tiempo como el que estimé originalmente.

1 me gusta

Estoy de acuerdo con casi todo lo que todos han dicho aquí.

Si realmente quieres ir por el camino de CSS, aquí te explico cómo hacer que tus modificaciones de CSS solo se apliquen a los no administradores:

En la pestaña Head de tu tema, escribe esto:

    let currentUser = api.getCurrentUser();
    if (currentUser.admin == true) {
         document.querySelector("body").classList.add("is-admin");
    }

Envuelve todas tus reglas de CSS con body:not(.is-admin) { (tu CSS) } como por ejemplo:

body:not(.is-admin) {
    #main {
        background: pink;
    }
}

En mi ejemplo, el fondo rosa se aplicará a todos excepto a los usuarios administradores.

3 Me gusta

Discourse agrega automáticamente clases basadas en grupos a \u003cbody\u003e, por lo que debería ser posible omitir el JS y hacer algo como\n\n~~\nbody:not(.group-admins) #main {\n background: pink;\n}\n~~

No tengo otra clase específica de grupo que staff como administrador en mi instancia de prueba (última versión de Discourse):

<body> class="chat-enabled staff has-sidebar-page navigation-topics docked"

Hasta donde puedo ver, ni en <html> ni en ninguna otra etiqueta.

En meta, usamos CSS Classes for Current User's Groups, que también podría usarse en el caso de daniela. :slight_smile:

2 Me gusta

Ahhhhh, eso es lo que me confundió. Estaba mirando solo en Meta :man_facepalming: Gracias @Canapin

3 Me gusta

TE AMO MUCHO

Gracias por mostrarme esto, no pude resolver este problema durante más de 1 año.

2 Me gusta