"; debug_print_backtrace(); die(""); } // END - if // Initialize variables $uid = 0; $rid = 0; $MEM = "N"; $ADMIN = "N"; // Valid userid? if ((!empty($GLOBALS['userid'])) && ($GLOBALS['userid'] > 0) && (IS_MEMBER())) { // Is valid user $uid = bigintval($GLOBALS['userid']); $MEM = "Y"; } // END - if if (IS_ADMIN()) { // Is administrator $ADMIN = "Y"; } // END - if if (!empty($GLOBALS['refid'])) { // Read cookie $rid = bigintval($GLOBALS['refid']); } // END - if // Now search for the user $result = SQL_QUERY_ESC("SELECT timestamp FROM "._MYSQL_PREFIX."_online WHERE sid='%s' LIMIT 1", array($PHPSESSID), __FILE__, __LINE__); // Entry found? if (SQL_NUMROWS($result) == 1) { // Then update it SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_online SET module='%s', action='%s', what='%s', userid=%s, refid=%s, is_member='%s', is_admin='%s', timestamp=UNIX_TIMESTAMP(), ip='%s' WHERE sid='%s' LIMIT 1", array( $GLOBALS['module'], $GLOBALS['action'], $GLOBALS['what'], $uid, $rid, $MEM, $ADMIN, GET_REMOTE_ADDR(), $PHPSESSID ), __FILE__, __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')", array( $GLOBALS['module'], $GLOBALS['action'], $GLOBALS['what'], $uid, $rid, $MEM, $ADMIN, $PHPSESSID, GET_REMOTE_ADDR() ), __FILE__, __LINE__ ); } // Free result SQL_FREERESULT($result); // Purge old entries SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_online WHERE timestamp <= (UNIX_TIMESTAMP() - %s)", array(getConfig('online_timeout')), __FILE__, __LINE__); } // ?>