Ballotage – papeletas secretas de bolas negras y blancas


Funciones

Es un nicho bastante específico… Pero: muchos clubes, sociedades y logias admiten a nuevos miembros mediante una votación secreta con bolas negras y blancas. Este plugin lleva ese procedimiento a Discourse:

  • Una página de votación en /ballotage donde los miembros de un grupo configurado emiten un voto final – negro o blanco – durante un período establecido (por defecto, de 00:01 del día de inicio a 23:59 del día de finalización, con horas personalizadas opcionales).
  • Una página de gestión en /ballotage/manage para un grupo de supervisión y administradores: quién ha votado mientras la votación está en curso y el resultado en negro/blanco una vez que ha terminado.
  • Las votaciones pueden cancelarse, luego finalizarse (el resultado y la lista de participantes se eliminan de forma irreversible) y finalmente eliminarse de la lista.
  • Una votación a la vez, texto de aviso opcional en la página de votación, incluido en inglés y alemán.

Cómo se mantienen secretas las votaciones

  • La base de datos almacena quién votó (sin la opción elegida ni marcas de tiempo) y dos contadores anónimos: nada vincula a un miembro con una elección. Los contadores se incrementan sin tocar updated_at.
  • Los conteos están ocultos hasta que la votación termina: mostrar los conteos en vivo junto a la lista de participantes permitiría a los observadores coincidir un nuevo nombre con el contador que acaba de moverse.
  • La finalización elimina el resultado y la lista de participantes de forma permanente.

Límite: alguien con acceso directo a la base de datos que observe los contadores durante una votación aún podría correlacionar los votos. Esto está fuera del alcance de un plugin y debe manejarse a nivel organizativo.

Configuración

Ajuste Descripción
ballotage_enabled Habilitar el plugin
ballotage_voting_group Grupo cuyos miembros pueden votar
ballotage_oversight_group Ve la participación y los resultados (los administradores siempre pueden)
ballotage_oversight_can_manage Permitir que el grupo de supervisión cree, cancele, finalice y elimine votaciones
ballotage_info_text Aviso opcional mostrado en la página de votación
ballotage_timezone Zona horaria para las horas de inicio/fin (por defecto Europe/Berlin)

Añade un enlace en la barra lateral o en el menú a /ballotage para que los miembros encuentren la página de votación.

Compatibilidad

Discourse 2026.7 y posterior. En producción en un foro pequeño desde septiembre de 2026.

Se agradecen los comentarios, informes de errores y traducciones, ya sea aquí o en GitHub.

3 Me gusta