نموذج/نافذة منبثقة للتسجيل لا تظهر للمثيل الخاص

مرحبًا!

في مرحلة ما أثناء الترقية من 2.4.0.beta1 إلى 2.4.0.beta2 ثم إلى 2.4.0.beta4 (غير متأكد من الترقية الدقيقة التي حدث فيها ذلك)، توقف ظهور نافذة التسجيل المنبثقة للمستخدمين الجدد.

نستخدم إضافة OpenID Connect لمصادقة مستخدمينا. مطلوب تسجيل الدخول، وتعطيل تسجيل الدخول المحلي، مع السماح بالتسجيلات الجديدة. يؤدي تعطيل شرط تسجيل الدخول أو تمكين تسجيل الدخول المحلي إلى “حل” المشكلة، مما يسمح للمستخدمين بالتسجيل مرة أخرى. ومع ذلك، يجب أن يظل تسجيل الدخول المحلي معطلًا، ونريد أيضًا أن يكون تسجيل الدخول مطلوبًا.

يظهر سجل OIDC بشكل طبيعي ويعرض Fetched userinfo response مع بيانات اعتماد المستخدم الجديد، رغم عدم ظهور النافذة المنبثقة. جربت الانتقال إلى تثبيت جديد واستعادة النسخة الاحتياطية، لكن المشكلة لا تزال قائمة. وبدون استعادة النسخة الاحتياطية، تظهر النافذة المنبثقة، مما يشير إلى وجود شيء في النسخة الاحتياطية يتسبب في ظهور هذه المشكلة :confused:

إصدار Discourse الحالي لدينا هو 2.4.0.beta6، وتظهر المشكلة فيه أيضًا.

هل قمت بتثبيت أي مكونات سمة في الموقع؟ هل تظل المشكلة قائمة في الوضع الآمن؟

رائع، كنت محقًا! إزالة مكون قاعدة المعرفة من السمة جعلت النافذة المنبثقة تظهر مرة أخرى! لقد قمت بتثبيت المكون بوضوح بين أحد تلك الترقيات.

من الغريب أن هذا ينطبق فقط بعد استعادة النسخة الاحتياطية، بينما لا تظهر مشكلة مماثلة في تثبيت نظيف مع تفعيل المكون. سأقوم بتعطيله ببساطة، إذ لم نكن نستخدمه على أي حال.

شكرًا لمساعدتك!

هذا أمر غريب حقًا. هل تتذكر رؤية أي أخطاء محددة مع هذا المكون، مثل تلك التي تظهر في وحدة تحكم مطور المتصفح؟

في الواقع، تحت https://<HOST>/logs، قرأت ما يلي: Uncaught TypeError: Cannot read property 'knowledge-base' of undefined

