<p>There is no current way that I know of that does this, but you can probably do it relatively easy with a custom plugin.</p>

<ol>
<li><p>If e-mail validation is turned off in the Users settings, the created user is verified by default. You can hook into the <a href="http://buildwithcraft.com/docs/plugins/events-reference#users-onBeforeSaveUser" rel="nofollow">users.onBeforeSaveUser event</a> and set the status as <strong>UserStatus::Pending</strong>. Then redirect them to a screen saving something like "Blah blah you will be notified once we activate you blah blah".</p></li>
<li><p>Hook into the <a href="http://buildwithcraft.com/docs/plugins/events-reference#users-onSaveUser" rel="nofollow">users.onSaveUser event</a>, check if this is a new user (isNewUser) and send off an e-mail to a given e-mail.</p></li>
<li><p>Admin logins and activate as normal.</p></li>
<li><p>(Optional) In the same users.onSaveUser event, if this isn't a new user and the user status is UserStatus::Active, send out an e-mail to the address given by the user.</p></li>
</ol>

CC BY-SA 3.0
2014-09-19T04:06:51.457Z
Thanks Fred. Step one is not working for me. When I check to see if the user status is pending it shows as such, but when it's saved it's always active. I am doing exactly what you say and it's not working, let me know if I am doing something wrong. http://d.pr/i/Pqmu
Matt Green
CC BY-SA 3.0
2014-09-19T07:31:30.300Z
I'd have to say my suggestion is untested, so there might be something overriding it, or maybe it's too early. Try the onSaveUser event? Have you tried reading through UsersController@actionSaveUser?
Fred Carlsen
CC BY-SA 3.0
2015-02-19T15:34:30.370Z
I've got a site coming up that will need this functionality - did either of you (or anyone else) actually write the plugin required to do this?
darylknight
CC BY-SA 3.0
2015-02-19T22:07:54.597Z
I was out of time, so I ended up writing a Laravel application instead. But check out Brad's answer regarding CUserIdentity here: http://craftcms.stackexchange.com/questions/474/need-help-with-plugin-for-saml-authentication/486#486
Fred Carlsen
CC BY-SA 3.0
2014-09-17T21:56:30.000Z
2014-09-17T21:56:30.000Z
Fred Carlsen
<p>There's a nice plugin by Trevor Davis for this use case:</p>

<p><a href="https://github.com/vigetlabs/craft-pendinguser" rel="nofollow">https://github.com/vigetlabs/craft-pendinguser</a></p>

CC BY-SA 3.0
2016-04-14T09:58:50.940Z
2016-04-14T09:58:50.940Z
carlcs
<p>Want to do two things and wondering if I'm missing something in the docs or if someone has tackled this already: </p>

<ol>
<li>User registers on the front end and get success messages saying they will be notified when approved.</li>
<li>Admin is notified that they just did that.</li>
<li>Admin activates them</li>
<li>They get email saying they are good to go. (optional I guess)</li>
</ol>

<users><registration>
User registration approval/activation
# User registration approval/activation

(Asked by: username_0 on 2014-09-17)

Want to do two things and wondering if I'm missing something in the docs or if someone has tackled this already:

1. User registers on the front end and get success messages saying they will be notified when approved.
2. Admin is notified that they just did that.
3. Admin activates them
4. They get email saying they are good to go. (optional I guess)

**Tags:** users, registration


---

## 2 answers

### Answer by username_1 on 2014-09-17. Score: 3

There is no current way that I know of that does this, but you can probably do it relatively easy with a custom plugin.

1. If e-mail validation is turned off in the Users settings, the created user is verified by default. You can hook into the [users.onBeforeSaveUser event](http://buildwithcraft.com/docs/plugins/events-reference#users-onBeforeSaveUser) and set the status as **UserStatus::Pending**. Then redirect them to a screen saving something like "Blah blah you will be notified once we activate you blah blah".
2. Hook into the [users.onSaveUser event](http://buildwithcraft.com/docs/plugins/events-reference#users-onSaveUser), check if this is a new user (isNewUser) and send off an e-mail to a given e-mail.
3. Admin logins and activate as normal.
4. (Optional) In the same users.onSaveUser event, if this isn't a new user and the user status is UserStatus::Active, send out an e-mail to the address given by the user.

> **Comments:**
> **username_0**: Thanks Fred. Step one is not working for me. When I check to see if the user status is pending it shows as such, but when it's saved it's always active. I am doing exactly what you say and it's not working, let me know if I am doing something wrong. http://d.pr/i/Pqmu  
> **username_1**: I'd have to say my suggestion is untested, so there might be something overriding it, or maybe it's too early. Try the onSaveUser event? Have you tried reading through UsersController@actionSaveUser?  
> **username_2**: I've got a site coming up that will need this functionality - did either of you (or anyone else) actually write the plugin required to do this?  
> **username_1**: I was out of time, so I ended up writing a Laravel application instead. But check out Brad's answer regarding CUserIdentity here: http://craftcms.stackexchange.com/questions/474/need-help-with-plugin-for-saml-authentication/486#486  

---

### Answer by username_3 on 2016-04-14. Score: 3

There's a nice plugin by Trevor Davis for this use case:

<https://github.com/vigetlabs/craft-pendinguser>


---

