الموضوع المثبت الافتراضي لا يظهر بسبب إضافة السياسة

لاحظت شيئًا غريبًا بشأن موضوع الترحيب الافتراضي (المثبت) في غير المصنَّف: لا يظهر عند الطلبات المجهولة.

لا يوجد حد لقراءته حسب علمي: التسجيل مفتوح، وهذه هي فئة “غير المصنَّف” الافتراضية (مع ميزات الأمان الخاصة)، ولا يوجد إعداد يحد من عرض المحتويات.

عرض JSON يظهر النسخة المطبوخة للمشاركة، بينما نسخة HTML فارغة:

يحدث هذا السلوك فقط في هذا المنتدى، وهو المالك لتكوين متعدد المواقع.

https://ps.zoethical.org/t/welcome-to-p-s/8/1.json

هل لديك أي فكرة؟

هناك رد يحتوي على policy يسبب مشكلة ويخلو من الأزرار… ربما يكون ذلك مرتبطًا؟

فقط للتكامل، إليك كيف يبدو الأمر عندما أكون مسجّل الدخول:

It’s visible via Safe mode, so it’s a customization or plugin:

@hellekin لدي نفس المشكلة تمامًا. إذا قمت بحذف منشور السياسة أو تعطيل الإضافة من الإعدادات، فستظهر الموضوع. يبدو أن هناك خللًا ولا يمكن للمستخدمين غير المسجلين رؤية الموضوع إذا تم استخدام سياسة في منشور. هل يمكن لأحد مساعدتنا؟

لقد تمكنت من تتبع الجاني: discourse-policy، كما اقترح @Vraag. وعلى عكس ما ذكره @Vraag، فإن الإضافة تؤثر على الموضوع “المتلاشي” حتى عند تعطيلها: فوجودها في قائمة الإضافات كافٍ لجعل الموضوع “يختفي” عند عدم تسجيل الدخول.

الرد الذي يستخدم إضافة Policy هو الرد الأول: Exploring community-based social media - #2 by system - Share - petites singularités
تنسيق Markdown لذلك المنشور:

[policy group=trust_level_1 reminder=daily]
We do not use third-party cookies.
[/policy]

وهذا سجل الأخطاء:

TypeError: p is null
Url: https://ps.zoethical.org/assets/plugins/discourse-policy-60b8413b741df408ff16f757f644f9de7cb64099d24c33dc3d85ef735478d72a.js
Line: 1
Column: 3373
Window Location: https://ps.zoethical.org/t/welcome-to-p-s/8

وهذا التتبع الخلفي:

r@https://ps.zoethical.org/assets/plugins/discourse-policy-60b8413b741df408ff16f757f644f9de7cb64099d24c33dc3d85ef735478d72a.js:1:3373
m@https://ps.zoethical.org/assets/plugins/discourse-policy-60b8413b741df408ff16f757f644f9de7cb64099d24c33dc3d85ef735478d72a.js:1:5934
value/<@https://ps.zoethical.org/assets/application-e5979c62e7a903663f877b29059ee0b4707ac3d11c783460ad7d0920ed92e017.js:73:2648
value@https://ps.zoethical.org/assets/application-e5979c62e7a903663f877b29059ee0b4707ac3d11c783460ad7d0920ed92e017.js:73:2619
r@https://ps.zoethical.org/assets/vendor-fae393575cd14697b31e9fdbeb8c016d165a8a3af765ec8ca719a454585aedf4.js:5:10297
r@https://ps.zoethical.org/assets/vendor-fae393575cd14697b31e9fdbeb8c016d165a8a3af765ec8ca719a454585aedf4.js:5:10576
r@https://ps.zoethical.org/assets/vendor-fae393575cd14697b31e9fdbeb8c016d165a8a3af765ec8ca719a454585aedf4.js:5:10576
r@https://ps.zoethical.org/assets/vendor-fae393575cd14697b31e9fdbeb8c016d165a8a3af765ec8ca719a454585aedf4.js:5:10576
r@https://ps.zoethical.org/assets/vendor-fae393575cd14697b31e9fdbeb8c016d165a8a3af765ec8ca719a454585aedf4.js:5:10576
r@https://ps.zoethical.org/assets/vendor-fae393575cd14697b31e9fdbeb8c016d165a8a3af765ec8ca719a454585aedf4.js:5:10576
u@https://ps.zoethical.org/assets/vendor-fae393575cd14697b31e9fdbeb8c016d165a8a3af765ec8ca719a454585aedf4.js:5:12330
r@https://ps.zoethical.org/assets/vendor-fae393575cd14697b31e9fdbeb8c016d165a8a3af765ec8ca719a454585aedf4.js:5:11710
o@https://ps.zoethical.org/assets/vendor-fae393575cd14697b31e9fdbeb8c016d165a8a3af765ec8ca719a454585aedf4.js:5:13433
i@https://ps.zoethical.org/assets/vendor-fae393575cd14697b31e9fdbeb8c016d165a8a3af765ec8ca719a454585aedf4.js:5:13297
r@https://ps.zoethical.org/assets/vendor-fae393575cd14697b31e9fdbeb8c016d165a8a3af765ec8ca719a454585aedf4.js:5:11816
o@https://ps.zoethical.org/assets/vendor-fae393575cd14697b31e9fdbeb8c016d165a8a3af765ec8ca719a454585aedf4.js:5:13433
i@https://ps.zoethical.org/assets/vendor-fae393575cd14697b31e9fdbeb8c016d165a8a3af765ec8ca719a454585aedf4.js:5:13297
r@https://ps.zoethical.org/assets/vendor-fae393575cd14697b31e9fdbeb8c016d165a8a3af765ec8ca719a454585aedf4.js:5:13118
rerenderWidget@https://ps.zoethical.org/assets/application-e5979c62e7a903663f877b29059ee0b4707ac3d11c783460ad7d0920ed92e017.js:33:21229
y</t.invoke@https://ps.zoethical.org/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:16:9727
y</t.flush@https://ps.zoethical.org/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:16:8732
b</t.flush@https://ps.zoethical.org/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:16:10780
H</n._end@https://ps.zoethical.org/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:16:15438
H</n.end@https://ps.zoethical.org/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:16:12105
H</n._run@https://ps.zoethical.org/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:16:15973
H</n._join@https://ps.zoethical.org/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:16:15758
H</n.join@https://ps.zoethical.org/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:16:12813
c@https://ps.zoethical.org/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:12:3338
R/<@https://ps.zoethical.org/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:12:4903
h@https://ps.zoethical.org/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:2:9935
o/</f<@https://ps.zoethical.org/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:2:10240

