Soy nuevo pero estoy interesado en resolver el problema, así que le pregunté a chat-gpt:
Aquí está la respuesta:
El script que encontraste es un buen comienzo. Está modificando el controlador poll-ui-builder para establecer la propiedad publicPoll en true cuando se llama a la función onShow() del controlador. Esto, de hecho, está destinado a ser agregado como un Componente de Tema.
Sin embargo, el código podría no estar funcionando debido al orden de ejecución. El método onShow() original establece publicPoll en false y luego la modificación establece publicPoll en true después.
Una forma correcta sería llamar primero al método onShow del padre y luego establecer publicPoll en true:
<script type="text/discourse-plugin" version="0.8">
api.modifyClass("controller:poll-ui-builder", {
onShow() {
this._super(...arguments);
this.set('publicPoll', true);
}
});
</script>
Puedes agregar este script a tu tema siguiendo estos pasos:
- Ve al panel de administración de Discourse.
- En la sección “Personalizar”, haz clic en “Temas”.
- Selecciona el tema que deseas modificar.
- En la pantalla de edición del tema, haz clic en “Editar CSS/HTML”.
- En la barra lateral izquierda, haz clic en “</>” Común.
- Pega el script anterior en la sección “</>” Común.
- Haz clic en el botón “Guardar”.
Esto aplicará el cambio a tu tema. Recuerda que los cambios en el tema solo se aplican a los usuarios que están utilizando ese tema en particular. Si tienes varios temas, deberás agregar esta modificación a cada uno de ellos.
Además, recuerda borrar la caché de tu navegador o realizar una recarga forzada para asegurarte de que los cambios se carguen correctamente.
Intentaré seguir estos pasos con el administrador de nuestro Foro, pero esto lleva tiempo. Si alguien más aquí quiere intentarlo primero y dar su opinión, estaría muy agradecido.
Otra cosa que me encantaría cambiar es el comportamiento de la interfaz de usuario, quiero saltarme la pantalla simple, así que le pregunté a chat-gpt nuevamente:
En tu código actual, la vista extendida está controlada por la propiedad showAdvanced. Si esta se establece en true, se mostrará la vista avanzada.
Para mostrar siempre la vista avanzada, puedes modificar el método onShow() en el controlador poll-ui-builder para establecer showAdvanced en true. Puedes agregar esta modificación al componente de tema que creaste anteriormente. Aquí tienes el script actualizado:
<script type="text/discourse-plugin" version="0.8">
api.modifyClass("controller:poll-ui-builder", {
onShow() {
this._super(...arguments);
this.set('publicPoll', true);
this.set('showAdvanced', true);
}
});
</script>
Recuerda seguir los pasos que describí anteriormente para agregar este script a tu tema. Una vez que el script se guarde, la vista avanzada siempre debería mostrarse cuando se cargue la interfaz de usuario de la encuesta.
Nuevamente, recuerda borrar la caché de tu navegador o realizar una recarga forzada para asegurarte de que los cambios se carguen correctamente.
Me encantaría intentar y probar por mí mismo de alguna manera, pero como mencioné antes, solo soy un moderador, no el administrador de nuestro sitio, así que esto llevará algunos días o semanas.