} // END - if
// Filter for updates/extends on the online list
-function FILTER_UPDATE_ONLINE_LIST () {
+function FILTER_UPDATE_ONLINE_LIST ($filterData) {
// Do not update online list when extension is deactivated
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Called!');
if (!isExtensionActive('online', true)) {
// Extension not active
return;
} // END - if
// Initialize variables
- $userid = '0';
- $isMember = 'N';
- $isAdmin = 'N';
- $action = getActionFromModuleWhat(getModule(), getWhat());
+ $userid = NULL;
+ $isMember = convertBooleanToYesNo(isMember());
+ $isAdmin = convertBooleanToYesNo(isAdmin());
+ $action = getActionFromModuleWhat(getModule(), getWhat());
// Valid userid?
if (isMember()) {
- // Is valid user
+ // Is valid user, so get the userid
$userid = getMemberId();
- $isMember = 'Y';
- } // END - if
-
- if (isAdmin()) {
- // Is administrator
- $isAdmin = 'Y';
} // END - if
// Now search for the user
getModule(),
$action,
getWhat(),
- makeDatabaseUserId($userid),
- makeDatabaseUserId(determineReferalId()),
+ makeZeroToNull($userid),
+ makeZeroToNull(determineReferalId()),
$isMember,
$isAdmin,
detectRemoteAddr(),
), __FUNCTION__, __LINE__);
} else {
// No entry does exists so we simply add it!
- SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_online` (`module`, `action`, `what`, `userid`, `refid`, `is_member`, `is_admin`, `timestamp`, `sid`, `ip`) VALUES ('%s','%s','%s', %s, %s, '%s','%s', UNIX_TIMESTAMP(), '%s','%s')",
+ SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_online` (`module`,`action`,`what`,`userid`,`refid`,`is_member`,`is_admin`,`timestamp`,`sid`,`ip`) VALUES ('%s','%s','%s', %s, %s, '%s','%s', UNIX_TIMESTAMP(), '%s','%s')",
array(
getModule(),
$action,
getWhat(),
- makeDatabaseUserId($userid),
- makeDatabaseUserId(determineReferalId()),
+ makeZeroToNull($userid),
+ makeZeroToNull(determineReferalId()),
$isMember,
$isAdmin,
session_id(),
SQL_FREERESULT($result);
// Purge old entries
- SQL_QUERY('DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_online` WHERE `timestamp` <= (UNIX_TIMESTAMP() - {?online_timeout?})', __FUNCTION__, __LINE__);
+ SQL_QUERY('DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_online` WHERE (UNIX_TIMESTAMP() - `timestamp`) >= {?online_timeout?}', __FUNCTION__, __LINE__);
+
+ // Return data
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Done!');
+ return $filterData;
}
// [EOF]