require($INC);
}
-//
+// Checks wether the nickname is active
function NICKNAME_IS_ACTIVE ($uidNick) {
// By default nothing is found...
$ret = false;
// Increment cache counter
incrementConfigEntry('cache_hits');
} else {
- // Search in database
- // @TODO Can we replace this with GET_TOTAL_DATA() ?
- $result = SQL_QUERY_ESC("SELECT userid FROM `{!_MYSQL_PREFIX!}_user_data` WHERE userid=%s OR nickname='%s' LIMIT 1",
- array(bigintval($uidNick), $uidNick), __FUNCTION__, __LINE__);
+ // Nickname or userid used?
+ $nick = NICKNAME_GET_NICK($uidNick);
- // Check existence of nickname
- $ret = (SQL_NUMROWS($result) == 1);
+ // Check for nickname
+ $ret = ($nick != $uidNick);
// Put it in cache
$GLOBALS['cache_array']['nick_active'][$uidNick] = $ret;
-
- // Free result
- SQL_FREERESULT($result);
}
// Return nickname
return $ret;
}
-//
+// "Getter" for nickname for specfied userid
function NICKNAME_GET_NICK ($userid) {
// If not found...
$ret = '';
// Increment cache counter
incrementConfigEntry('cache_hits');
- } elseif (NICKNAME_IS_ACTIVE($userid)) {
- // Search for non-empty nickname
- $result = SQL_QUERY_ESC("SELECT nickname FROM `{!_MYSQL_PREFIX!}_user_data` WHERE userid=%s AND nickname != '' LIMIT 1",
- array(bigintval($userid)), __FUNCTION__, __LINE__);
-
- // Found?
- if (SQL_NUMROWS($result) == 1) {
- // Load nickname from database
- list($ret) = SQL_FETCHROW($result);
+ } else {
+ // Init result
+ $result = false;
+
+ // Nickname or userid used?
+ if (''.round($userid).'' === ''.$userid.'') {
+ // Userid given
+ $result = SQL_QUERY_ESC("SELECT `nickname` FROM `{!_MYSQL_PREFIX!}_user_data` WHERE `userid` =%s LIMIT 1",
+ array(bigintval($userid)), __FUNCTION__, __LINE__);
+
+ // Found?
+ if (SQL_NUMROWS($result) == 1) {
+ // Load nickname from database
+ list($ret) = SQL_FETCHROW($result);
+
+ // Put it in cche
+ $GLOBALS['cache_array']['nicknames'][$userid] = $ret;
+ } // END - if
+
+ // Free result
+ SQL_FREERESULT($result);
+ } else {
+ // Direct nickname found!
+ $ret = $userid;
// Put it in cche
$GLOBALS['cache_array']['nicknames'][$userid] = $ret;
- } // END - if
-
- // Free result
- SQL_FREERESULT($result);
+ }
}
// Return nickname
return $ret;
}
-// Simple wrapper function
-function NICKNAME_PROBE_ON_USERID ($uid) {
- return (NICKNAME_GET_NICK($uid) != "");
-}
-
//
?>