| ملخص | تصويت سري بالكرات السوداء والبيضاء (“ballotage”) لمجموعة أعضاء، مع إشراف على المشاركة. | |
| رابط المستودع | GitHub - DaniW42/discourse-ballotage: A Discourse plugin for secret black/white-ball ballots ("ballotage" — in German "Kugelung"), as used by clubs, societies and other membership organizations for admitting new members. A member either casts a black or a white ball; who voted is recorded, but what they voted is not. · GitHub | |
| دليل التثبيت | كيفية تثبيت الإضافات في Discourse |
الميزات
نوع من التخصص الدقيق… لكن: العديد من الأندية والجمعيات والرواتب تقبل الأعضاء الجدد عن طريق تصويت سري بالكرات السوداء والبيضاء. يجلب هذا الإضافة هذه العملية إلى Discourse:
- صفحة تصويت في
/ballotageحيث يصوّت أعضاء مجموعة مُهيأة بـ صوت نهائي واحد – أسود أو أبيض – خلال فترة محددة (افتراضيًا من 00:01 في يوم البدء إلى 23:59 في يوم الانتهاء، مع إمكانية اختيار أوقات مخصصة). - صفحة إدارة في
/ballotage/manageلمجموعة الإشراف والمشرفين: من صوّت أثناء سير التصويت، والنتيجة السوداء/البيضاء بعد انتهائه. - يمكن إلغاء الأصوات، ثم إغلاقها (يتم حذف النتيجة وقائمة المشاركين بشكل غير قابل للاسترداد) وإزالتها من القائمة أخيرًا.
- صوت واحد في كل مرة، نص إشعار اختياري على صفحة التصويت، متوفر باللغتين الإنجليزية والألمانية.
كيف تبقى الأصوات سرية
- يخزن قاعدة البيانات من صوّت (بدون اختيار، وبدون طوابع زمنية) وعدّادين مجهولين – لا شيء يربط عضوًا باختياره. يتم زيادة العدادات دون لمس
updated_at. - تُخفى العدّادات حتى ينتهي التصويت: عرض العدّادات الحية بجانب قائمة المشاركين سيسمح للمراقبين بمطابقة اسم جديد بالعداد الذي تحرك للتو.
- يؤدي الإغلاق إلى حذف النتيجة وقائمة المشاركين نهائيًا.
الحدود: شخص لديه وصول مباشر إلى قاعدة البيانات ويراقب العدادات أثناء التصويت قد لا يزال قادرًا على ربط الأصوات. هذا خارج نطاق الإضافة ويتطلب معالجة تنظيمية.
الإعدادات
| الإعداد | الوصف |
|---|---|
ballotage_enabled |
تفعيل الإضافة |
ballotage_voting_group |
المجموعة التي يحق لأعضائها التصويت |
ballotage_oversight_group |
ترى المشاركة والنتائج (المشرفون يمكنهم دائمًا) |
ballotage_oversight_can_manage |
السماح لمجموعة الإشراف بإنشاء وإلغاء وإغلاق وحذف الأصوات |
ballotage_info_text |
إشعار اختياري يظهر على صفحة التصويت |
ballotage_timezone |
المنطقة الزمنية لأوقات البدء/الانتهاء (الافتراضي Europe/Berlin) |
أضف رابطًا في الشريط الجانبي أو القائمة إلى /ballotage حتى يجد الأعضاء صفحة التصويت.
التوافق
Discourse 2026.7 وما بعده. قيد الاستخدام في بيئة إنتاج على منتدى صغير منذ سبتمبر 2026.
نرحب بالملاحظات وتقارير الأخطاء والترجمات – هنا أو على GitHub.

