require($INC);
}
-// 01 2 2 2 3321 1 2 21 1 2 21 1 2 21 1 2 21 1 1 1 2 210
-if ((date("d", $_CONFIG['last_update']) != date("d", time())) && (!defined('mxchange_installing')) && (isBooleanConstantAndTrue('mxchange_installed')) && (isBooleanConstantAndTrue('admin_registered')) && (!isset($_GET['register'])) && ($CSS != 1) && (!defined('DEBUG_MODE'))) {
+// 01 2 2 2 3321 12 3 32 2 21 1 2 21 1 2 21 1 2 21 1 10
+if ((date("d", $_CONFIG['last_update']) != date("d", time())) && ((!defined('mxchange_installing')) || (!mxchange_installing)) && (isBooleanConstantAndTrue('mxchange_installed')) && (isBooleanConstantAndTrue('admin_registered')) && (!isset($_GET['register'])) && ($CSS != 1)) {
// Do daily things in external PHP file but only when script is completely setup
// Daily reset was run!
define('__DAILY_RESET', true);
define('SERVER_URL', "http://www.mxchange.org");
// This current patch level
-define('CURR_SVN_REVISION', "437");
+define('CURR_SVN_REVISION', "438");
// Take a prime number which is long (if you know a longer one please try it out!)
define('_PRIME', 591623);
function RALLYE_ADD_PRICES($rallye,$mode="email")
{
// Output mode
- switch($mode)
- {
+ switch($mode) {
case "email": $mode = "\n"; break;
case "html" : $mode = "<br />\n"; break;
}
function RALLYE_ADD_TOPUSERS($rallye,$default=0)
{
global $_CONFIG;
- // Init variable
- $since = 0;
- if (EXT_IS_ACTIVE("autopurge")) {
- $since = $_CONFIG['ap_inactive_since'];
- } // END - if
// First check how many prices are set
$result = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_rallye_prices WHERE rallye_id=%s ORDER BY price_level",
$result_ref = SQL_QUERY_ESC("SELECT DISTINCT p.points FROM "._MYSQL_PREFIX."_user_points AS p
LEFT JOIN "._MYSQL_PREFIX."_user_data AS d
ON p.userid=d.userid
-WHERE d.userid=%s AND d.status='CONFIRMED' AND p.ref_depth=1 AND d.max_mails > 0 AND d.mails_confirmed >= %s AND d.last_online >= (UNIX_TIMESTAMP() - %s)
-LIMIT 1", array(bigintval($uid), $_CONFIG['ref_payout'], $since), __FILE__, __LINE__);
+WHERE d.userid=%s AND d.status='CONFIRMED' AND p.ref_depth=1 AND d.max_mails > 0 AND d.mails_confirmed >= %s
+LIMIT 1", array(bigintval($uid), $_CONFIG['ref_payout']), __FILE__, __LINE__);
list($refpoints) = SQL_FETCHROW($result_ref);
SQL_FREERESULT($result_ref);
if (empty($refpoints)) $refpoints = 0;
- // And subtract start refs
- $cnt -= $refs;
-
+ // Init userid for list
$_uid = "---";
// List only users with at least one ref!
+ //* DEBUG: */ echo "*".$cnt."/".$uid."/".$cpoints."/".$refpoints."*<br />\n";
if (($cnt > 0) && ($refpoints > $cpoints)) { $_uid = $uid; } else { $cnt = ""; }
// Save values to array
{
global $DATA, $_CONFIG;
- // Latest online time
- $since = 0;
- if (EXT_IS_ACTIVE("autopurge")) {
- $since = $_CONFIG['ap_inactive_since'];
- } // END - if
-
// Load rallye data
list($id, $title, $start, $end, $notify, $min_users, $min_prices) = SQL_FETCHROW($result);
SQL_FREERESULT($result);
// active = 0: account is deleted or locked
$result = SQL_QUERY_ESC("SELECT COUNT(userid) AS active
FROM "._MYSQL_PREFIX."_user_data
-WHERE userid=%s AND status='CONFIRMED' AND last_online >= (UNIX_TIMESTAMP() - %s)
-LIMIT 1", array(bigintval($uid), $since), __FILE__, __LINE__);
+WHERE userid=%s AND status='CONFIRMED'
+LIMIT 1", array(bigintval($uid)), __FILE__, __LINE__);
list($active) = SQL_FETCHROW($result);
SQL_FREERESULT($result);
return $OUT;
}
//
-function RALLYE_GET_REFCOUNT($uid, $old=0)
-{
+function RALLYE_GET_REFCOUNT($uid, $old=0) {
global $_CONFIG, $cacheArray;
// Check current refs
- if (GET_EXT_VERSION("cache") >= "0.1.2")
- {
+ if (GET_EXT_VERSION("cache") >= "0.1.2") {
// Get refs from cache
$cnt = 0;
- foreach ($cacheArray['ref_system']['userid'] as $id => $u_id)
- {
- if (($u_id == $uid) && ($cacheArray['ref_system']['level'][$id] == 0))
- {
- foreach ($cacheArray['ref_depths']['level'] as $level)
- {
- if (($level == $cacheArray['ref_system']['level'][$id]) && ($level == 0))
- {
+ foreach ($cacheArray['ref_system']['userid'] as $id => $u_id) {
+ // Do we have a ref for this user?
+ //* DEBUG: */ echo "id={$id},u_id={$u_id},uid={$uid},old={$old},level={$cacheArray['ref_system']['level'][$id]}<br />\n";
+ if (($u_id == $uid) && ($cacheArray['ref_system']['level'][$id] == 1)) {
+ //* DEBUG: */ echo "uid matches!<br />\n";
+ foreach ($cacheArray['ref_depths']['level'] as $level) {
+ if (($level == $cacheArray['ref_system']['level'][$id]) && ($level == 1)) {
// Level does exist so abort here
$cnt = $cacheArray['ref_system']['counter'][$id];
//* DEBUG: */ echo "*".$uid."/".$cnt."*<br />";
break;
- }
- elseif ($level > 0)
- {
+ } elseif ($level > 1) {
// Not interesting here...
break;
}
}
+
// Abort also here!
if ($cnt > 0) break;
}
//* DEBUG: */ echo "</PRE>";
//* DEBUG: */ die();
- if ($cnt > 0)
- {
+ if ($cnt > 0) {
// Count cache hits
$_CONFIG['cache_hits']++;
//* DEBUG: */ echo "+".$cnt."/".$old."+<br />";
$cnt -= $old;
}
- }
- else
- {
+ } else {
// Load current refs from database
$result_ref = SQL_QUERY_ESC("SELECT DISTINCT SUM(s.counter) AS cnt
FROM "._MYSQL_PREFIX."_refsystem AS s
// Nothing selected to edit
LOAD_TEMPLATE("admin_settings_saved", false, LOAD_TEMPLATE("admin_list_rallye_noselect", true));
}
-}
- elseif (($_GET['sub'] == "users") && ($_GET['rallye'] > 0))
-{
+} elseif (($_GET['sub'] == "users") && ($_GET['rallye'] > 0)) {
// List users and their refs before start and current
$result = SQL_QUERY_ESC("SELECT userid, refs, curr_points FROM "._MYSQL_PREFIX."_rallye_users WHERE rallye_id=%s ORDER BY userid",
array(bigintval($_GET['rallye'])), __FILE__, __LINE__);
$cnt = ADMIN_USER_PROFILE_LINK($uid, $cnt, "list_refs");
$old = ADMIN_USER_PROFILE_LINK($uid, $old, "list_refs");
}
+
+ // Get user points
+ $points = GET_TOTAL_DATA($uid, "user_points", "points") - GET_TOTAL_DATA($uid, "user_data", "used_points");
$content = array(
'sw' => $SW ,
'uid' => $uid,
'bold_r' => $Br ,
'old' => $old,
'cnt' => $cnt,
- 'opoints' => TRANSLATE_COMMA($opoints),
+ 'opoints' => TRANSLATE_COMMA($points - $opoints),
);
$OUT .= LOAD_TEMPLATE("admin_list_rallye_usr_row", true, $content);
$SW = 3 - $SW;
$HTML_EXT = EXT_IS_ACTIVE("html_mail");
// Now check his points amount
-$result_p = SQL_QUERY_ESC("SELECT SUM(points) FROM "._MYSQL_PREFIX."_user_points WHERE userid=%s",
- array($GLOBALS['userid']), __FILE__, __LINE__);
-
-$TOTAL = 0;
-if (SQL_NUMROWS($result_p) > 0)
-{
- // Load points
- list($TOTAL) = SQL_FETCHROW($result_p);
- SQL_FREERESULT($result_p);
+$TOTAL = GET_TOTAL_DATA($GLOBALS['userid'], "user_points", "points");
+if ($TOTAL > 0) {
// And subtract his used points...
$TOTAL -= GET_TOTAL_DATA($GLOBALS['userid'], "user_data", "used_points");
if (!ereg(".", $TOTAL)) $TOTAL .= ".00000";
}
-if (($HOLIDAY == "Y") && (GET_EXT_VERSION("holiday") >= "0.1.3"))
-{
+if (($HOLIDAY == "Y") && (GET_EXT_VERSION("holiday") >= "0.1.3")) {
// Holiday is active!
SQL_FREERESULT($result_p);
LOAD_TEMPLATE("admin_settings_saved", false, HOLIDAY_ORDER_NOT_POSSIBLE);
-}
- elseif ((!empty($_POST['frametester'])) && ($ALLOWED > 0) && ($_POST['receiver'] > 0))
-{
+} elseif ((!empty($_POST['frametester'])) && ($ALLOWED > 0) && ($_POST['receiver'] > 0)) {
// Continue with the frametester, we first need to store the data temporary in the pool
//
// First we would like to store the data and get it's pool position back...
{
case "new": // Start new transfer
// Get total points and subtract the balance amount from it = maximum transferable points
- $result = SQL_QUERY_ESC("SELECT SUM(points) FROM "._MYSQL_PREFIX."_user_points WHERE userid=%s AND points > 0",
- array($GLOBALS['userid']), __FILE__, __LINE__);
- list($total) = SQL_FETCHROW($result);
- SQL_FREERESULT($result);
-
- // Get totally used points and password
- $result = SQL_QUERY_ESC("SELECT used_points, password FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1",
- array($GLOBALS['userid']), __FILE__, __LINE__);
- list($used, $pass) = SQL_FETCHROW($result);
- SQL_FREERESULT($result);
+ $total = GET_TOTAL_DATA($GLOBALS['userid'], "user_points", "points") - GET_TOTAL_DATA($GLOBALS['userid'], "user_data", "used_points");
// Remember maximum value for template
- define('__TRANSFER_MAX_VALUE', round($total - $used - $_CONFIG['transfer_balance'] - 0.5));
+ define('__TRANSFER_MAX_VALUE', round($total - $_CONFIG['transfer_balance'] - 0.5));
if (isset($_POST['ok']))
{
// Transfer points from locked_points to points
$result_daily = SQL_QUERY("SELECT userid FROM "._MYSQL_PREFIX."_user_data WHERE ref_payout=0 AND status='CONFIRMED' ORDER BY userid", __FILE__, __LINE__);
+//* DEBUG: */ echo basename(__FILE__).":payout=0;daily|numRows=".SQL_NUMROWS($result_daily)."<br />\n";
if (SQL_NUMROWS($result_daily) > 0)
{
// Start checking accounts which are on 0 confirmed-to-go mails
while (list($uid) = SQL_FETCHROW($result_daily))
{
+ //* DEBUG: */ echo basename(__FILE__).":uid={$uid}<br />\n";
$result_points = SQL_QUERY_ESC("SELECT ref_depth, locked_points FROM "._MYSQL_PREFIX."_user_points
WHERE userid=%s AND locked_points != 0.00000 ORDER BY ref_depth",
array(bigintval($uid)), __FILE__, __LINE__);
+ //* DEBUG: */ echo basename(__FILE__).":payout=0;points|numRows=".SQL_NUMROWS($result_points)."<br />\n";
if (SQL_NUMROWS($result_points) > 0)
{
// Ok transfer points
while (list($dep, $locked) = SQL_FETCHROW($result_points))
{
+ //* DEBUG: */ echo basename(__FILE__).":uid={$uid},depth={$dep},locked={$locked}<br />\n";
$result_update = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_points SET points=points+%s, locked_points=0.00000
WHERE userid=%s AND ref_depth=%d LIMIT 1",
array($locked, bigintval($uid), $dep), __FILE__, __LINE__);
}
// Do not execute when script is in CSS mode or no daily reset
-if (($CSS == 1) || ((!defined('__DAILY_RESET')) && ($_CONFIG['holiday_mode'] == "RESET"))) return;
+if (($CSS == 1) || (GET_EXT_VERSION("holiday") == "") || ((!defined('__DAILY_RESET')) && ($_CONFIG['holiday_mode'] == "RESET"))) return;
// Check for holidays we need to enable and send email to user
$result_main = SQL_QUERY("SELECT userid, holiday_activated FROM "._MYSQL_PREFIX."_user_data