Users Awaiting Approval

Users Awaiting Approval 1.5

No permission to download
Compatible XF 1.x versions
  1. 1.2
  2. 1.3
  3. 1.4
  4. 1.5

Adds Custom User Fields to Users Awaiting Approval page.

(Example of Users Awaiting Approval page)


(Example of Options page)


  • Custom User Fields can be added.
  • Shows location based on IP address.
  1. Download and unzip it.
  2. Upload the Andy folder to your server. The correct location is library/Andy.
  3. From your Admin Control Panel, go to the "Install Add-on" page.
  4. Upload the addon-UsersAwaitingApproval_v1.5.xml file
  5. Click the Install Add-on button.

The andy_user_moderate template will need to be edited. This requires development mode which is done by adding the following to your config.php file:

$config['debug'] = true;

Example of andy_user_moderate template which is located here:

Admin CP -> Development -> Admin Templates

Rich (BB code):
<xen:title>{xen:phrase users_awaiting_approval}</xen:title>

<xen:form action="{xen:adminlink 'users/moderated/update'}">
    <xen:foreach loop="$users" value="$user">
            <xen:controlunit label="{xen:phrase user}:"><a href="{xen:adminlink users/edit, $user}" target="_blank">{$user.username}</a> ({$})</xen:controlunit>
            <xen:controlunit label="{xen:phrase joined}:"><xen:datetime time="{$user.register_date}" /></xen:controlunit>
            <xen:if is="{$user.ip}">
                <xen:controlunit label="{xen:phrase ip}:"><a href="{xen:link misc/ip-info, '', 'ip={$user.ip}'}" target="_blank">{$user.ip}</a> <xen:if is="{$user.ipHost}">({$user.ipHost})</xen:if></xen:controlunit>

            <xen:controlunit label="Location based on IP:">{$user.location}</xen:controlunit>
            <xen:controlunit label="Name:">{$}</xen:controlunit>
            <xen:controlunit label="Motorcycle:">{$user.customFields.motorcycle}</xen:controlunit>

            <xen:if is="{$user.spamDetails}">
                <xen:controlunit label="{xen:phrase spam_log}:"><ul>
                    <xen:foreach loop="{$user.spamDetails}" value="{$detail}">
                        <li>{xen:escape $detail, false}</li>
            <xen:radiounit label="{xen:phrase action}:" name="users[{$user.user_id}][action]">
                <xen:option value="none" selected="true">{xen:phrase do_nothing}</xen:option>
                <xen:option value="approve">{xen:phrase approve}</xen:option>
                <xen:option value="reject">
                    <xen:label>{xen:phrase reject_and_delete_with_rejection_reason}:</xen:label>
                    <xen:textbox placeholder="{xen:phrase optional}" name="users[{$user.user_id}][reject_reason]" size="45" />
            <xen:checkboxunit label="">
                <xen:option name="users[{$user.user_id}][notify]" selected="!{$user.spamDetails}">{xen:phrase notify_user_if_action_was_taken}</xen:option>

    <xen:submitunit save="{xen:phrase process_users}" />

The code shown in red is what I use on my forum. If you don't have any custom user fields then delete this code. Otherwise if you wish to show your own custom user field code(s) which are filled in during registration, you will want to use my example and edit the template code to match your custom user Field ID names. For example change "name" and "motorcycle" to Field ID's that you use.


A table called xf_register_location is created in your database.

Sending a donation:

If you like this add-on, please consider sending a small donation.

Thank you.
First release
Last update
5.00 star(s) 1 ratings

More resources from AndyB

Latest updates

  1. See description

    Users Awaiting Approval v1.5 changes: Added function to save location based on IP during...
  2. See description

    Users Awaiting Approval v1.4 changes: Fixed coding error in PHP file.
  3. See description

    Users Awaiting Approval v1.3 changes: Added code to prevent server error log when

Latest reviews

Finally easier to approve questions based on custom fields user on registration. Before it was so hard to go and check each profile and now can do it easily!
Top Bottom