يمكن للمستخدمين غير الموظفين تطبيق علامات خاصة بالموظفين فقط

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

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

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

حسنًا، قمت باختبار الأمر مع مستخدمين من المستوى TL-0 و TL-1 في وضع الأمان، وتمكنت من الوصول إلى علامة الموظفين لكل فئة في منتدانا. ينطبق الأمر نفسه على العلامات الأخرى الموجودة في قائمتنا المخصصة للموظفين فقط. كما قمت بإعادة تعيين أذونات مجموعة علامات الموظفين فقط إلى ‘يمكن للجميع استخدام العلامات’ ثم عودتها إلى ‘فقط المجموعات التالية يمكنها استخدامها’، لكن ذلك لم يُحدث أي فرق. هل هناك أي شيء آخر يمكنني تجربته؟

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

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

هذه هي جميع المجموعات التي أستخدمها؛ الاختبار الذي أجرته كان مع مستخدم عادي ليس عضوًا في أي شيء.

الوسوم الشائعة: متاحة للجميع

الأحداث: يمكن استخدامها فقط في فئة الأحداث:

عندما تقول “الوصول”، هل تقصد أنك تستطيع إضافتها إلى المواضيع، أم أنك تستطيع رؤيتها والنقر عليها وما إلى ذلك؟

الوسوم الموجودة في مجموعة وسومك “وسوم الموظفين” (مثل ba-tips، cant-reproduce، featured، وغيرها) لا يمكن إضافتها إلى المواضيع إلا من قبل المستخدمين المنتمين إلى مجموعة staff، لكنها مرئية للجميع. وهذا يعني أن أي شخص يمكنه رؤية هذه الوسوم في أعلى المواضيع، والنقر عليها لرؤية المواضيع الأخرى الموصومة بنفس الوسم، وما إلى ذلك.

إذا كان مستخدم من الرتبة TL0 قادراً على إضافة وسم من “وسوم الموظفين” (مثل ‘ba-tips’) إلى موضوع، فهذه مشكلة. لقد قمت بإعادة إنشاء الوسوم ومجموعات الوسوم وفقاً للصور الملتقطة التي أرسلتها على مثيل Discourse المحلي الخاص بي (مقيداً الوسوم في كل مجموعة إلى أول ثلاثة وسوم في كل صورة من الصور أعلاه)، ولم يتمكن مستخدمو TL0/TL1 من إضافة ‘ba-tips’ إلى موضوع عبر زر “موضوع جديد”، أو عبر إنشاء موضوع ثم تعديله. هل تستطيع إضافة هذه الوسوم عبر طريقة أو مسار واجهة مستخدم مختلف؟

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

  1. تسجيل الدخول كمستخدم TL0 أو TL1
  2. التبديل إلى الوضع الآمن وتعطيل كل شيء
  3. اختيار أي فئة
  4. إنشاء موضوع جديد
  5. اختيار علامة “متميز”، وهي مخصصة للموظفين فقط.
  6. النقر على “إنشاء موضوع”
  7. يتم إنشاء المنشور وإضافة علامة “متميز”

لقد رأيت للتو شيئًا آخر قد يكون مرتبطًا: لم أعد أستطيع الوصول إلى مسارات tag.json، مثل هذا:

Topics tagged featured

تحديث: أوه، لا بأس، يبدو أن /tags/ تم إعادة تسميتها إلى /tag/ مما أدى إلى تعطيل بعض أتمتاتنا.

للأسف، ما زلت أواجه صعوبة في إنشاء حالة اختبار لهذه المشكلة. إليك الخطوات التي اتبعتها:

  1. إنشاء موقع جديد عند الـ commit: 6490fac881
  2. إنشاء مستخدم مسؤول: jamie.wilson
  3. تفعيل إعداد الموقع: تمكين الوسم (tagging)
  4. إنشاء الوسوم التالية:
    360-renders
    add-ons
    advertisement
    conference
    contest
    meetup
    no-ads
    promotion-offered
    ba-tips
    cant-reproduce
    featured
  5. إنشاء مجموعات الوسوم، وفقًا للصور المرفقة (مع عدم تجاوز 3 وسوم لكل مجموعة لأغراض التصحيح)
  6. إنشاء فئة “الأحداث” (Events)، مع تعيين القيمة “الأحداث” في حقل “تقييد مجموعات الوسوم هذه لهذه الفئة”
  7. إنشاء المستخدم المسؤول موضوعًا في فئة “ملاحظات الموقع” (Site Feedback) مع وسم ‘ba-tips’ من مجموعة الموظفين.
  8. تسجيل خروج المستخدم المسؤول
  9. إنشاء مستخدم جديد (تم تفعيله عبر رابط البريد الإلكتروني): normal.user
  10. بصفتك المستخدم normal.user، قم بإنشاء موضوع جديد في الفئة غير المصنفة أو في فئة “ملاحظات الموقع”. الوسوم المتاحة: 360-renders، add-ons، advertisement

  1. إنشاء موضوع جديد في فئة “الأحداث”. الوسوم المتاحة: conference، contest، meetup

(غير موضح)

  1. يمكن للمستخدم المسؤول إضافة وسوم مقيدة إلى منشور المستخدم العادي:

  1. يمكن للمستخدم المسؤول رؤية جميع الوسوم الثلاثة:

  1. يمكن للمستخدم العادي رؤية وسوم اثنين فقط:

DiscourseTagging.permitted_tag_names(Guardian.new(User.find_by_username('normal.user')))
["360-renders", "add-ons", "advertisement", "conference", "contest", "meetup"]
DiscourseTagging.hidden_tag_names(Guardian.new(User.find_by_username('normal.user')))
["no-ads", "promotion-offered"]

ربما يكون شخص آخر قادرًا على تكرار المشكلة؟ أنا غير قادر على ذلك في الوقت الحالي.

أعتقد أنني وجدت المشكلة: كان #featured موجودًا في قائمة الموظفين فقط وفي قائمة ‘الوسوم الشائعة’ أيضًا. لست متأكدًا من كيفية وصوله إلى هناك، سأتحقق من صلاحيات الموظفين لأرى ما إذا كانوا قد أنشأوه بطريقة ما. آسف على إضاعة وقتك، لكنني أقدر دعمك كثيرًا! :pray:

لا مشكلة! أنا سعيد لأن السبب الجذري قد تم العثور عليه، ويمكننا جميعًا أن نشعر بقدر أكبر من الثقة بأن الميزة الجديدة تعمل كما هو مقصود.

آمل أن تثبت فائدتها لك وللموقع الخاص بك الآن بعد تصحيح مشكلات التكوين. أخبرونا كيف تسير الأمور معكم.