X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Freset%2Freset_daily.php;h=371b4c4ecf69effb92a9ad956e4a2d83621bbf4d;hb=30ae22f62ae87c53a56baf0d134569ba91011111;hp=9768fbb59c5f2352050da79315aef9ee01b5f72f;hpb=52e8a0635bd0b7c653845685c55e4e5f251375fe;p=mailer.git diff --git a/inc/reset/reset_daily.php b/inc/reset/reset_daily.php index 9768fbb59c..371b4c4ecf 100644 --- a/inc/reset/reset_daily.php +++ b/inc/reset/reset_daily.php @@ -1,7 +1,7 @@ = "0.1.1") { +if (isExtensionInstalledAndNewer('order', '0.1.1')) { // Latest version - $result_daily = SQL_QUERY("UPDATE "._MYSQL_PREFIX."_user_data SET receive_mails=max_mails, mail_orders=0 WHERE receive_mails != max_mails", __FILE__, __LINE__); + SQL_QUERY("UPDATE + `{?_MYSQL_PREFIX?}_user_data` +SET + `receive_mails`=`max_mails`, + `mail_orders`=0 +WHERE + `receive_mails` != `max_mails`", __FILE__, __LINE__); } else { // Obsolete version - $result_daily = SQL_QUERY("UPDATE "._MYSQL_PREFIX."_user_data SET receive_mails=max_mails WHERE receive_mails != max_mails", __FILE__, __LINE__); + SQL_QUERY("UPDATE + `{?_MYSQL_PREFIX?}_user_data` +SET + `receive_mails`=`max_mails` +WHERE + `receive_mails` != `max_mails`", __FILE__, __LINE__); } // 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__); +$result_daily = SQL_QUERY("SELECT + `userid` +FROM + `{?_MYSQL_PREFIX?}_user_data` +WHERE + `ref_payout`=0 AND + `status`='CONFIRMED' +ORDER BY + `userid` ASC", __FILE__, __LINE__); + +//* DEBUG: */ debugOutput(basename(__FILE__) . ':payout=0;daily|numRows=' . SQL_NUMROWS($result_daily)); +if (SQL_NUMROWS($result_daily) > 0) { + // Init SQLs + initSqls(); -if (SQL_NUMROWS($result_daily) > 0) -{ // Start checking accounts which are on 0 confirmed-to-go mails - while (list($uid) = SQL_FETCHROW($result_daily)) - { - $result_points = SQL_QUERY_ESC("SELECT ref_depth, locked_points FROM "._MYSQL_PREFIX."_user_points -WHERE userid=%d AND locked_points != 0.00000 ORDER BY ref_depth", - array(bigintval($uid)), __FILE__, __LINE__); - if (SQL_NUMROWS($result_points) > 0) - { + while ($content = SQL_FETCHARRAY($result_daily)) { + //* DEBUG: */ debugOutput(basename(__FILE__) . ':' . $content['userid']); + $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` ASC", + array(bigintval($content['userid'])), __FILE__, __LINE__); + + //* DEBUG: */ debugOutput(basename(__FILE__) . ':payout=0;points|numRows=' . SQL_NUMROWS($result_points)); + if (SQL_NUMROWS($result_points) > 0) { // Ok transfer points - while (list($dep, $locked) = SQL_FETCHROW($result_points)) - { - $result_update = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_points SET points=points+%s, locked_points=0.00000 -WHERE userid=%d AND ref_depth=%d LIMIT 1", - array($locked, bigintval($uid), $dep), __FILE__, __LINE__); + while ($content2 = SQL_FETCHARRAY($result_points)) { + // Merge both arrays + $content = merge_array($content, $content2); + + //* DEBUG: */ debugOutput(basename(__FILE__) . ':userid=' . $content['userid'].',depth='.$content['ref_depth'].',locked='.$content['locked_points']); + addSql(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( + $content['locked_points'], + bigintval($content['userid']), + $content['ref_depth'] + ), __FILE__, __LINE__, false)); // Update mediadata as well - if (GET_EXT_VERSION("mediadata") >= "0.0.4") - { + if (isExtensionInstalledAndNewer('mediadata', '0.0.4')) { // Update database - MEDIA_UPDATE_ENTRY(array("total_points"), "add", $locked); - } - } - } + updateMediadataEntry(array('total_points'), 'add', $content['locked_points']); + } // END - if + } // END - while + } // END - if // Free memory SQL_FREERESULT($result_points); - } -} + } // END - while + + // Run all SQLs + runFilterChain('run_sqls'); +} // END - if // Free memory SQL_FREERESULT($result_daily); -// Save config value for later references -$_CONFIG['last_update'] = time(); - -// Update database -$result_daily = SQL_QUERY("UPDATE "._MYSQL_PREFIX."_config SET last_update=UNIX_TIMESTAMP() -WHERE config=0 AND last_update != UNIX_TIMESTAMP() LIMIT 1", __FILE__, __LINE__); - -// Destroy cache -if ((GET_EXT_VERSION("cache") >= "0.1.2") && (SQL_AFFECTEDROWS() == 1)) -{ - if ($cacheInstance->cache_file("config", true)) - { - $cacheInstance->cache_replace("last_update", time(), "0", $cacheArray); - } -} - -// +// [EOF] ?>