Welcome to the Question2Answer Q&A. There's also a demo if you just want to try it out.
+1 vote
in Q2A Core by
I think that user's recognition condition is unrelated to user's level. Since we can judge user's approval state by QA_USER_FLAGS_MUST_APPROVE of qa_users.flags, I can't understand the reason of QA_USER_LEVEL_APPROVED needs. It is hard to make program using the relation of user level and permission because user level has QA_USER_LEVEL_APPROVED.

Excuse me, please let me know developer's opinion.
Q2A version: 1.6

1 Answer

+1 vote
There are two ways to use the user moderation/approval system:

1. Until they are approved, users can do nothing - this means they have QA_USER_FLAGS_MUST_APPROVE set.

2. Users not yet approved can do some things, but not others - this means that QA_USER_LEVEL_APPROVED is relevant.

See the relevant options in the permissions and spam panel of the admin section of Q2A 1.6 beta.
Thank you gid. I cannot yet understand difference with QA_USER_FLAGS_EMAIL_CONFIRMED. Why is user level necessary for only "APPROVED"?
The reason is that the approved status is set by the admin, like expert, editor, etc... The confirmed status is achieved by the user confirming their email. An admin can't "unconfirm" a user's email address. But you are right that internally the confirmed status could have been done as a user level instead. It's just not the way it was implemented.