X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fdoubler_send.php;h=fe1f0262181d06a97a4d87cb8bb602ea0ead0824;hp=e7e6210776359d659f40c33f2a6cde2fb05c9aab;hb=c78089215285d52d483760699d07a96dfbbe0671;hpb=524c58a61b0a074fed8d7c9dc2f9ddab7f653595 diff --git a/inc/doubler_send.php b/inc/doubler_send.php index e7e6210776..fe1f026218 100644 --- a/inc/doubler_send.php +++ b/inc/doubler_send.php @@ -45,7 +45,7 @@ $DOUBLER_POINTS = DOUBLER_GET_TOTAL_POINTS_LEFT(); if ($DOUBLER_POINTS == 0) { // Exit here to prevent some SQL errors (SQL_QUERY_ESC doen't insert zeros! We need to fix this...) return; -} +} // END - if // If not currently doubled set it to zero unset($_GET['DOUBLER_UID']); @@ -54,98 +54,86 @@ set_session('DOUBLER_UID', ""); if (empty($DOUBLER_UID)) $DOUBLER_UID = 0; // Check for doubles which we can pay out -$min = bigintval($_CONFIG['doubler_min'] * 2); +$min = bigintval(getConfig('doubler_min') * 2); $result_total = SQL_QUERY_ESC("SELECT DISTINCT d.id, d.userid, d.points, d.remote_ip, d.timemark -FROM "._MYSQL_PREFIX."_doubler AS d -LEFT JOIN "._MYSQL_PREFIX."_user_data AS u +FROM `{!_MYSQL_PREFIX!}_doubler` AS d +LEFT JOIN `{!_MYSQL_PREFIX!}_user_data` AS u ON d.userid=u.userid -WHERE u.status='CONFIRMED' AND d.points <= %s AND d.points >= %s AND d.completed='N' AND d.is_ref='N' +WHERE u.`status`='CONFIRMED' AND d.points <= %s AND d.points >= %s AND d.completed='N' AND d.is_ref='N' ORDER BY d.timemark", array($DOUBLER_POINTS, $min), __FILE__, __LINE__); // Check for accounts with limitation $result_main = SQL_QUERY_ESC("SELECT DISTINCT d.id, d.userid, d.points, d.remote_ip, d.timemark -FROM "._MYSQL_PREFIX."_doubler AS d -LEFT JOIN "._MYSQL_PREFIX."_user_data AS u +FROM `{!_MYSQL_PREFIX!}_doubler` AS d +LEFT JOIN `{!_MYSQL_PREFIX!}_user_data` AS u ON d.userid=u.userid -WHERE u.status='CONFIRMED' AND d.points <= %s AND d.points >= %s AND d.completed='N' AND d.is_ref='N' +WHERE u.`status`='CONFIRMED' AND d.points <= %s AND d.points >= %s AND d.completed='N' AND d.is_ref='N' ORDER BY d.timemark -LIMIT %d", array($DOUBLER_POINTS, $min, $_CONFIG['doubler_max_sent']), __FILE__, __LINE__); +LIMIT %d", array($DOUBLER_POINTS, $min, getConfig('doubler_max_sent')), __FILE__, __LINE__); -if (((SQL_NUMROWS($result_total) > 0) && ($_CONFIG['doubler_sent_all'] == "Y")) || ((SQL_NUMROWS($result_main) == $_CONFIG['doubler_group_sent']) && ($_CONFIG['doubler_sent_all'] == "N"))) -{ +// Do we have entries found? +if (((SQL_NUMROWS($result_total) > 0) && (getConfig('doubler_sent_all') == "Y")) || ((SQL_NUMROWS($result_main) == getConfig('doubler_group_sent')) && (getConfig('doubler_sent_all') != "Y"))) { // Switch to matching SQL resource $result_load = $result_main; - if ((SQL_NUMROWS($result_total) > 0) && ($_CONFIG['doubler_sent_all'] == "Y")) $result_load = $result_total; + if ((SQL_NUMROWS($result_total) > 0) && (getConfig('doubler_sent_all') == "Y")) $result_load = $result_total; // At least one account was found - while(list($id, $uid, $points, $ip, $time) = SQL_FETCHROW($result_load)) - { + while (list($id, $uid, $points, $ip, $time) = SQL_FETCHROW($result_load)) { // Only double when points are enougth! - if ($DOUBLER_POINTS >= $points) - { + if ($DOUBLER_POINTS >= $points) { // Check for his ref points - $result_ref = SQL_QUERY_ESC("SELECT SUM(points) FROM "._MYSQL_PREFIX."_doubler WHERE refid=%s AND completed='N' AND is_ref='Y'", - array(bigintval($uid)), __FILE__, __LINE__); - list($ref) = SQL_FETCHROW($result_ref); - - // Free memory - SQL_FREERESULT($result_ref); + $ref = GET_TOTAL_DATA($uid, "doubler", "points", "refid", false, " AND completed='N' AND is_ref='Y'"); // Zero refid when empty (might be helpful!) if (empty($ref)) $ref = 0; - if (($ref > 0) && ($DOUBLER_UID == $uid) && (!empty($ref))) - { + if (($ref > 0) && ($DOUBLER_UID == $uid) && (!empty($ref))) { // Referal points found so add them and set line(s) to completed='Y' $points += $ref; - $result_ref = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_doubler SET completed='Y' WHERE refid=%s AND completed='N' AND is_ref='Y'", - array(bigintval($uid)), __FILE__, __LINE__); - } - else - { + SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_doubler` SET completed='Y' WHERE refid=%s AND completed='N' AND is_ref='Y'", + array(bigintval($uid)), __FILE__, __LINE__); + } else { // No referal points found $ref = 0; } // Exclude webmaster from doubling... - if ($uid != $_CONFIG['doubler_uid']) { + if ($uid != getConfig('doubler_uid')) { // Add points - ADD_POINTS_REFSYSTEM($uid, $points, false, "0", false, "direct"); + ADD_POINTS_REFSYSTEM(sprintf("doubler_%s", strtolower(getConfig('doubler_send_mode'))), $uid, $points, false, "0", false, "direct"); } // END - if // Set entry as "payed" - $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_doubler SET completed='Y' WHERE id=%s LIMIT 1", - array(bigintval($id)), __FILE__, __LINE__); + SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_doubler` SET completed='Y' WHERE id=%s LIMIT 1", + array(bigintval($id)), __FILE__, __LINE__); - $OK = false; + $okay = false; // Check for jackpot inclusion in doubling process - if (($jackpot > 0) && ($jackpot >= $points) && ($_CONFIG['doubler_jackpot'] == "Y")) - { + if (($jackpot > 0) && ($jackpot >= $points) && (getConfig('doubler_jackpot') == "Y")) { // Subtract points from jackpot SUB_JACKPOT($points); $jackpot -= $points; // Okay, done! - $OK = true; - } + $okay = true; + } // END - if // Exclude also webmaster's ID in taking points from webmaster's account - if (($user > 0) && ($user >= $points) && (!$OK) && ($_CONFIG['doubler_uid'] > 0) && ($uid != $_CONFIG['doubler_uid'])) - { + if (($user > 0) && ($user >= $points) && (!$okay) && (getConfig('doubler_uid') > 0) && ($uid != getConfig('doubler_uid'))) { // Add points to used points - SUB_POINTS($_CONFIG['doubler_uid'], $points); + SUB_POINTS("doubler_payout", getConfig('doubler_uid'), $points); // Okay, done! - $OK = true; - } + $okay = true; + } // END - if // Update doubler's account only when others are not updated - if (!$OK) { + if (!$okay) { // Add points to used doubler points UPDATE_CONFIG("doubler_used", $points, "+"); - } + } // END - if // Update variables to prevent errors - $_CONFIG['doubler_used'] += $points; + incrementConfigEntry('doubler_used', $points); $DOUBLER_POINTS -= $points; // Prepare array @@ -162,10 +150,10 @@ if (((SQL_NUMROWS($result_total) > 0) && ($_CONFIG['doubler_sent_all'] == "Y")) // Load mail template and send mail away... $msg = LOAD_EMAIL_TEMPLATE("member_doubler", $content, $uid); - SEND_EMAIL($uid, DOUBLER_MEMBER_SUBJECT, $msg); - } - } -} + SEND_EMAIL($uid, getMessage('DOUBLER_MEMBER_SUBJECT'), $msg); + } // END - if + } // END - while +} // END - if // Free memory SQL_FREERESULT($result_total);