X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Flibs%2Fnickname_functions.php;h=91f88510898146220c297231c5e4a18efaf81cf9;hb=da5c63bacddced77a951cbe7b223f314885a6c87;hp=fde09eadf90ed5784c44097cabec4f3dd6700d93;hpb=963e55ca1ea79e255f235e359cde9f7862191dc5;p=mailer.git diff --git a/inc/libs/nickname_functions.php b/inc/libs/nickname_functions.php index fde09eadf9..91f8851089 100644 --- a/inc/libs/nickname_functions.php +++ b/inc/libs/nickname_functions.php @@ -1,7 +1,7 @@ 0) OR nickname='%s' LIMIT 1", - array(bigintval($uidNick), $uidNick), __FILE__, __LINE__); +// Checks whether the nickname is active +function isNicknameOrUserid ($useridNick) { + // By default nothing is found... + $ret = FALSE; - // Check existence of nickname - if (SQL_NUMROWS($result) == 1) $ret = true; + // Found in cache? + if (isset($GLOBALS['nickname_active'][$useridNick])) { + // Use it directly + $ret = $GLOBALS['nickname_active'][$useridNick]; + } elseif ((!empty($useridNick)) && ($useridNick != '0')) { + // Nickname or userid used? + $nick = getNickname($useridNick); - // Free result - SQL_FREERESULT($result); + // Check for nickname + $ret = ($nick == $useridNick); + + // Put it in cache + $GLOBALS['nickname_active'][$useridNick] = $ret; + } // Return nickname return $ret; } -// -function NICKNAME_GET_NICK($userid) -{ + +// "Getter" for nickname for specfied userid +function getNickname ($userid) { // If not found... - $ret = ""; + $ret = ''; - // 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)), __FILE__, __LINE__); + // Found in cache? + if (isset($GLOBALS['nicknames'][$userid])) { + // Use it directly + $ret = $GLOBALS['nicknames'][$userid]; + } else { + // Init result + $result = FALSE; - // Found? - if (SQL_NUMROWS($result) == 1) - { - // Load nickname from database - list($ret) = SQL_FETCHROW($result); - } + // Nickname or userid used? + if ('' . bigintval($userid, TRUE, FALSE) . '' === '' . $userid . '') { + // Userid given, so try to load user data + if (fetchUserData($userid)) { + // Load nickname from database + $ret = getUserData('nickname'); + + // Put it in cche + $GLOBALS['nicknames'][$userid] = $ret; + } // END - if + } else { + // Direct nickname found + $ret = $userid; - // Free result - SQL_FREERESULT($result); + // Put it in cche + $GLOBALS['nicknames'][$userid] = $ret; + } + } // Return nickname return $ret; } -// + +// [EOF] ?>