Extension:SecurePoll/ar

This page is a translated version of the page Extension:SecurePoll and the translation is 90% complete.
الدليل المرجعي لامتدادات ميدياويكي
SecurePoll
حالة الإصدار مستقر
تنفيذ صفحة خاصة
بيان يسمح بإجراء الانتخابات والإستطلاعات والإستبانات
المؤلف/المؤلفون Tim Starlingنقاش
آخر إصدار 3.0.0 (تحديثات مستمرة)
سياسة التوافق تصدر اللقطات البرمجية مع ميدياويكي. الإصدار الرئيسي لا يتوافق مع الإصدارات السابقة.
MediaWiki 1.25+
تغييرات قاعدة البيانات نعم
جداول securepoll_entity
securepoll_msgs
securepoll_properties
securepoll_elections
securepoll_questions
securepoll_options
securepoll_voters
securepoll_votes
securepoll_strike
securepoll_lists
securepoll_cookie_match
ترخيص رخصة جنو العمومية 2.0 أو ما بعدها
التنزيل
  • $wgSecurePollTempDir
  • $wgSecurePollMostActiveWikisThreshold
  • $wgSecurePollUseLogging
  • $wgSecurePollKeepPrivateInfoDays
  • $wgSecurePollUseNamespace
  • $wgSecurePollSingleTransferableVoteEnabled
  • $wgSecurePollGPGCommand
  • $wgSecurePollCreateWikiGroups
  • $wgSecurePollGpgSignKey
  • $wgSecurePollTranslationImportSourceUrl
  • $wgSecurePollCreateRemoteScriptPath
  • $wgSecurePollExcludedWikis
  • $wgSecurePollCreateWikiGroupDir
  • $wgSecurePollShowErrorDetail
  • securepoll-create-poll
  • securepoll-edit-poll
  • securepoll-view-voter-pii
تنزيلات ربع سنوية 22 (Ranked 108th)
استخدام مواقع الويكي العمومية 889 (Ranked 269th)
ترجم الامتداد SecurePoll لو كان متوفرا على translatewiki.net
المسائل المهام المفتوحة · الإبلاغ عن عطل تقني

امتداد SecurePoll هو امتداد خاص للانتخابات والاستطلاعات والإستبانات. يستخدم لانتخابات مجلس مؤسسة ويكيميديا ولانتخابات لجنة التحكيم، وسبق استخدامه للتصويت على انتقال ترخيص ويكيميديا وأشياء أخرى.

لقطات شاشة

التثبيت

  • نزّل الملف/الملفات وضعها في دليل يحمل اسم ‎SecurePoll داخل مجلد ‎extensions/‎ لديك.
    يجب على مطوري البرمجيات والمساهمين بالكود البرمجي تثبيت الامتداد من غت بدلا من ذلك، مستخدمين:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/SecurePoll
  • أضف الكود التالي في الجزء الأسفل من ملف LocalSettings.php :
    wfLoadExtension( 'SecurePoll' );
    
  • شغل نص التحديث البرمجي الذي سوف ينشئ تلقائيا جداول قاعدة البيانات الضرورية التي يحتاج إليها الامتداد.
  •   تم التنفيذ – اذهب إلى Special:Version على موقع الويكي لديك كي تتحقق من أن الامتداد قد ثبت بنجاح.

In addition, you will need to add some user groups and user rights to your LocalSettings.php file. Here is one way to do it, which gives a new group called electionadmin the power to do everything in SecurePoll (create polls, edit polls, see voter IP addresses):

$wgGroupPermissions['electionadmin']['securepoll-create-poll'] = true;
$wgGroupPermissions['electionadmin']['securepoll-edit-poll'] = true;
$wgGroupPermissions['electionadmin']['securepoll-view-voter-pii'] = true;

Once this group is created, a bureaucrat can add someone to the group using Special:UserRights. Then that person can visit Special:SecurePoll to view polls, create polls, edit polls, tally polls, etc.

Each poll's data is compartmentalized. You can have 100 electionadmins, but if you only add one electionadmin to a particular poll, only that one electionadmin will be able to edit that particular poll or see user IPs. If an electionadmin is removed from a poll, they will lose access to it.

securepoll-view-voter-pii is used for "scrutineering" a poll, which involves looking at a list of voter IPs, user agents, and X-Forwarded-For headers to look for cheating (secret duplicate votes by sockpuppets). Because this involves looking at voter IP addresses and other sensitive, personal, de-anonymizing data, it is a sensitive user right, so only trusted users should be assigned to the electionadmin group.

It is possible to split securepoll-view-voter-pii into a separate group. You can use a config such as the one below to create a group called scrutineer that contains the securepoll-view-voter-pii right, separating it from the electionadmin group:

