* -------------------------------------------------------------------- *
* Kurzbeschreibung : Online-Funktionen *
* -------------------------------------------------------------------- *
- * *
+ * $Revision:: $ *
+ * $Date:: $ *
+ * $Tag:: 0.2.1-FINAL $ *
+ * $Author:: $ *
+ * Needs to be in all Files and every File needs "svn propset *
+ * svn:keywords Date Revision" (autoprobset!) at least!!!!!! *
* -------------------------------------------------------------------- *
* Copyright (c) 2003 - 2008 by Roland Haeder *
* For more information visit: http://www.mxchange.org *
// Some security stuff...
if (!defined('__SECURITY')) {
- $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
+ $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), '/inc') + 4) . '/security.php';
require($INC);
}
// Filter for updates/extends on the online list
function FILTER_UPDATE_ONLINE_LIST () {
- global $PHPSESSID;
-
// Do not update online list when extension is deactivated
- if (!EXT_IS_ACTIVE("online", true)) return;
+ if (!EXT_IS_ACTIVE('online', true)) return;
// Empty session?
- if (empty($PHPSESSID)) {
+ if (session_id() == '') {
// This is invalid here!
- print "Invalid session. Backtrace:<pre>";
- debug_print_backtrace();
- die("</pre>");
+ debug_report_bug("Invalid session.");
} // END - if
// Initialize variables
- $uid = 0; $rid = 0; $MEM = "N"; $ADMIN = "N";
+ $uid = 0; $rid = 0; $MEM = 'N'; $ADMIN = 'N';
// Valid userid?
- if ((!empty($GLOBALS['userid'])) && ($GLOBALS['userid'] > 0) && (IS_MEMBER())) {
+ if ((isUserIdSet()) && (getUserId() > 0) && (IS_MEMBER())) {
// Is valid user
- $uid = bigintval($GLOBALS['userid']);
- $MEM = "Y";
+ $uid = getUserId();
+ $MEM = 'Y';
} // END - if
if (IS_ADMIN()) {
// Is administrator
- $ADMIN = "Y";
+ $ADMIN = 'Y';
} // END - if
if (!empty($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__);
+ $result = SQL_QUERY_ESC("SELECT timestamp FROM `{!_MYSQL_PREFIX!}_online` WHERE sid='%s' LIMIT 1",
+ array(session_id()), __FUNCTION__, __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',
+ SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_online` SET
+`module`='%s',
+`action`='%s',
+`what`='%s',
userid=%s,
refid=%s,
is_member='%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__
+ array(
+ $GLOBALS['module'],
+ $GLOBALS['action'],
+ $GLOBALS['what'],
+ $uid,
+ $rid,
+ $MEM,
+ $ADMIN,
+ detectRemoteAddr(),
+ session_id()
+ ), __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')",
- array(
- $GLOBALS['module'],
- $GLOBALS['action'],
- $GLOBALS['what'],
- $uid,
- $rid,
- $MEM,
- $ADMIN,
- $PHPSESSID,
- GET_REMOTE_ADDR()
- ), __FILE__, __LINE__
+ 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,
+ session_id(),
+ detectRemoteAddr()
+ ), __FUNCTION__, __LINE__
);
}
SQL_FREERESULT($result);
// Purge old entries
- $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_online WHERE timestamp <= (UNIX_TIMESTAMP() - %s)",
- array(getConfig('online_timeout')), __FILE__, __LINE__);
+ SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_online` WHERE timestamp <= (UNIX_TIMESTAMP() - %s)",
+ array(getConfig('online_timeout')), __FUNCTION__, __LINE__);
}
//