Account activation / email verification email not sent on sign up, when "must approve users" option is turned on

I’ve turned on the “must approve users” options in my login options.

When this is turned on, the email verification emails don’t get sent, so user accounts sit as inactive. The message to the user after signing up is:

Thanks for signing up. We will notify you when your account has been approved.

In order to allow the newly created account, I need to activate it, then also approve it. This seems… a bit much, especially since activating an account is sat inside the admin page for the individual user, and the pending user list only shows the user should it have been activated, but not approved.

I would of expected users to still need to verify their emails, which then activates their account, and then their account would just need approving by a staff member or admin.

This is on version: v1.9.0.beta8 +99

Is this just me? is it a bug? or is it supposed to work this way?

Can you repro this @techapj?

If “must approve users” is enabled and a user signs up, as soon as Admin presses Approve button, they will see this message:

User approved and email sent with activation instructions.

And I verified that the activation email is being sent to user with account activation link, clinking on that link the user gets activated.

This is how it’s supposed to work.

3 Likes

I can’t click approve, until I’ve clicked activate.

So I’ve created another test user to show this:

This user doesn’t show up in the “Pending” list:

If I click through to it’s page and look at it’s permission section:

I am unable to approve, if I click activate:

I can now approve, (though it also appears to confirm the email address):

Which says it’ll send an email.

Which if I follow the link:

image

and click the button:

Which makes sense, since, in order for me to approve the user, I already had to activate their account.

It seems to me the order of operations for approve and activate are the wrong way round.

The solution the the flow here could either be:

  1. Inactive users first make themselves active by following an email sent immediately after sign up, at which point, due to being made active but not approved, they show up in the pending list waiting for an admin to approve them to actually let them in the site.

or

  1. Users that are inactive are made approvable without first being activated, which approving triggers the email much like it does now, allowing them to activate the account.
1 Like

This is odd and should not be happening. This may be due to a site setting other than “must approve users”, not sure which… can you share a screenshot of site settings that you have overridden via private message? Also, are there custom plugins installed on your Discourse instance?

2 Likes

Message sent your way :slight_smile:

1 Like

Same problem here, there has been no change in settings. it started happening last thurs or friday

For now the fix seems to be go to “New Members” under users click on activate which then takes you to the normal screen to approve, from there it goes through the normal steps…

In some ways if we would get notification this is a great thing and a big time saver as we have 30 communities

What was the resolution here @techapj?

@eviltrout fixed this issue via:

https://github.com/discourse/discourse/commit/9b3b39d8a2349b232e6e8588a2169698158ba702

3 Likes