وضع الإبطاء مفيد جدًا لبعض المواضيع في منتدانا. لكنني وجدت أن Discourse به عيب تصميمي خطير بشأنه: لا يوجد سجل لمن أضاف أو أزال وضع الإبطاء. لقد تحققت حتى من قاعدة البيانات ولم يكن هناك سجل. أي مستخدمي TL4 لديهم هذه القدرة. بالنسبة للمواضيع المثيرة للجدل، فإن إضافة أو إزالة وضع الإبطاء يجعل الموضوع أكثر إثارة للجدل ونحن بحاجة حقًا إلى معرفة المستخدم الذي قام بذلك.
يمكنك الاستعلام عن هذه المعلومات باستخدام مستكشف البيانات. أعتقد أن هذا يجب أن يعمل - ستحتاج إلى تحديد تواريخ البدء والانتهاء. يجب أن يعرض الموضوع، ووقت الوضع البطيء بالثواني، ومتى تم تحديث الوضع البطيء للموضوع، ومن قام بذلك:
-- [params]
-- date :start_date
-- date :end_date
SELECT
t.id AS topic_id,
t.title,
t.slow_mode_seconds,
t.updated_at,
u.id AS user_id,
u.username
FROM
topics t
JOIN
users u ON t.user_id = u.id
WHERE
t.slow_mode_seconds > 0
AND t.updated_at BETWEEN :start_date AND :end_date
ORDER BY
t.updated_at DESC
أعتقد أنها مخزنة في topic_timers (على الأقل أثناء نشاطها) لذا يمكن أن يؤدي شيء كهذا إلى حل المشكلة:
SELECT
topic_id,
user_id
FROM topic_timers
WHERE status_type = 9
على الرغم من أن كلا الاستعلامين يعطيان المؤقتات النشطة فقط ولا يعطيان النتائج التي انتهى فيها الوضع البطيء. أعتقد أنه سيكون إضافة جيدة لوجود هذا في سجلات إجراءات الموظفين.
هذا يعطيني المستخدم الذي أنشأ الموضوع (أو آخر من قام بتحديثه)، وليس المستخدم الذي أضاف أو أزال وضع الإبطاء.
ما هو المهم بالنسبة لنا هو من قام بإزالة الوضع البطيء الذي أضافه المسؤول.
أتفق
نعم، أرى ذلك الآن. ![]()
u.id AS user_id,
مرحباً @physixfan
شكراً لاقتراحك! هذا بالفعل طلب ميزة مفيد. لقد قمت بدمج طلب السحب الذي يضيف هذه الوظيفة:
يمكنك الآن رؤية من قام بتعديل الوضع البطيء في لوحة سجلات المسؤول:
تم إغلاق هذا الموضوع تلقائيًا بعد يومين من آخر رد. لم تعد الردود الجديدة مسموحًا بها.
