|||
-|-|-|
| ملخص | Discourse Authentication Validations تتيح إضافة عمليات تحقق مخصصة لحقل المستخدم لتبديل عرض حقول المستخدم في نافذة التسجيل.
| رابط المستودع | https://github.com/discourse/discourse-authentication-validations
| دليل التثبيت | كيفية تثبيت الإضافات في Discourse
حول
Discourse Authentication Validations تضيف القدرة على إضافة عمليات تحقق مخصصة لحقل المستخدم.
لا تحتوي حقول المستخدم المخصصة على أي نوع من التحقق توفرها النواة، بخلاف اكتشاف قيمة فارغة في حقل مطلوب. تضيف هذه الإضافة القدرة على تحديد تعبير عادي (regex)، لكل حقل مستخدم، والذي سيتم بعد ذلك فحصه مقابل قيمة الإدخال المقدمة.
بالإضافة إلى ذلك، تضيف هذه الإضافة القدرة على تبديل عرض حقول المستخدم في نافذة التسجيل. يتيح لك ذلك “ربط” حقول المستخدم معًا، بحيث لا يتم عرض حقل مستخدم إلا إذا كان حقل المستخدم السابق يحتوي على قيمة محددة.
الإعداد الأساسي
1. تمكين الإضافة
يمكن تمكين إضافة Discourse Authentication Validations إما عن طريق التبديل أو من إعداداتها، وكلاهما متاح من صفحة admin/plugins الخاصة بك.
2. إضافة تحقق مخصص لحقل مستخدم
بعد تمكين إضافة Discourse Authentication Validations، سترى مربع اختيار تضمين عمليات تحقق مخصصة في أسفل نموذج حقل المستخدم الخاص بك.
عند تحديده، سيعرض ثلاثة حقول إضافية:
- تعبير عادي للتحقق من القيمة (Value Validation Regex)
- عرض القيم (Show Values)
- حقول المستخدم المستهدفة (Target User Fields)
إضافة تحقق مخصص
قم بتضمين تعبير عادي صالح في حقل Value Validation Regex:
سيتم الآن اختبار قيمة حقل المستخدم في نموذج التسجيل مقابل التعبير العادي الذي قمت بتضمينه. في حالة عدم استيفاء الإدخال لمعايير التعبير العادي المخصص الخاص بك، فلن يتم إرسال نموذج التسجيل.
لا توجد قيمة (يعتمد على التحقق الافتراضي للنموذج)
قيمة غير صحيحة
قيمة صحيحة
ربط حقول المستخدم
أولاً، قم بتضمين قيمة Show Values في حقل مستخدم.
عندما يحتوي حقل المستخدم على قيمة Show Values، فإنه سيراقب قيمة الإدخال المرفق حتى تتطابق قيمة الإدخال مع أي من قيم show values. سيؤدي ذلك بعد ذلك إلى تبديل رؤية أي Target User Fields مضمنة، مما يجعلها مرئية.
ثانياً، قم بإضافة قيمة Target User Fields.
في القائمة المنسدلة Target User Fields، سترى قائمة بجميع حقول المستخدم المتاحة. أي حقل مستخدم تختاره سيتم تبديل رؤيته بواسطة القيم المقابلة في Show Values.
ربط متقدم
يمكنك ربط حقول المستخدم معًا عن طريق إضافة عمليات تحقق مخصصة إلى حقول مستخدم متعددة.
على سبيل المثال، لنفترض أن لدينا ثلاثة حقول مستخدم بالقيم المعطاة:
| الاسم | هل يحتوي على تحقق مخصص | عرض القيم | حقول المستخدم المستهدفة |
|---|---|---|---|
| الإدخال الأول | صحيح | show-field-two | الإدخال الثاني |
| الإدخال الثاني | صحيح | show-field-three | الإدخال الثالث |
| الإدخال الثالث | خطأ |
سيتم إخفاء الإدخال الثاني والثالث افتراضيًا لأنهما “أبناء” للإدخال الأول. عند إضافة قيمة show value لـ show-field-two إلى الإدخال الأول، سيتم عرض الإدخال الثاني، ولكن سيظل الإدخال الثالث مخفيًا. سيظل مخفيًا حتى يحصل الإدخال الثاني على قيمة show-field-three.
مع التركيبة الصحيحة لـ Show Values و Target Classes، يمكنك تداخل حقول المستخدم بشكل لا نهائي تحت بعضها البعض.