لاحظ أن ملف plugin.rb يقوم بتحميل مجموعة كاملة من التبعيات حتى قبل القيام بأي شيء. ربما يكون الخطأ ناتجًا عن أحد هذه التبعيات التي تتوقع مستخدمًا مسجل الدخول.

مرحباً
نعم، نسيت أن أخبرك أنه يجب عليك تعديل المنشور بعد تعطيل الإضافة، وإلا ستستمر في التأثير عليه

تحرير المنشور كما في… إزالة تنسيقات السياسة؟

لا، قم بتعطيل الإضافة، ثم عدّل المنشور الذي يحتوي على الإضافة (أضف حرفًا عشوائيًا في بداية المنشور مثلًا)، واحفظه، وسيتمكن المستخدمون غير المسجلين من رؤية المنشور. سيعرض الشعار على شكل [policy][/policy] ولن يقوم بأي شيء. أتساءل لماذا لا يكون تعطيل الإضافة وحده كافيًا. يجب عليك تعديل المنشور بعد ذلك، وإلا سيظل تأثيرها مستمرًا.

في الواقع، تعديل المنشور أثناء تعطيل الإضافة، حتى مجرد تغيير المحتوى داخل وسوم [policy]، يكفي لاستعادة عرض الموضوع.

يبدو إذن أن هناك خللاً في إضافة discourse-policy، يا @sam؟

من الغريب حقًا، أن إعادة تمكين الإضافة تعيد الوضع إلى طبيعته. لست متأكدًا مما يجب فعله حيال هذا الأمر.

أعتقد أن هذا الموضوع سيُستخدم كمرجع مستقبلي، لذا إليك الخطوات: إذا اختفى موضوع ما من العرض المجهول، وكان لديك منشور يستخدم إضافة discourse-policy

  1. قم بتعطيل الإضافة — إذا لم تنجح هذه الخطوة، فاحذفها من ملف تكوين حاوية YAML وأعد بناءها.
  2. قم بتحرير المنشور باستخدام وسم [policy] لإعادة معالجته وتعطيله (ربما يكون إعادة بناء HTML كافيًا؟).
  3. أعد تمكين الإضافة.

تادرا! حدث شيء سحري.

ماذا تقصد بـ “حدثت بعض السحرية”؟

لقد فعلت كما طلبت، وحصلت على هذا:

    [policy group=testgroup reminder=daily]
اختبار
    [/policy]

وهو لا يحل المشكلة. أكثر من كونه حلاً، هذا… مجرد عدم استخدام الإضافة.
إذا قمت بتحرير المنشور أو إعادة بناء HTML، ستعمل الإضافة، لكن الموضوع سيختفي مرة أخرى للمستخدمين غير المسجلين.

تعديل

يبدو أن الأمر نفسه ينطبق عليك. في موضوعك، يبدو المنشور الثاني هكذا:

[policy group=trust_level_1 reminder=daily]
    نحن لا نستخدم ملفات تعريف الارتباط من جهات خارجية.
    [/policy]

إذن لا يزال لدينا لا “حل”. ما لم تسمّ عدم استخدام الإضافة حلاً xD. كان بإمكانك ببساطة حذف التنسيق من المنشور الثاني، وستكون النتيجة نفسها.
كما هو الآن، يمكنك استخدامه فقط في الفئات الخاصة، بحيث لا يتمكن المستخدمون غير المسجلين من رؤية الموضوع على أي حال.