لسبب لا أفهمه، لا يسمح Discourse للمستخدمين بالاتصال بحسابات خارجية موجودة مسبقًا أو إدارتها (مثل حساب Discord مرتبط). يبدو أن كود Discourse يستخدم المنطق التالي لتحديد ما إذا كان المستخدم قادرًا على تحديث حساباته المرتبطة:
secondFactorEnabled,
canCheckEmails,
isAnonymous
) {
if (secondFactorEnabled || !canCheckEmails || isAnonymous) {
return false;
}
return findAll().length > 0;
لماذا يُعد متغير secondFactorEnabled عاملاً يُؤخذ في الاعتبار هنا؟
يبدو مستخدمونا مرتبكين للغاية لأنهم وصلوا إلى وضع غريب. فقد قاموا بالتسجيل للحصول على حساب على موقعنا، وربطوا حسابهم بحساب Discord للحصول على الوصول إلى خادم Discord الخاص بنا، ثم فعّلوا المصادقة الثنائية (2Factor) على حساباتهم. بعد القيام بذلك، اختفت قسمة «الحسابات المرتبطة» بالكامل من صفحة حساباتهم! لم يعودوا قادرين على رؤية أو إدارة حساباتهم المرتبطة طالما أن المصادقة الثنائية مفعّلة.
لدينا مستخدم آخر كان مرتبكًا للغاية لأنه أنشأ حسابه وفعّل المصادقة الثنائية، ولم يتمكن من اتباع تعليماتنا لإضافة حساب مرتبط لأن قسم «الحسابات المرتبطة» لم يظهر له من الأساس.
الشيء الوحيد المشترك بين هذين المستخدميين مقارنة بالمستخدمين الآخرين الذين لا يعانون من هذه المشكلة هو أن كلاهما فعّل المصادقة الثنائية.
أود منح مستخدمِي خيار تفعيل المصادقة الثنائية على حساباتهم في المنتدى و في الوقت نفسه القدرة على ربط حساباتهم بحساب Discord.
أقدم هذا الطلب تحت فئة #support، لكنني لست متأكدًا مما إذا كان هذا في الواقع Contribute > Bug. على أي حال، يبدو أنه لا توجد طريقة بديلة دون إجراء تغييرات على كود Discourse.