قسم الرسائل لشريط التنقل الجانبي

:information_source: الملخص يضيف روابط صندوق الوارد للرسائل الشخصية والجماعية إلى الشريط الجانبي، بما في ذلك مؤشرات الرسائل غير المقروءة
:eyeglasses: المعاينة Theme Creator
:hammer_and_wrench: المستودع GitHub - moin-Jana/sidebar-messages-section: Adds personal and group message inbox links to the sidebar, including unread message indicators.
:question: دليل التثبيت كيفية تثبيت سمة أو مكون سمة
:open_book: جديد في سمات Discourse؟ دليل المبتدئين لاستخدام سمات Discourse

تثبيت مكون السمة هذا

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

صندوق الوارد الشخصي

بشكل افتراضي، يضيف المكون رابطًا إلى صندوق الوارد الشخصي لجميع المستخدمين. باستخدام الإعداد show_personal_inbox، يمكن للمسؤولين أيضًا إخفاءه تمامًا أو إظهاره فقط للمستخدمين المسموح لهم بإنشاء رسائل خاصة بناءً على إعداد الموقع Personal message enabled groups. يعكس هذا كيفية ظهور رابط صندوق الوارد الشخصي في قائمة الإشعارات، وملف تعريف المستخدم، وقسم المجتمع في الشريط الجانبي.

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

صناديق الوارد الجماعية

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

مؤشر غير مقروء

يعرض كل رابط صندوق وارد حالة الرسالة الحالية بناءً على تفضيل المستخدم لـ “إظهار عدد العناصر الجديدة”: إما نقطة أو العدد الرقمي. يتم عرض القيم التي تزيد عن 100 على أنها 99+.

13 إعجابًا

رائع، أحسنت يا موين! :clap: :tada:

3 إعجابات

اقتراح بسيط: ربما يجب أن يكون الملف javascripts/discourse/api-initializers/group-inboxes-in-sidebar.gjs ملف JS بدلاً من GJS؟

مكون رائع!


لقد أمضيت الدقائق العشر الماضية في تصفح الكود وفحص الفئات الأساسية ويجب أن أقول كم هو مذهل أن Discourse تم تصميمه (وما زال) بحيث يتناسب كل شيء بشكل جيد للغاية.

إعجابَين (2)

نعم، توفر واجهة برمجة التطبيقات (API) كل ما تحتاجه تقريبًا لجعل القسم يبدو ويعمل مثل جميع الأقسام الأخرى. يستخدمه الدردشة أيضًا، مما أثر على الأرجح على التطوير. تم تطوير الميزات في نفس الوقت.
لسوء الحظ، لا يتم دعم get badgeText()، الذي يعرض عدد المواضيع غير المقروءة في الأقسام الأساسية، لذلك اضطررت إلى أن أكون مبدعًا بعض الشيء مع الأرقام.

4 إعجابات

لم أتمكن من العثور على إعداد مسؤول لهذا، لذا هذا إعلان عام (PSA) سيخفيه عبر CSS:

.sidebar-section-link[data-link-name="my-messages"] {
    display: none;
}
إعجاب واحد (1)

لماذا تفضل إخفاء الرابط باستخدام CSS بدلاً من استخدام الخيار الحالي للمسؤولين لتخصيص الشريط الجانبي؟ يبدو أن الإخفاء باستخدام CSS أكثر عرضة للتعطل من استخدام خيارات Discourse المضمنة.

إعجابَين (2)

ديرب، أنت على حق. كنت أُفرط في التفكير، معتقدًا أنها ستكون إعدادًا في وحدة التحكم الإدارية و/أو وظيفة أساسية.

إعجاب واحد (1)

لست الوحيد الذي كان يبحث هناك. :joy:


هذا مكون رائع!

إعجاب واحد (1)

لقد قمت بتوسيع الملاحظة:

إعجابَين (2)

نعم فعلت. ولكن بصفتنا مسؤولين، غالبًا ما نعتاد على المرور عبر لوحة المسؤول. :wink:. لذلك عند تصفح التعليمات، قد نتغاضى عن بعض التفاصيل.

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

منذ زمن بعيد مع نظام أندرويد على سبيل المثال، إذا كنت أتذكر، كان Gingerbread يحتوي على Nav (التنقل) و Maps (الخرائط). قضيت حوالي 10 دقائق في البحث عن Nav بعد أن دمجوه مع Maps في تحديث. :joy: