Can't modify / delete users awaiting email confirmation

RCONN

Member
Using Xenforo 1.5.5.

I have a couple of users who forgot their passwords and tried to reset them. They apparently missed the email confirmation, and now they're in a state of limbo -- I can see them in the control panel, but I cannot modify or delete them. If I try to search for them (or select them from the "List All Users" list), I get the "Create New User" dialog with all of their existing info filled out, but I cannot modify it. For example, to change "awaiting email confirmation" to "Valid", I get a popup error:

Please correct the following errors:

* User Name:
User names must be unique. The specified user name is already in use.
* Email:
Email addresses must be unique. The specified email address is already in use.

Should XenForo be showing the "Create New User" dialog here?
 
We've seen this before and it related to users who did not have all the associated records in all of the relevant user tables.

This would usually happen because of an add-on or some other data manipulation.
 
FWIW, I just dealt with this elsewhere today. Running these queries should help clear it up:
Code:
INSERT IGNORE INTO xf_user_option (user_id) SELECT user_id FROM xf_user;
INSERT IGNORE INTO xf_user_privacy (user_id) SELECT user_id FROM xf_user;
INSERT IGNORE INTO xf_user_profile (user_id) SELECT user_id FROM xf_user;
INSERT IGNORE INTO xf_user_authenticate (user_id) SELECT user_id FROM xf_user;

It'd be important to identify how these records came to be missing though.
 
I run this in phpmyadmin this is the result

# MySQL returned an empty result set (i.e. zero rows).
INSERT IGNORE INTO xf_user_option( user_id )
SELECT user_id
FROM xf_user;# MySQL returned an empty result set (i.e. zero rows).
INSERT IGNORE INTO xf_user_privacy( user_id )
SELECT user_id
FROM xf_user;# MySQL returned an empty result set (i.e. zero rows).
INSERT IGNORE INTO xf_user_profile( user_id )
SELECT user_id
FROM xf_user;# MySQL returned an empty result set (i.e. zero rows).
INSERT IGNORE INTO xf_user_authenticate( user_id )
SELECT user_id
FROM xf_user;# MySQL returned an empty result set (i.e. zero rows).


There is also a problem, when a user is banned they are banned but their usergroup isn't changed to banned it still says 'Member' - but they are banned for all other purposes. Real strange.
 
There is also a problem, when a user is banned they are banned but their usergroup isn't changed to banned it still says 'Member' - but they are banned for all other purposes. Real strange.
Pretty sure this is as expected. Putting them into BAN effects their STATUS, not their user group. You can always create a Banned user group to assign them to, with associated NEVER restrictions in place if desired (that's what numerous admins do).
 
Top Bottom