X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=inc%2Fmails%2Fdoubler_mails.php;h=e1620270bb5eeac782fb0f53526f2a3de1030ea9;hb=32f930539d6b5cb5e603bece41277f3e5cca8fa9;hp=718074fdcc702e65f2c2ba3c7e5b6f1f47be1ee9;hpb=c2e17d983fcbc0c3bd1dd37908d87c678f0367df;p=mailer.git diff --git a/inc/mails/doubler_mails.php b/inc/mails/doubler_mails.php index 718074fdcc..e1620270bb 100644 --- a/inc/mails/doubler_mails.php +++ b/inc/mails/doubler_mails.php @@ -1,7 +1,7 @@ = %s AND d.completed='N' AND d.is_ref='N' -ORDER BY d.timemark", +$result_total = SQL_QUERY_ESC("SELECT + 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 +ON + d.`userid`=u.`userid` +WHERE + u.`status`='CONFIRMED' + " . runFilterChain('user_exclusion_sql', ' ') . " AND + d.`points` <= %s AND + d.`points` >= ({?doubler_min?} * 2) AND + d.`completed`='N' AND + d.`is_ref`='N' +ORDER BY + d.`timemark` ASC", array( - $DOUBLER_POINTS, - getConfig(('doubler_min') * 2) + $DOUBLER_POINTS ), __FILE__, __LINE__); // Check for accounts with limitation -$result_main = SQL_QUERY_ESC("SELECT 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 -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' -ORDER BY d.timemark -LIMIT %d", +$result_main = SQL_QUERY_ESC("SELECT + 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 +ON + d.`userid`=u.`userid` +WHERE + u.`status`='CONFIRMED' + " . runFilterChain('user_exclusion_sql', ' ') . " AND + d.`points` <= %s AND + d.`points` >= ({?doubler_min?} * 2) AND + d.`completed`='N' AND + d.`is_ref`='N' +ORDER BY + d.`timemark` ASC +LIMIT {?doubler_max_sent?}", array( - $DOUBLER_POINTS, - getConfig(('doubler_min') * 2), - getConfig('doubler_max_sent') + $DOUBLER_POINTS ), __FILE__, __LINE__); -// 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'))) { +// Are there entries found? +if (((!SQL_HASZERONUMS($result_total)) && (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) && (getConfig('doubler_sent_all') == 'Y')) $result_load = $result_total; + if ((!SQL_HASZERONUMS($result_total)) && (getConfig('doubler_sent_all') == 'Y')) { + $result_load = $result_total; + } // END - if // At least one account was found while ($content = SQL_FETCHARRAY($result_load)) { // Only double when points are enougth! if ($DOUBLER_POINTS >= $content['points']) { // Check for his ref points - $ref = countSumTotalData($content['userid'], 'doubler', 'points', 'refid', false, " AND `completed`='N' AND `is_ref`='Y'"); + $refPoints = countSumTotalData($content['userid'], 'doubler', 'points', 'refid', FALSE, " AND `completed`='N' AND `is_ref`='Y'"); // Zero refid when empty (might be helpful!) - if (empty($ref)) $ref = 0; + if (empty($refPoints)) { + $refPoints = '0'; + } // END - if - if (($ref > 0) && ($GLOBALS['doubler_userid'] == $content['userid']) && (!empty($ref))) { - // Referal points found so add them and set line(s) to completed='Y' - $content['points'] += $ref; + if (($refPoints > 0) && ($GLOBALS['local_doubler_userid'] == $content['userid']) && (!empty($refPoints))) { + // Referral points found so add them and set line(s) to completed='Y' + $content['points'] += $refPoints; SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_doubler` SET `completed`='Y' WHERE `refid`=%s AND `completed`='N' AND `is_ref`='Y'", array(bigintval($content['userid'])), __FILE__, __LINE__); } else { - // No referal points found - $ref = 0; + // No referral points found + $refPoints = '0'; } // Exclude webmaster from doubling... - if ($content['userid'] != getConfig('doubler_userid')) { + if ($content['userid'] != getDoublerUserid()) { // Add points - addPointsDirectly(sprintf("doubler_%s", strtolower(getConfig('doubler_send_mode'))), $content['userid'], $content['points']); + initReferralSystem(); + addPointsThroughReferralSystem(sprintf("doubler_%s", strtolower(getDoublerSendMode())), $content['userid'], $content['points']); } // END - if // Set entry as "payed" SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_doubler` SET `completed`='Y' WHERE `id`=%s LIMIT 1", array(bigintval($content['id'])), __FILE__, __LINE__); - $okay = false; + $okay = FALSE; // Check for jackpot inclusion in doubling process - if (($jackpot > 0) && ($jackpot >= $content['points']) && (getConfig('doubler_jackpot') == 'Y')) { + if (($jackpotPoints > 0) && ($jackpotPoints >= $content['points']) && (getConfig('doubler_jackpot') == 'Y')) { // Subtract points from jackpot - subtractPointsFromJackpot($content['points']); - $jackpot -= $content['points']; - - // Okay, done! - $okay = true; + $okay = subtractPointsFromJackpot($content['points']); + $jackpotPoints -= $content['points']; } // END - if - // Exclude also webmaster's ID in taking points from webmaster's account - if (($user > 0) && ($user >= $content['points']) && ($okay === false) && (getConfig('doubler_userid') > 0) && ($content['userid'] != getConfig('doubler_userid'))) { - // Add points to used points - subtractPoints('doubler_payout', getConfig('doubler_userid'), $content['points']); - - // Okay, done! - $okay = true; + // Exclude also webmaster's id in taking points from webmaster's account + if (($userPoints > 0) && ($userPoints >= $content['points']) && ($okay === FALSE) && (getDoublerUserid() > 0) && ($content['userid'] != getDoublerUserid())) { + // Subtract points + $okay = subtractPoints('doubler_payout', getDoublerUserid(), $content['points']); } // END - if // Update doubler's account only when others are not updated - if ($okay === false) { + if ($okay === FALSE) { // Add points to used doubler points updateConfiguration('doubler_used', $content['points'], '+'); } // END - if @@ -157,20 +184,11 @@ if (((SQL_NUMROWS($result_total) > 0) && (getConfig('doubler_sent_all') == 'Y')) $DOUBLER_POINTS -= $content['points']; // Prepare array - $content = array( - // Doubler transmission ID - 'id' => $content['id'], - // Doubled points - 'points' => translateComma($content['points']), - // Timemark - 'when' => generateDateTime($content['timemark'], 2), - // IP number when the member submitted the doubling form - 'ip' => $content['remote_ip'], - ); + $content['timemark'] = generateDateTime($content['timemark'], 2); // Load mail template and send mail away... $message = loadEmailTemplate('member_doubler', $content, $content['userid']); - sendEmail($content['userid'], getMessage('DOUBLER_MEMBER_SUBJECT'), $message); + sendEmail($content['userid'], '{--MEMBER_DOUBLER_SUBJECT--}', $message); } // END - if } // END - while } // END - if