CSS لإخفاء غير المرئي لكل TL أو المجموعة

ربما يجب أن أصف أولاً ما أحاول فعله.

المستخدمون ذوو المستويات الأعلى في منتدى الخاص بي يحبون استخدام unseen. لذلك أضفته إلى top menu. لكن المستخدمين ذوي المستويات 0/1 لا يحتاجون إليه لأن latest و/أو categories تظهر لهم بنفس الطريقة تمامًا. بالنسبة لهم، unseen مجرد ضوضاء.

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

لذلك قررت إخفاء unseen عن أي شخص أقل من المستوى 2.

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

إذًا… هل يمكن لأحد أن يوجهني في الاتجاه الصحيح؟

في العالم المثالي، سيكون لدينا مكون لتعديل top menu حسب المجموعات. أو يمكننا حتى إعداد الافتراضيات والسماح للمستخدم بتحديد ما يريد رؤيته أو عدم رؤيته. لكننا لا نعيش في عالم مثالي، أليس كذلك؟ حسنًا، في نفس عالم الأحلام، سأعرف CSS أيضًا :joy:

هناك خطر من أنني أرى هذا على أنه مشكلة أكبر مما هو عليه. في عالمي، يستخدم حوالي 95٪ من المستخدمين الهواتف المحمولة ولا يستخدمون القائمة المنسدلة على الإطلاق - لذلك، لا يرون unseen في المقام الأول.

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

لست متأكدًا مما إذا كان شخص ما في ميتا قد طور مكونًا مشابهًا من قبل … ولكن إذا لم يكن الأمر كذلك ، فسأقوم بنشره

تحديث: المبدأ العام هو كالتالي ، مع الأخذ في الاعتبار أن تنفيذي غريب جدًا … لن أقوم بنشره

<script type="text/discourse-plugin" version="0.8">
try {
    let your_tl = -1; // -1 يعني مجهول
    if (api.getCurrentUser()?.trust_level) {
        your_tl = api.getCurrentUser().trust_level;
    }
    if (your_tl < 1) {
        var style = document.createElement('style');
        style.innerHTML = '#tl1-only{display:none;}'; // أو شيء آخر
        document.head.appendChild(style);
    }
} catch(err) {
    // ...
}
</script>
إعجابَين (2)