<?php
-/************************************************************************
- * MXChange v0.2.1 Start: 02/16/2005 *
- * =============== Last change: 01/21/2006 *
- * *
- * -------------------------------------------------------------------- *
- * File : doubler_send.php *
- * -------------------------------------------------------------------- *
- * Short description : Send's out mails for doubled points *
- * -------------------------------------------------------------------- *
- * Kurzbeschreibung : Sendet Mails bei vergueteter Verdoppelung aus *
- * -------------------------------------------------------------------- *
- * *
- * -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder *
- * For more information visit: http://www.mxchange.org *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the Free Software *
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, *
- * MA 02110-1301 USA *
- ************************************************************************/
-
-// Some security stuff...
-if (!defined('__SECURITY')) {
- $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
- require($INC);
-}
-
-// Initialize variables
-$jackpot = 0; $user = 0;
-
-// Get total points of the doubler itself
-$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']);
-unset($_POST['DOUBLER_UID']);
-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);
-$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
-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__);
-
-// 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
-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", array($DOUBLER_POINTS, $min, $_CONFIG['doubler_max_sent']), __FILE__, __LINE__);
-
-// Do we have entries found?
-if (((SQL_NUMROWS($result_total) > 0) && ($_CONFIG['doubler_sent_all'] == "Y")) || ((SQL_NUMROWS($result_main) == $_CONFIG['doubler_group_sent']) && ($_CONFIG['doubler_sent_all'] == "N"))) {
- // Switch to matching SQL resource
- $result_load = $result_main;
- if ((SQL_NUMROWS($result_total) > 0) && ($_CONFIG['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)) {
- // Only double when points are enougth!
- if ($DOUBLER_POINTS >= $points) {
- // Check for his ref points
- $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))) {
- // 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 {
- // No referal points found
- $ref = 0;
- }
-
- // Exclude webmaster from doubling...
- if ($uid != $_CONFIG['doubler_uid']) {
- // Add points
- ADD_POINTS_REFSYSTEM(sprintf("doubler_%s", strtolower($_CONFIG['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__);
-
- $OK = false;
- // Check for jackpot inclusion in doubling process
- if (($jackpot > 0) && ($jackpot >= $points) && ($_CONFIG['doubler_jackpot'] == "Y")) {
- // Subtract points from jackpot
- SUB_JACKPOT($points);
- $jackpot -= $points;
-
- // Okay, done!
- $OK = 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'])) {
- // Add points to used points
- SUB_POINTS("doubler_payout", $_CONFIG['doubler_uid'], $points);
-
- // Okay, done!
- $OK = true;
- } // END - if
-
- // Update doubler's account only when others are not updated
- if (!$OK) {
- // Add points to used doubler points
- UPDATE_CONFIG("doubler_used", $points, "+");
- } // END - if
-
- // Update variables to prevent errors
- $_CONFIG['doubler_used'] += $points;
- $DOUBLER_POINTS -= $points;
-
- // Prepare array
- $content = array(
- // Doubler transmission ID
- 'id' => $id,
- // Doubled points
- 'points' => TRANSLATE_COMMA($points),
- // Timemark
- 'when' => MAKE_DATETIME($time, "2"),
- // IP number when the member submitted the doubling form
- 'ip' => $ip,
- );
-
- // Load mail template and send mail away...
- $msg = LOAD_EMAIL_TEMPLATE("member_doubler", $content, $uid);
- SEND_EMAIL($uid, DOUBLER_MEMBER_SUBJECT, $msg);
- } // END - if
- } // END - while
-} // END - if
-
-// Free memory
-SQL_FREERESULT($result_total);
-SQL_FREERESULT($result_main);
-
-//
+// @DEPRECATED
?>