بالإضافة إلى ذلك، تظهر رسالة TypeError: E.idMap(...) is undefined 8 مرات، ولكن دون ذكر مكون قاعدة المعرفة. وتحتوي على سجل التتبع التالي (الرابط: https://<HOST>/assets/application-301651b1c7400a000974a9cecafd44ad3304cf647cf17bcfa7af68e9ed1ac4b7.js، السطر: 9، العمود: 20924، موقع النافذة: https://<HOST>/login):

findById@https://<HOST>/assets/application-301651b1c7400a000974a9cecafd44ad3304cf647cf17bcfa7af68e9ed1ac4b7.js:9:20924
findByIds/<@https://<HOST>/assets/application-301651b1c7400a000974a9cecafd44ad3304cf647cf17bcfa7af68e9ed1ac4b7.js:9:21063
findByIds@https://<HOST>/assets/application-301651b1c7400a000974a9cecafd44ad3304cf647cf17bcfa7af68e9ed1ac4b7.js:9:21035
initialize/</<@https://<HOST>/theme-javascripts/ce296772003fb6162b99b62bf564066966940cc8.js?__ws=<HOST>:103:48
value/<@https://<HOST>/assets/application-301651b1c7400a000974a9cecafd44ad3304cf647cf17bcfa7af68e9ed1ac4b7.js:14:5447
C@https://<HOST>/assets/ember_jquery-7dfac344d893a6c10c016353b994db2c6f42af630322ea6da3399c220fcc50ed.js:6:19799
trigger@https://<HOST>/assets/ember_jquery-7dfac344d893a6c10c016353b994db2c6f42af630322ea6da3399c220fcc50ed.js:9:20668
s/</<@https://<HOST>/assets/application-301651b1c7400a000974a9cecafd44ad3304cf647cf17bcfa7af68e9ed1ac4b7.js:13:31963
y</t.invoke@https://<HOST>/assets/ember_jquery-7dfac344d893a6c10c016353b994db2c6f42af630322ea6da3399c220fcc50ed.js:16:9739
y</t.flush@https://<HOST>/assets/ember_jquery-7dfac344d893a6c10c016353b994db2c6f42af630322ea6da3399c220fcc50ed.js:16:8732
b</t.flush@https://<HOST>/assets/ember_jquery-7dfac344d893a6c10c016353b994db2c6f42af630322ea6da3399c220fcc50ed.js:16:10782
H</n._end@https://<HOST>/assets/ember_jquery-7dfac344d893a6c10c016353b994db2c6f42af630322ea6da3399c220fcc50ed.js:16:15440
H</n.end@https://<HOST>/assets/ember_jquery-7dfac344d893a6c10c016353b994db2c6f42af630322ea6da3399c220fcc50ed.js:16:12110
H</n._runExpiredTimers@https://<HOST>/assets/ember_jquery-7dfac344d893a6c10c016353b994db2c6f42af630322ea6da3399c220fcc50ed.js:16:16800

لدي بعض الأفكار حول ما قد يكون سببًا لذلك.

لكنني فضولي، هل كان لديك أي فئات مدرجة في إعداد قالب kb categories أثناء تفعيله؟ يمكنني رؤية حالة في الكود قد تسبب مشكلة إذا لم يتم تحديد أي فئات.

تعديل: لقد دفعت إصلاحًا أعتقد أنه قد يعالج المشكلة.

في الواقع، لم يكن لدي أي فئات مدرجة. لكن النافذة المنبثقة لا تظهر حتى بعد اختيار فئة.
ربما يكون الأمر ذا صلة، أو ربما شيء مختلف تمامًا: إعداد default to kb view لا يؤثر أثناء عرض الفئة، ويجب علي النقر على زر KB وزر Latest بالتناوب لتمكين عرض قاعدة المعرفة.

تعديل: قمت بتحديث المكون، وأصبح الآن يتصرف على النحو التالي: مع قائمة فئات فارغة، تظهر النافذة المنبثقة :tada:. ومع ذلك، بمجرد اختيار فئة، تتوقف النافذة المنبثقة عن الظهور.

هل ترى نفس الأخطاء في السجلات؟

ما يحدث هنا هو أن هناك مسارًا يتم تفعيله يحاول البحث عن مكون قاعدة المعرفة قبل تحميله.

نعم، لكنها لم تعد تتراكم، بل تختلف في السطر الرابع من تتبع المكدس. تبدو الأسطر الأخرى كما هو موضح أعلاه.

initialize/<</@https://<HOST>/theme-javascripts/<VARIES>.js?__ws=<HOST>:103:48

أضفت التزامًا آخر يتضمن بعض الفحوصات الإضافية لمنع محاولة استعلام العناصر غير المهيأة.

لا يوجد فرق، أخطاء النوعية (TypeErrors) لا تزال تظهر.

تمكنت من إصلاح رسائل الخطأ تلك في هذا التعديل. لست متأكدًا مما إذا كان سيحل مشكلة النافذة المنبثقة، لكنه يبدو مرتبطًا بها.

يبدو الأمر جيدًا بالنسبة لي، حيث يظهر النافذة المنبثقة الآن حتى مع تحديد الفئات! :confetti_ball: