if (isGetRequestParameterSet('mode')) $add .= '&mode='.getRequestParameter('mode');
/* Creates the list of letters and makes them a link. */
- $alphabet = explode(',', '{--_ALL2--}' . ',A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,' . '{--_OTHERS--}');
+ $alphabet = explode(',', 'A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,');
$num = count($alphabet) - 1;
$OUT = '';
while (list($counter, $ltr) = each($alphabet)) {
elseif (isGetRequestParameterSet('mode')) $add .= '&mode=' . getRequestParameter('mode');
// Makes order by links..
- if ($letter == 'front') $letter = '{--_ALL2--}';
+ if ($letter == 'front') $letter = '';
// Prepare array with all possible sorters
$list = array(
if (($page == getRequestParameter('page')) || ((!isGetRequestParameterSet('page')) && ($page == 1))) {
$OUT .= '<strong>-';
} else {
- if (!isGetRequestParameterSet('letter')) setGetRequestParameter('letter', '{--_ALL2--}');
+ if (!isGetRequestParameterSet('letter')) setGetRequestParameter('letter', '');
if (!isGetRequestParameterSet('sortby')) setGetRequestParameter('sortby', 'userid');
// Base link
$add = '';
$errorCode = '0';
$ext = '';
+ $isFound = false;
// Init array
$content = array(
$ext = 'nickname';
} else {
// Direct userid entered
- fetchUserData($userid);
+ $isFound = fetchUserData($userid);
}
// No error found?
- if ($errorCode == '0') {
+ if (($errorCode == '0') && ($isFound === true)) {
// Get user data array and set userid (e.g. important if we login with nickname)
$content = getUserDataArray();
if (!empty($content['userid'])) $userid = bigintval($content['userid']);
// Wrong password!
$errorCode = getCode('WRONG_PASS');
}
- } elseif (getUserData('status') != 'CONFIRMED') {
+ } elseif ((isUserDataValid()) && (getUserData('status') != 'CONFIRMED')) {
// Create an error code from given status
$errorCode = generateErrorCodeFromUserStatus(getUserData('status'));
// Nickname entered
$result = SQL_QUERY_ESC("SELECT `userid`, `status` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `nickname`='%s' OR `userid`='%s' OR `email`='%s' LIMIT 1",
array($userid, $userid, $email), __FUNCTION__, __LINE__);
- } elseif (($userid > 0) && (empty($email))) {
+ } elseif ((isValidUserId($userid)) && (empty($email))) {
// Direct userid entered
$result = SQL_QUERY_ESC("SELECT `userid`, `status` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1",
array(bigintval($userid)), __FUNCTION__, __LINE__);
if ((!getTimestampFromUserStats($statsType, $statsData, $userid)) && (!is_array($statsData))) {
// Then insert it!
SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_user_stats_data` (`userid`,`stats_type`,`stats_data`) VALUES (%s,'%s','%s')",
- array(bigintval($userid), $statsType, $statsData), __FUNCTION__, __LINE__);
+ array(
+ bigintval($userid),
+ $statsType,
+ $statsData
+ ), __FUNCTION__, __LINE__);
} elseif (is_array($statsData)) {
// Invalid data!
- logDebugMessage(__FUNCTION__, __LINE__, "userid={$userid},type={$statsType},data={".gettype($statsData).": Invalid statistics data type!");
+ logDebugMessage(__FUNCTION__, __LINE__, 'userid=' . $userid . ',type=' . $statsType . ',data=' . gettype($statsData) . ': Invalid statistics data type!');
}
}
+// Expression call-back function for fetching user data
+function doExpressionUser ($data) {
+ // Use current userid by default
+ $functionName = 'getMemberId()';
+
+ // User-related data, so is there a userid?
+ if (!empty($data['matches'][4][$data['key']])) {
+ // Do we have a userid or $userid?
+ if ($data['matches'][4][$data['key']] == '$userid') {
+ // Use dynamic call
+ $functionName = "getFetchedUserData('userid', \$userid, '" . $data['callback'] . "')";
+ } elseif (!empty($data['matches'][4][$data['key']])) {
+ // User data found
+ $functionName = "getFetchedUserData('userid', " . $data['matches'][4][$data['key']] . ", '" . $data['callback'] . "')";
+ }
+ } elseif ((!empty($data['callback'])) && (isUserDataValid())) {
+ // "Call-back" alias column for current logged in user's data
+ $functionName = "getUserData('" . $data['callback'] . "')";
+ }
+
+ // Do we have another function to run (e.g. translations)
+ if (!empty($data['extra_func'])) {
+ // Surround the original function call with it
+ $functionName = $data['extra_func'] . '(' . $functionName . ')';
+ } // END - if
+
+ // Generate replacer
+ $replacer = '{DQUOTE} . ' . $functionName . ' . {DQUOTE}';
+
+ // Now replace the code
+ $code = replaceExpressionCode($data, $replacer);
+
+ // Return replaced code
+ return $code;
+}
+
// [EOF]
?>