X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fdoubler_send.php;h=7e40aaa6d5939253cbe5ea0d7f8e1a6f0dc3dd23;hp=7bc256c5a17b8be5cba87be4411b1e8850817555;hb=4e47eb8b83ed2fcd4320aeed8b8c460eb1c8fe4b;hpb=cca98f57dff720b174d21d071cee8303462485d7 diff --git a/inc/doubler_send.php b/inc/doubler_send.php index 7bc256c5a1..7e40aaa6d5 100644 --- a/inc/doubler_send.php +++ b/inc/doubler_send.php @@ -10,7 +10,12 @@ * -------------------------------------------------------------------- * * Kurzbeschreibung : Sendet Mails bei vergueteter Verdoppelung aus * * -------------------------------------------------------------------- * - * * + * $Revision:: $ * + * $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 - 2008 by Roland Haeder * * For more information visit: http://www.mxchange.org * @@ -33,7 +38,7 @@ // Some security stuff... if (!defined('__SECURITY')) { - $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php"; + $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), '/inc') + 4) . '/security.php'; require($INC); } @@ -48,109 +53,119 @@ if ($DOUBLER_POINTS == 0) { } // END - if // If not currently doubled set it to zero -unset($_GET['DOUBLER_UID']); -unset($_POST['DOUBLER_UID']); -set_session('DOUBLER_UID', ""); -if (empty($DOUBLER_UID)) $DOUBLER_UID = 0; +REQUEST_UNSET_GET('DOUBLER_UID'); +REQUEST_UNSET_POST('DOUBLER_UID'); +setSession('DOUBLER_UID', ''); +if (empty($GLOBALS['doubler_uid'])) $GLOBALS['doubler_uid'] = 0; // Check for doubles which we can pay out -$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' -ORDER BY d.timemark", array($DOUBLER_POINTS, $min), __FILE__, __LINE__); +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, + getConfig(('doubler_min') * 2) + ), __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, getConfig('doubler_max_sent')), __FILE__, __LINE__); +LIMIT %d", + array( + $DOUBLER_POINTS, + getConfig(('doubler_min') * 2), + getConfig('doubler_max_sent') + ), __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') == "N"))) { +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) && (getConfig('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 ($content = SQL_FETCHARRAY($result_load)) { // Only double when points are enougth! - if ($DOUBLER_POINTS >= $points) { + if ($DOUBLER_POINTS >= $content['points']) { // Check for his ref points - $ref = GET_TOTAL_DATA($uid, "doubler", "points", "refid", false, " AND completed='N' AND is_ref='Y'"); + $ref = GET_TOTAL_DATA($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 (($ref > 0) && ($DOUBLER_UID == $uid) && (!empty($ref))) { + + if (($ref > 0) && ($GLOBALS['doubler_uid'] == $content['userid']) && (!empty($ref))) { // Referal points found so add them and set line(s) to completed='Y' - $points += $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__); + $content['points'] += $ref; + 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; } // Exclude webmaster from doubling... - if ($uid != getConfig('doubler_uid')) { + if ($content['userid'] != getConfig('doubler_uid')) { // Add points - ADD_POINTS_REFSYSTEM(sprintf("doubler_%s", strtolower(getConfig('doubler_send_mode'))), $uid, $points, false, "0", false, "direct"); + ADD_POINTS_REFSYSTEM_DIRECT(sprintf("doubler_%s", strtolower(getConfig('doubler_send_mode'))), $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($id)), __FILE__, __LINE__); + SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_doubler` SET `completed`='Y' WHERE `id`=%s LIMIT 1", + array(bigintval($content['id'])), __FILE__, __LINE__); + + $okay = false; - $OK = false; // Check for jackpot inclusion in doubling process - if (($jackpot > 0) && ($jackpot >= $points) && (getConfig('doubler_jackpot') == "Y")) { + if (($jackpot > 0) && ($jackpot >= $content['points']) && (getConfig('doubler_jackpot') == 'Y')) { // Subtract points from jackpot - SUB_JACKPOT($points); - $jackpot -= $points; + SUB_JACKPOT($content['points']); + $jackpot -= $content['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) && (getConfig('doubler_uid') > 0) && ($uid != getConfig('doubler_uid'))) { + if (($user > 0) && ($user >= $content['points']) && ($okay === false) && (getConfig('doubler_uid') > 0) && ($content['userid'] != getConfig('doubler_uid'))) { // Add points to used points - SUB_POINTS("doubler_payout", getConfig('doubler_uid'), $points); + SUB_POINTS('doubler_payout', getConfig('doubler_uid'), $content['points']); // Okay, done! - $OK = true; + $okay = true; } // END - if // Update doubler's account only when others are not updated - if (!$OK) { + if ($okay === false) { // Add points to used doubler points - UPDATE_CONFIG("doubler_used", $points, "+"); + updateConfiguration('doubler_used', $content['points'], '+'); } // END - if // Update variables to prevent errors - $_CONFIG['doubler_used'] += $points; - $DOUBLER_POINTS -= $points; + incrementConfigEntry('doubler_used', $content['points']); + $DOUBLER_POINTS -= $content['points']; // Prepare array $content = array( // Doubler transmission ID - 'id' => $id, + 'id' => $content['id'], // Doubled points - 'points' => TRANSLATE_COMMA($points), + 'points' => translateComma($content['points']), // Timemark - 'when' => MAKE_DATETIME($time, "2"), + 'when' => generateDateTime($content['timemark'], '2'), // IP number when the member submitted the doubling form - 'ip' => $ip, + 'ip' => $content['remote_ip'], ); // Load mail template and send mail away... - $msg = LOAD_EMAIL_TEMPLATE("member_doubler", $content, $uid); - SEND_EMAIL($uid, DOUBLER_MEMBER_SUBJECT, $msg); + $message = LOAD_EMAIL_TEMPLATE('member_doubler', $content, $content['userid']); + sendEmail($content['userid'], getMessage('DOUBLER_MEMBER_SUBJECT'), $message); } // END - if } // END - while } // END - if