$wgGroupPermissions['electionadmin']['securepoll-create-poll'] = true;
$wgGroupPermissions['electionadmin']['securepoll-edit-poll'] = true;

$wgGroupPermissions['scrutineer']['securepoll-create-poll'] = true;
$wgGroupPermissions['scrutineer']['securepoll-edit-poll'] = true;
$wgGroupPermissions['scrutineer']['securepoll-view-voter-pii'] = true;

A user also needs to be added to the poll (and hence have the securepoll-edit-poll right) in order to view PII - securepoll-view-voter-pii by itself has no effect.

الاستخدام

إنشاء استطلاع جديد

هناك طريقتان لإنشاء استطلاع جديد: إعداد ملف XML يدوياً واستيراده، أو استخدام واجهة إنشاء استطلاعات الرأي في Special:SecurePoll.

يدويًا

لإنشاء استطلاع رأي يدوياً، يتطلب أن:

  1. تكتب ملف XML
  2. تستورده باستخدام الأمر import.php من واجهة الأوامر command-line

في مجلد الاختبار يمكنك العثور على أربع ملفات كأمثلة:

  • 3way-test.xml
  • approval-test.xml
  • radio-range.xml
  • schulze-test.xml info

لاستيراد استطلاع، قم بتشغيل ما يلي من مجلد cli:

extensions/SecurePoll/cli$ php import.php ../test/3way-test.xml

لاستيراد استطلاع رأي باستخدام docker، قم بتشغيل ما يلي من مجلد cli:

docker-compose exec mediawiki php extensions/SecurePoll/cli/import.php extensions/SecurePoll/test/radio-range.xml

من خلال واجهة الويب

يمكن للمستخدم الذي يمتلك صلاحية الـ securepoll-create-poll إنشاء استطلاع جديد عن طريق الرابط الموجود في أسفل Special:SecurePoll.

لإعداد استطلاع جديد، املأ الحقول الإلزامية في نموذج الإعداد. قد تكون هناك حاجة إلى الحرص في الحقول التالية:

  • عند إضافة مديري الاستطلاع، يُسمح فقط لأعضاء مجموعة electionadmin. إذا تم تعيين $wgSecurePollUseLogging إلى true، فسيتم تسجيله كلما أُضيف إداري إلى أو أُزيل من استطلاع. يمكن مشاهدة السجلات في Special:SecurePollLog.
  • لإنشاء استطلاع رأي مُشفَّر، اختر زر طريقة التشفير. إذا اخترت GnuPG، قم بتوليد مفتاح تشفير (عام) ومفتاح فك تشفير (خاص). أدخل مفتاح التشفير في نموذج الإنشاء، واحفظ المفتاح الخاص آمنا في مكان ما (ليس على الويب) (ستحتاج إليه للفرز، بمجرد انتهاء الانتخابات). يمكن رؤية مثال مفصل.

الآن طالع Special:SecurePoll وسوف ترى استطلاع الرأي الخاص بك.

تعديل استطلاع موجود

لتعديل استطلاع، يجب أن تكون مديرًا لهذا الاستطلاع المعين. من Special:SecurePoll، انقر على رابط تحرير الاستطلاع الذي تريد تحريره.

قبل أن تبدأ الانتخابات، يمكن تحرير أي شيء عن الانتخاب. بعد بدء الانتخابات، لا يمكن تحرير بعض الحقول بعد الآن.

تحديد مَن يمكنه التصويت في الاستطلاع

لتحرير مَن يمكنه التصويت في استطلاع، يجب أن تكون مديرًا لهذا الاستطلاع المعين. من Special:SecurePoll، انقر على رابط مؤهلات التصويت للإستطلاع Eligibility.

ترجمة استطلاع

لترجمة استطلاع، يجب أن تكون مديرًا لهذا الاستطلاع المعين. من Special:SecurePoll، انقر على رابط الترجمة للاستطلاع الذي تريد تحريره.

طالع قائمة المصوتين

يمكن لأي شخص رؤية قائمة الناخبين، ما لم يجري تعطيل ميزات الشفافية transparency عند إنشاء الاستطلاع.

يمكن لمديري استطلاع معين رؤية قائمة الناخبين، جنبا إلى جنب مع المعلومات الخاصة التي قد تُساعد على تحديد الناخبين المكررين (مثل عناوين IP، معلومات وكيل المستخدم، ملفات تعريف الارتباط المشتركة). إذا تم تعيين $wgSecurePollUseLogging إلى true، فسيجري تسجيل كلما قام مدير برؤية البيانات الخاصة. يمكن مُطالعة السجلات على Special:SecurePollLog.

يمكن للمديرين إلغاء أي تصويتات يرون أنها مكررة.

فرز الاستطلاع

لفرز استطلاع، يجب أن تكون مديرًا لهذا الاستطلاع المعين. Special:SecurePoll، انقر على رابط "فرز Tally" للحصول على الاستطلاع الذي تريد أن تفرزه.

إذا كان الاستطلاع قد جرى فرزه من قبل، فستظهر النتائج على الصفحة. إذا لم يكن، أو إذا كنت تريد إعادة الفرز، هناك نموذج لبدء فرز جديد.

  • إذا كانت الاستطلاع غير مشفر، انقر على زر الفرز.
  • إذا كانت الاستطلاع مشفر، قد تحتاج إلى إدخال مزيد من المعلومات. على سبيل المثال، إذا كنت تستخدم GnuPG، أدخل مفتاح فك تشفير (الخاص) وانقر على زر الفرز. إذا كان استطلاع الرأي المشفر به عدد كبير من الأصوات، قد يستغرق ذلك وقتا طويلاً للفرز. قد تحتاج إلى التحقق من النتائج لاحقاً.

الآن طالع $1 وسوف ترى استطلاع الرأي الخاص بك.

الفرز بطريقة الصوت القابل للانتقال (STV)

للسماح بالفرز بطريقة (الصوت القابل للانتقال) STV أضف قيمة الإعداد إدناه إلى LocalSettings.php

$wgSecurePollSingleTransferableVoteEnabled = true;

لمعلومات أكثر حول الصوت القابل للانتقال (STV) طالع ويكيبيديا.

تنفيذ الخوارزمية العامة (source).

الحصة Quota هي + .000001. الحصة هي الحد الأدنى من الأصوات للحصول على مقعد.

1. احسب الحصة
2. تعيين الأصوات للمرشحين حسب التفضيلات الأولى
3. إعلان فوز جميع المرشحين الذين حصلوا على الحصة على الأقل.
4. نقل الأصوات الزائدة من الفائزين إلى المتوقعين
5. كرر الخطوات 3 و 4 حتى لا يجري انتخاب مرشحين جُدد.  (في بعض النظم، يمكن تحويل الأصوات في البداية في هذه الخطوة إلى الفائزين أو الخاسرين السابقين، وهذا قد يؤثر على النتيجة).
إذا كان لدى جميع المقاعد فائزون، فستكون العملية قد اكتملت. وإلا:
6. قم بإزالة مرشح واحد أو أكثر، عادةً إما المُرشح الأقل أو جميع المرشحين الذين تقل أصواتهم المشتركة عن أصوات أقل مرشح باقي.
7. نقل أصوات الخاسرين إلى المرشحين المتوقعين المتبقين
8. كرر 3-7 حتى تملأ جميع المقاعد

الحصة التي سنستخدمها (الخطوة 1) هي حصة الحذف Droop quota (source):

floor( no. votes / (no. seats + 1) ) + 1

وسيكون طريقة نقل الأصوات من المرشحين المنتخبين أو المحذوفين هي طريقة "ميك Meek":

الفرز بطريقة (JobRunner)

  • Tallies can be processed via a scheduled job Manual:Job queue . Make sure to create a scheduled job for this task or execute the task manually.
  • Tallies can also be processed by executing the tallying script manually:

To execute a tally, run the following from the cli folder located at extensions/SecurePoll/cli:

extensions/SecurePoll/cli/tally.php

To execute a tally using MediaWiki-Docker, run the following from the cli folder located at extensions/SecurePoll/cli:

docker-compose exec mediawiki php extensions/SecurePoll/cli/tally.php

Generating (STV) Test Elections

  • Test (STV) elections can be generated from the cli folder located at extensions/SecurePoll/cli:
  • To generate a test election, run the following from the cli folder located at extensions/SecurePoll/cli:
extensions/SecurePoll/cli/generateTestElection.php
  • Test (STV) elections provide scaffolding from which to tally on

Redirect polls

If you are using SecurePoll in a wikifarm, it is possible to configure it to create a main election on a vote wiki, and then it will also create a redirect poll on a different wiki, with a vote link that points back to the vote wiki.

التوثيق

التصويت الآمن SecurePoll

يمكن العثور على الوثائق العامة لـ SecurePoll في wikitech:SecurePoll.

تحسينات التصويت الآمن

تجد ملخص تحسينات التصويت الآمن في Anti-Harassment Tools/SecurePoll Improvements.

فهم نتائج نظام الصوت الواحد القابل للتحويل STV

تجد وثائق حول نتائج طريقة STV في Anti-Harassment Tools/SecurePoll Improvements/Understanding the STV result.