<?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 (ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) {
- $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;
-}
-
-// 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__);
-
-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
- $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);
-
- // Zero refid when empty (might be helpful!)
- if (empty($ref)) $ref = 0;
- if (($ref > 0) && ($DOUBLER_UID == $uid) && (!empty($ref)))
- {
- // Referral 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 referral points found
- $ref = "0";
- }
-
- // Exclude webmaster from doubling...
- if ($uid != $_CONFIG['doubler_uid'])
- {
- // Add points
- $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_points SET points=points+%s WHERE userid=%s AND ref_depth=0 LIMIT 1",
- array($points, bigintval($uid)), __FILE__, __LINE__);
-
- // Update mediadata as well
- if (GET_EXT_VERSION("mediadata") >= "0.0.4")
- {
- // Update database
- MEDIA_UPDATE_ENTRY(array("total_points"), "add", $points);
- }
- }
-
- // 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;
- }
-
- // 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($_CONFIG['doubler_uid'], $points);
-
- // Okay, done!
- $OK = true;
- }
-
- // Update doubler's account only when others are not updated
- if (!$OK) {
- // Add points to used doubler points
- UPDATE_CONFIG("douber_used", $points, "+");
- }
-
- // 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);
- }
- }
-}
-
-// Free memory
-SQL_FREERESULT($result_total);
-SQL_FREERESULT($result_main);
-
-//
+// @DEPRECATED
?>