Required fix for NULL vs. 0 in user_points
[mailer.git] / inc / filter / online_filter.php
index ca48771cd95e1bdfd76849b0f5be8512a1fa64f2..869e89f444be2cada73f481cebf4eb2bb5c7f87a 100644 (file)
@@ -41,8 +41,9 @@ if (!defined('__SECURITY')) {
 } // END - if
 
 // Filter for updates/extends on the online list
-function FILTER_UPDATE_ONLINE_LIST () {
+function FILTER_UPDATE_ONLINE_LIST ($data) {
        // Do not update online list when extension is deactivated
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Called!');
        if (!isExtensionActive('online', true)) {
                // Extension not active
                return;
@@ -56,20 +57,14 @@ function FILTER_UPDATE_ONLINE_LIST () {
 
        // Initialize variables
        $userid = '0';
-       $isMember = 'N';
-       $isAdmin = 'N';
-       $action = getActionFromModuleWhat(getModule(), getWhat());
+       $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
@@ -98,8 +93,8 @@ LIMIT 1",
                        getModule(),
                        $action,
                        getWhat(),
-                       makeDatabaseUserId($userid),
-                       makeDatabaseUserId(determineReferalId()),
+                       makeZeroToNull($userid),
+                       makeZeroToNull(determineReferalId()),
                        $isMember,
                        $isAdmin,
                        detectRemoteAddr(),
@@ -112,8 +107,8 @@ LIMIT 1",
                                getModule(),
                                $action,
                                getWhat(),
-                               makeDatabaseUserId($userid),
-                               makeDatabaseUserId(determineReferalId()),
+                               makeZeroToNull($userid),
+                               makeZeroToNull(determineReferalId()),
                                $isMember,
                                $isAdmin,
                                session_id(),
@@ -126,6 +121,10 @@ LIMIT 1",
 
        // Purge old entries
        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 $data;
 }
 
 // [EOF]