إشعار يدعي وجود مستخدمين للموافقة، لكن لا يوجد أحد.

يبدو هذا خطأً، لكن لا يمكنني رؤية كيفية تكراره.

أتلقى إشعارًا PM يقول:

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

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

3 إعجابات

ليس من قبيل المبالغة القول، ولكن هل تم إلغاء تحديد allow_new_registrations عن طريق الصدفة؟ من الواضح أن لديك إعداد must_approve_users ممكّنًا ولست متأكدًا من كيفية تأثر ذلك إذا تم تعطيل التسجيل. :thinking: أعتقد أن إعداد التسجيل سيتجاوز أي إنشاء للحساب ومع ذلك، ويعطله. لا، هذا لا معنى له أيضًا…

[اقتباس=“Lilly, post:2, topic:262853, username:Lilly”]
ليس المقصود أن أكون بديهية ولكن هل تم إلغاء تحديد allow_new_registrations بالصدفة؟
[/اقتباس]

من المؤكد تقريبًا أنه شيء واضح، لذلك أرحب بمساعدتكم.

نعم، كلاهما محددان. بعض الأشخاص يتم تسجيلهم والموافقة عليهم. الأمر فقط أن العدد الذي يُزعم أنه ينتظر لا يتطابق مع العدد المزعوم في الإشعار. أخبرني بـ 5، ولم يكن هناك سوى 2 في الأيام العديدة الماضية.

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

غريب جدًا بالفعل. يبدو الأمر وكأن شيئًا ما في تسجيل المستخدم يتم رفضه بعد إرسال طلب الموافقة للمراجعة…

3 إعجابات

هل هناك مستخدمون تمت مراجعتهم عند عرض جميع العناصر التي تمت مراجعتها، أو ربما من سجلات الموظفين؟ :person_shrugging:

غالبًا ما أتلقى رسائل خاصة/تذكيرات بالعناصر القابلة للمراجعة التي تمت مراجعتها بالفعل، لذلك لا يظهر شيء.

افترضت أن المشكلة كانت أن شخصًا آخر وافق على المستخدمين قبلي (أو قبل مالك الموقع)، لكنني لا أستطيع جعل الأرقام تتوافق بهذه الطريقة).

هل يمكن للمستخدم حذف حسابه قبل الموافقة على تسجيله؟

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

وجدت هذا الموضوع أثناء البحث قبل تقديم تقرير خطأ، لذا أضيف إليه.

ملخص سريع: الاستعلام الخاص بالإشعار خاطئ لأنه يحسب المستخدمين المرفوضين أيضًا.

الإشعار: 16 مستخدمًا ينتظرون الموافقة، انقر على الرابط، ترى 2 فقط.

الاستعلام المستخدم للإشعار هو هذا

puts AdminUserIndexQuery.new(query: "pending", stats: false).find_users_query.to_sql

SELECT "users".* FROM "users" 
WHERE (suspended_till IS NULL OR suspended_till <= '2023-11-13 11:05:23.225614') 
AND "users"."approved" = FALSE 
AND "users"."active" = TRUE 
ORDER BY users.created_at DESC,users.username

والذي يعطيني في حالتي 16 مستخدمًا

[4479, 4472, 4456, 4446, 4443, 4430, 4302, 4291, 4206, 4199, 4178, 4168, 4131, 4061, 3677, 3642]

عند إلقاء هذه المعرفات في قائمة المراجعة، أحصل على مستخدمين اثنين يحتاجان فعليًا إلى الموافقة (الحالة 0) و 14 مستخدمًا تم رفضهم بالفعل (الحالة 2)

ReviewableUser.where(type: 'ReviewableUser')
  .where(target_id: ids)
  .pluck(:target_id, :status)

[[3642, 2], [3677, 2], [4061, 2], [4131, 2], [4168, 2], 
[4178, 2], [4199, 2], [4206, 2], [4291, 2], [4302, 2], 
[4430, 2], [4443, 2], [4446, 2], [4456, 2], [4472, 0], [4479, 0]]
إعجابَين (2)

اشتكى شخص ما من هذا اليوم. قبل العثور على كل هذا، “حللت” المشكلة شيئًا كهذا:

bad=User.where(approved: false);
bad.each do |user| puts "https://community.open-emr.org/admin/users/#{user.id}/#{user.username}"; end;

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

لذا أعتقد أن هذا لا يزال خطأ.

أوه، وبعد ذلك:

ids=bad.pluck(:id);
ReviewableUser.where(type: 'ReviewableUser')
  .where(target_id: ids)
  .pluck(:target_id, :status)

الآن يعود بشيء مثل هذا:

=> [[4610, "rejected"], [4527, "rejected"], [4643, "rejected"], [4648, "rejected"]]

لذا ربما يجب حذف هؤلاء من ReviewableUser؟

أو ربما مجرد حذف المستخدمين؟

إعجابَين (2)

بصفتي مشرفًا (وليس مسؤولاً)، تمكنت من سرد المستخدمين المرفوضين في قائمة المراجعة غير المفلترة. ولكن لم أتمكن من العثور عليهم في قسم المستخدمين ولا الوصول إلى محرر المستخدمين للمستخدمين المرفوضين من قائمة المراجعة.

