<?php
/************************************************************************
- * MXChange v0.2.1 Start: 12/18/2008 *
- * ================ Last change: 12/18/2008 *
+ * Mailer v0.2.1-FINAL Start: 12/18/2008 *
+ * =================== Last change: 12/18/2008 *
* *
* -------------------------------------------------------------------- *
* File : online_functions.php *
* $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 - 2009 by Roland Haeder *
- * For more information visit: http://www.mxchange.org *
+ * Copyright (c) 2009 - 2012 by Mailer Developer Team *
+ * For more information visit: http://mxchange.org *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
// Some security stuff...
if (!defined('__SECURITY')) {
die();
-}
-
-// Filter for updates/extends on the online list
-function FILTER_UPDATE_ONLINE_LIST () {
- // Do not update online list when extension is deactivated
- if (!isExtensionActive('online', true)) return;
-
- // Empty session?
- if (session_id() == '') {
- // This is invalid here!
- debug_report_bug('Invalid session.');
- } // END - if
-
- // Initialize variables
- $userid = 0;
- $MEM = 'N';
- $ADMIN = 'N';
-
- // Valid userid?
- if ((isUserIdSet()) && (getUserId() > 0) && (isMember())) {
- // Is valid user
- $userid = getUserId();
- $MEM = 'Y';
- } // END - if
-
- if (isAdmin()) {
- // Is administrator
- $ADMIN = 'Y';
- } // END - if
-
- // Get refid
- $rid = determineReferalId();
-
- // Now search for the user
- $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',
- `userid`=%s,
- `refid`='%s',
- `is_member`='%s',
- `is_admin`='%s',
- `timestamp`=UNIX_TIMESTAMP(),
- `ip`='%s'
-WHERE
- `sid`='%s'
-LIMIT 1",
- array(
- getModule(),
- getAction(),
- getWhat(),
- $userid,
- $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(
- getModule(),
- getAction(),
- getWhat(),
- $userid,
- $rid,
- $MEM,
- $ADMIN,
- session_id(),
- detectRemoteAddr()
- ), __FUNCTION__, __LINE__);
- }
-
- // Free result
- SQL_FREERESULT($result);
-
- // Purge old entries
- SQL_QUERY('DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_online` WHERE `timestamp` <= (UNIX_TIMESTAMP() - {?online_timeout?})', __FUNCTION__, __LINE__);
-}
+} // END - if
// [EOF]
?>