// Set ID number when left empty
if (empty($_POST['id'])) $_POST['id'] = 0;
+ // Init result
+ $result = false;
+
// Probe userid/nickname
- $probe_nickname = ((EXT_IS_ACTIVE("nickname")) && (("".round($_POST['id'])."") != $_POST['id']));
- if ($probe_nickname) {
+ if ((EXT_IS_ACTIVE("nickname")) && (("".round($_POST['id'])."") != $_POST['id'])) {
// Nickname entered
$result = SQL_QUERY_ESC("SELECT userid, status FROM `"._MYSQL_PREFIX."_user_data` WHERE nickname='%s' OR email='%s' LIMIT 1",
array($uid, $_POST['email']), __FILE__, __LINE__);
- } else {
+ } elseif (($uid > 0) && (empty($_POST['email']))) {
// Direct userid entered
- $result = SQL_QUERY_ESC("SELECT userid, status FROM `"._MYSQL_PREFIX."_user_data` WHERE userid=%s OR email='%s' LIMIT 1",
- array(bigintval($uid), $_POST['email']), __FILE__, __LINE__);
+ $result = SQL_QUERY_ESC("SELECT userid, status FROM `"._MYSQL_PREFIX."_user_data` WHERE userid=%s LIMIT 1",
+ array(bigintval($uid)), __FILE__, __LINE__);
+ } elseif (!empty($_POST['email'])) {
+ // Email entered
+ $result = SQL_QUERY_ESC("SELECT userid, status FROM `"._MYSQL_PREFIX."_user_data` WHERE email='%s' LIMIT 1",
+ array($_POST['email']), __FILE__, __LINE__);
+ } else {
+ // Userid not set!
+ DEBUG_LOG(__FILE__, __LINE__, "Userid is not set! BUG!");
+ $ERROR = CODE_WRONG_ID;
}
// Any entry found?
} else {
// Account is locked or unconfirmed
switch ($status) {
- case "LOCKED" : $MSG = CODE_ID_LOCKED; break;
- case "UNCONFIRMED": $MSG = CODE_ID_UNCONFIRMED; break;
+ case "LOCKED" : $ERROR = CODE_ID_LOCKED; break;
+ case "UNCONFIRMED": $ERROR = CODE_ID_UNCONFIRMED; break;
+ default: // Unhandled account status!
+ $ERROR = CODE_UNHANDLED_STATUS;
+ DEBUG_LOG(__FILE__, __LINE__, sprintf("Undhandled account status %s detected.", $status));
+ break;
}
// Load URL