هذه هي معلمات التصفية المستخدمة لقائمة المراجعة لـ

https://gramps.discourse.group/review?additional_filters={}&sort_order=score&status=rejected&type=ReviewableUser

لذلك، إما أن يحتاج المشرفون إلى أن يكونوا قادرين على العثور على المستخدمين ذوي حالة الموافقة “مرفوض” و “لا” في علامات تبويب المستخدمين أو أن يكونوا قادرين على الانتقال إلى محرر المستخدمين من قائمة المراجعة.

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

أواجه نفس هذه المشكلة وقد تم توجيهي إلى هنا من قِبل الدعم.

أنا الموظف أو المسؤول الوحيد في الحساب، لذا فإن هذه بالتأكيد هي المشكلة وليست موافقة مسؤول آخر عليها.

بالنسبة لجميع هذه الإشعارات الثلاثة، عندما نقررت على قائمة الانتظار، لم يكن هناك مستخدمون في انتظار الموافقة:

إعجابَين (2)

لقد قمت مؤخرًا بتفعيل الموافقة على المستخدمين الجدد. أحصل على عدد قليل جدًا - إنها قطرات متقطعة وليست فيضًا. من المؤكد بنسبة 100% أنني أحصل على الإشعار، ثم أوافق على المستخدم (عادةً ما أوافق)، وبعد ذلك خلال دقيقة تقريبًا أحصل على إشعار وهمي جديد، بينما تكون قائمة المراجعة فارغة تمامًا من جديد.

يبدو الأمر وكأنه حالة سباق.

يمكنك استخدام استعلام مستكشف البيانات للعثور على المستخدم الذي لا يظهر في قائمة الانتظار والموافقة عليه مباشرةً من صفحة الإدارة الخاصة به.

SELECT id as user_id
FROM users
WHERE approved = false
AND active = true

هذا ما فعلته مؤخرًا. كما أنني أتلقى هذه الرسالة كل 7 أيام. لذا استخدمت الاستعلام وكانت النتيجة كالتالي:

ثم قمت بالتحقق من ذلك في صفحة إدارة المستخدمين:

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

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

SELECT id as user_id
FROM users
WHERE approved = false
AND active = true

أعاد مستخدمًا واحدًا، وهو ليس جديدًا بأي حال:

انضم في 9 أبريل 2021
آخر منشور في 16 أبريل
مُشاهد في 16 أبريل
عدد المشاهدات 1308
مستوى الثقة: عضو

همم، لا يمكنني الموافقة عليهم يدويًا. يبدو أن هناك خطأ ما!

تعديل: لستُ الوحيد في هذا الوضع — انظر هذا الموضوع الجديد: زر الموافقة في ملف المستخدم لا يعمل

التفاصيل - موضوع جانبي هنا

في واجهة المسؤول، أرى زر «الموافقة»، وعند الضغط عليه لا يحدث شيء. في وحدة تحكم المتصفح، أرى خطأ 500.

requestedUrl:
“/admin/users/332/approve”
responseText:
"<!DOCTYPE html>\n<html>\n<head>\n <title>أوبس - خطأ 500</title>\n <meta http-equiv="Content-Type" content="text/html; charset=utf-8">\n</head>\n<body>\n <h1>أوبس</h1>\n <p>واجه البرنامج الذي يشغل منتدى المناقشة هذا مشكلة غير متوقعة. نعتذر عن الإزعاج…

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

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

لم ألاحظ أبدًا عدد مستخدمين أكثر مما ذكره عنوان الرسالة التي أبلغتني بها. الرسالة تقول «1» وقد وجدت مستخدمًا واحدًا فقط.

ولكن حتى بدون «مستكشف البيانات»، يمكنك العثور بكفاءة على المستخدمين غير المعتمدين. يمكنك تصدير دليل المستخدمين الخاص بك باستخدام الزر الموجود في الزاوية العلوية اليمنى من /admin/users.

ثم افتح الملف باستخدام أي أداة تفضلها للتحقق من المستخدمين الذين تكون قيمة approved عندهم false. لقد استخدمت Excel، ويمكنك أن ترى أن هناك مستخدمًا واحدًا فقط حقًا:

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

@Moin، كم أنت مفيد! لماذا لم أفكر في ذلك؟

يا إلهي، يُظهر التصدير أن هناك مستخدمين غير معتمدين! رغم أن صفحة المراجعة لا تزال فارغة:

يبدو هذا خطأً جسيماً. لكان هؤلاء المستخدمون محبطين للغاية لو لم يتوصل إليهم أحد أبداً. قبل أن أبحث عنهم لأعتمدهم، سأمنح Discourse فرصة للتحقيق في الخطأ المتمثل في عدم ظهورهم في /review.

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

هل تم تفعيل حساباتهم؟ في بعض الأحيان أواجه عددًا قليلًا من هؤلاء المستخدمين أيضًا لأنهم لم يوقِّروا عنوان بريدهم الإلكتروني بعد. ومن المنطقي أن يتطلب الأمر موافقة من الموظفين (=وقتًا) فقط بعد تأكيد البريد الإلكتروني.