// Init "action" and "what"
global $what, $action, $startTime;
$GLOBALS['startTime'] = microtime(true);
-$GLOBALS['what'] = ""; $GLOBALS['action'] = "";
+$GLOBALS['what'] = "";
+$GLOBALS['action'] = "";
// Set module
$GLOBALS['module'] = "doubler";
$GLOBALS['refid'] = 0;
-$CSS = "0";
+$CSS = 0;
// Load the required file(s)
-require ("inc/config.php");
+require("inc/config.php");
+
+// Is the "doubler" extension active?
+if (!EXT_IS_ACTIVE("doubler")) {
+ // Redirect to index
+ LOAD_URL("modules.php?module=index&msg=".CODE_EXTENSION_PROBLEM."&ext=doubler");
+} // END - if
// Is the script installed?
-if (defined('mxchange_installed') && (mxchange_installed))
-{
- // Probe for referral ID
- if (!empty($_GET['refid'])) $GLOBALS['refid'] = bigintval($_GET['refid']);
-
- // Probe for nickname extension and if a nickname was supplied by URL
- $probe_nickname = ((EXT_IS_ACTIVE("nickname")) && (("".round($GLOBALS['refid'])."") != $GLOBALS['refid']));
- if ($probe_nickname)
- {
- // Nickname in URL, so load the ID
- $result = SQL_QUERY_ESC("SELECT userid, status FROM "._MYSQL_PREFIX."_user_data WHERE nickname='%s' LIMIT 1",
- array(bigintval($GLOBALS['refid'])), __FILE__, __LINE__);
- }
- else
- {
- // Direct userid entered
- $result = SQL_QUERY_ESC("SELECT userid, status FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d LIMIT 1",
- array(bigintval($GLOBALS['refid'])), __FILE__, __LINE__);
- }
+if (isBooleanConstantAndTrue('mxchange_installed')) {
+ // Probe for referal ID
+ if (!empty($_GET['refid'])) $GLOBALS['refid'] = SQL_ESCAPE($_GET['refid']);
+
+ // Only check this if refid is provided!
+ if ($GLOBALS['refid'] > 0) {
+ // Probe for nickname extension and if a nickname was supplied by URL
+ $probe_nickname = ((EXT_IS_ACTIVE("nickname")) && (("".round($GLOBALS['refid'])."") != $GLOBALS['refid']));
+
+ // Do we have nickname or userid set?
+ if ($probe_nickname) {
+ // Nickname in URL, so load the ID
+ $result = SQL_QUERY_ESC("SELECT userid, status FROM `"._MYSQL_PREFIX."_user_data` WHERE nickname='%s' LIMIT 1",
+ array(bigintval($GLOBALS['refid'])), __FILE__, __LINE__);
+ } else {
+ // Direct userid entered
+ $result = SQL_QUERY_ESC("SELECT userid, status FROM `"._MYSQL_PREFIX."_user_data` WHERE userid=%s LIMIT 1",
+ array(bigintval($GLOBALS['refid'])), __FILE__, __LINE__);
+ }
+
+ // Load data
+ list($rid, $status_ref) = SQL_FETCHROW($result);
+ $GLOBALS['refid'] = bigintval($rid);
- // Load data
- list($rid, $status_ref) = SQL_FETCHROW($result);
- $GLOBALS['refid'] = bigintval($rid);
+ // Free memory
+ SQL_FREERESULT($result);
+ } // END - if
- // Free memory
- SQL_FREERESULT($result);
+ // Init userid
$uid = 0;
// If no account was found set default refid and status to CONFIRMED
- if (empty($GLOBALS['refid'])) { $GLOBALS['refid'] = $_CONFIG['def_refid']; $status = "CONFIRMED"; }
+ if (empty($GLOBALS['refid'])) {
+ $GLOBALS['refid'] = getConfig('def_refid');
+ $status = "CONFIRMED";
+ } // END - if
// Begin with doubler script...
- if (isset($_POST['ok']))
- {
+ if (isset($_POST['ok'])) {
// Secure points (so only integer/double values are allowed
$_POST['points'] = bigintval($_POST['points']);
// Begin with doubling process
- if ((!empty($_POST['userid'])) && (!empty($_POST['pass'])) && (!empty($_POST['points'])))
- {
+ if ((!empty($_POST['userid'])) && (!empty($_POST['pass'])) && (!empty($_POST['points']))) {
// Probe for nickname extension and if a nickname was entered
$probe_nickname = ((EXT_IS_ACTIVE("nickname")) && (("".round($_POST['userid'])."") != $_POST['userid']));
- if ($probe_nickname)
- {
+ if ($probe_nickname) {
// Nickname in URL, so load the ID
- $result = SQL_QUERY_ESC("SELECT userid, status, password FROM "._MYSQL_PREFIX."_user_data WHERE nickname='%s' LIMIT 1",
- array($_POST['userid']), __FILE__, __LINE__);
- }
- else
- {
+ $result = SQL_QUERY_ESC("SELECT userid, status, password FROM `"._MYSQL_PREFIX."_user_data` WHERE nickname='%s' LIMIT 1",
+ array($_POST['userid']), __FILE__, __LINE__);
+ } else {
// Direct userid entered
- $result = SQL_QUERY_ESC("SELECT userid, status, password FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d LIMIT 1",
- array(bigintval($_POST['userid'])), __FILE__, __LINE__);
+ $result = SQL_QUERY_ESC("SELECT userid, status, password FROM `"._MYSQL_PREFIX."_user_data` WHERE userid=%s LIMIT 1",
+ array(bigintval($_POST['userid'])), __FILE__, __LINE__);
}
// Load data
SQL_FREERESULT($result);
// Remove any dots and unwanted chars from the points
- $_POST['points'] = bigintval(round(str_replace(",", ".", $_POST['points'])));
+ $_POST['points'] = bigintval(round(REVERT_COMMA($_POST['points'])));
// Probe for enough points
- $probe_points = (($_POST['points'] >= $_CONFIG['doubler_min']) && ($_POST['points'] <= $_CONFIG['doubler_max']));
+ $probe_points = (($_POST['points'] >= getConfig('doubler_min')) && ($_POST['points'] <= getConfig('doubler_max')));
// Check all together
- if ((!empty($uid)) && ($password == generateHash($_POST['pass'], substr($password, 0, -40))) && ($status == "CONFIRMED") && ($probe_points))
- {
+ if ((!empty($uid)) && ($password == generateHash($_POST['pass'], substr($password, 0, -40))) && ($status == "CONFIRMED") && ($probe_points)) {
// Nickname resolved to a unique userid or direct userid entered by the member
$DOUBLER_UID = $uid;
$points = GET_TOTAL_DATA($uid, "user_points", "points") - GET_TOTAL_DATA($uid, "user_data", "used_points");
// So let's continue with probing his points amount
- if (($points - $_CONFIG['doubler_left'] - $_POST['points'] * $_CONFIG['doubler_charge']) >= 0)
+ if (($points - getConfig('doubler_left') - $_POST['points'] * getConfig('doubler_charge')) >= 0)
{
// Enough points are left so let's continue with the doubling process
// Create doubling "account" width *DOUBLED* points
- $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_doubler (userid, refid, points, remote_ip, timemark, completed, is_ref) VALUES ('%s', '%s', '%s', '".$_SERVER['REMOTE_ADDR']."', UNIX_TIMESTAMP(), 'N', 'N')",
- array($uid, bigintval($GLOBALS['refid']), bigintval($_POST['points'] * 2)), __FILE__, __LINE__);
+ SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_doubler (userid, refid, points, remote_ip, timemark, completed, is_ref) VALUES ('%s','%s','%s','".GET_REMOTE_ADDR()."', UNIX_TIMESTAMP(), 'N','N')",
+ array($uid, bigintval($GLOBALS['refid']), bigintval($_POST['points'] * 2)), __FILE__, __LINE__);
// Subtract entered points
- $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET used_points=used_points+%s WHERE userid=%d LIMIT 1",
- array($_POST['points'], $uid), __FILE__, __LINE__);
-
- // Update mediadata as well
- if (GET_EXT_VERSION("mediadata") >= "0.0.4")
- {
- // Update database
- MEDIA_UPDATE_ENTRY(array("total_points"), "sub", $_POST['points']);
- }
+ SUB_POINTS("doubler", $uid, $_POST['points']);
// Add points to "total payed" including charge
- $points = $_POST['points'] - $_POST['points'] * $_CONFIG['doubler_charge'];
- $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_config SET doubler_points=doubler_points+%s WHERE config='0' LIMIT 1",
- array($points), __FILE__, __LINE__);
- $_CONFIG['doubler_points'] += $points;
-
- // Destroy cache
- if (GET_EXT_VERSION("cache") >= "0.1.2")
- {
- if ($CACHE->cache_file("config", true)) $CACHE->cache_destroy();
- }
-
- // Add second line for the referral but only when uid != refid
- if (($GLOBALS['refid'] > 0) && ($GLOBALS['refid'] != $uid))
- {
+ $points = $_POST['points'] - $_POST['points'] * getConfig('doubler_charge');
+ UPDATE_CONFIG("doubler_points", $points, "+");
+ getConfig('doubler_points') += $points;
+
+ // Add second line for the referal but only when uid != refid
+ if (($GLOBALS['refid'] > 0) && ($GLOBALS['refid'] != $uid)) {
// Okay add a refid line and apply refid percents
- $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_doubler (userid, refid, points, remote_ip, timemark, completed, is_ref) VALUES ('%s', '0', '%s', '".$_SERVER['REMOTE_ADDR']."', UNIX_TIMESTAMP(), 'N', 'Y')",
- array(bigintval($GLOBALS['refid']), bigintval($_POST['points'] * 2 * $_CONFIG['doubler_ref'])), __FILE__, __LINE__);
+ SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_doubler (userid,refid,points,remote_ip,timemark,completed,is_ref) VALUES ('%s',0,'%s','".GET_REMOTE_ADDR()."',UNIX_TIMESTAMP(),'N','Y')",
+ array(bigintval($GLOBALS['refid']), bigintval($_POST['points'] * 2 * getConfig('doubler_ref'))), __FILE__, __LINE__);
- // And that's why we dont't want to you more than one referral level of doubler-points. ^^^
- }
+ // And that's why we dont't want to you more than one referal level of doubler-points. ^^^
+ } // END - if
// Update usage counter
- $result = SQL_QUERY("UPDATE "._MYSQL_PREFIX."_config SET doubler_counter=doubler_counter+1 WHERE config='0' LIMIT 1", __FILE__, __LINE__);
- $_CONFIG['doubler_counter']++;
+ UPDATE_CONFIG("doubler_counter", 1, "+");
+ incrementCondigEntry('doubler_counter');
// Set constant
define('__DOUBLER_MSG', LOAD_TEMPLATE("doubler_reflink", true, $_POST['userid']));
- }
- else
- {
+ } else {
// Not enougth points left
define('__ERROR_MSG', DOUBLER_FORM_NO_POINTS_LEFT);
}
-
- }
- elseif ($status == "CONFIRMED")
- {
+ } elseif ($status == "CONFIRMED") {
// Account is unconfirmed!
define('__ERROR_MSG', DOUBLER_FORM_WRONG_PASS);
- }
- elseif ($status == "UNCONFIRMED")
- {
+ } elseif ($status == "UNCONFIRMED") {
// Account is unconfirmed!
define('__ERROR_MSG', DOUBLER_FORM_STATUS_UNCONFIRMED);
- }
- elseif ($status == "LOCKED")
- {
+ } elseif ($status == "LOCKED") {
// Account is locked by admin / holiday!
define('__ERROR_MSG', DOUBLER_FORM_STATUS_LOCKED);
- }
- elseif ($_POST['points'] < $_CONFIG['doubler_min'])
- {
+ } elseif ($_POST['points'] < getConfig('doubler_min')) {
// Not enougth points entered
define('__ERROR_MSG', DOUBLER_FORM_POINTS_MIN);
- }
- elseif ($_POST['points'] > $_CONFIG['doubler_max'])
- {
+ } elseif ($_POST['points'] > getConfig('doubler_max')) {
// Too much points entered
define('__ERROR_MSG', DOUBLER_FORM_POINTS_MAX);
- }
- elseif ($probe_nickname)
- {
+ } elseif ($probe_nickname) {
// Cannot resolv nickname -> userid
define('__ERROR_MSG', DOUBLER_FORM_404_NICKNAME);
- }
- else
- {
+ } else {
// Wrong password or account not found
define('__ERROR_MSG', DOUBLER_FORM_404_MEMBER);
}
- }
- elseif (empty($_POST['userid']))
- {
+ } elseif (empty($_POST['userid'])) {
// Login not entered
define('__ERROR_MSG', DOUBLER_FORM_404_LOGIN);
- }
- elseif (empty($_POST['pass']))
- {
+ } elseif (empty($_POST['pass'])) {
// Password not entered
define('__ERROR_MSG', DOUBLER_FORM_404_PASSWORD);
- }
- elseif (empty($_POST['points']))
- {
+ } elseif (empty($_POST['points'])) {
// points not entered
define('__ERROR_MSG', DOUBLER_FORM_404_POINTS);
}
if (!defined('__ERROR_MSG')) define('__ERROR_MSG' , "");
// Shall I check for points immediately?
- if ($_CONFIG['doubler_send_mode'] == "DIRECT") require(PATH."inc/doubler_send.php");
+ if (getConfig('doubler_send_mode') == "DIRECT") require(PATH."inc/doubler_send.php");
// Output header
include(PATH."inc/header.php");
define('__DOUBLER_HEADER', LOAD_TEMPLATE("doubler_header", true));
define('__DOUBLER_FOOTER', LOAD_TEMPLATE("doubler_footer", true));
- if (!empty($uid))
- {
+ if (!empty($uid)) {
// Transfer userid/nickname to constant
define('__REFID', $uid);
- }
- elseif (!empty($GLOBALS['refid']))
- {
+ } else {
// Transfer userid/nickname to constant
define('__REFID', $GLOBALS['refid']);
}
- else
- {
- // Transfer default refid to constant
- define('__REFID', $_CONFIG['def_refid']);
- }
// Percent values etc.
- define('__CHARGE_VALUE', TRANSLATE_COMMA($_CONFIG['doubler_charge'] * 100));
- define('__REF_VALUE' , TRANSLATE_COMMA($_CONFIG['doubler_ref'] * 100));
- define('__TOTAL_VALUE' , TRANSLATE_COMMA($_CONFIG['doubler_points']));
- define('__MIN_VALUE' , TRANSLATE_COMMA($_CONFIG['doubler_min']));
- define('__MAX_VALUE' , TRANSLATE_COMMA($_CONFIG['doubler_max']));
+ define('__CHARGE_VALUE', TRANSLATE_COMMA(getConfig('doubler_charge') * 100));
+ define('__REF_VALUE' , TRANSLATE_COMMA(getConfig('doubler_ref') * 100));
+ define('__TOTAL_VALUE' , TRANSLATE_COMMA(getConfig('doubler_points')));
+ define('__MIN_VALUE' , TRANSLATE_COMMA(getConfig('doubler_min')));
+ define('__MAX_VALUE' , TRANSLATE_COMMA(getConfig('doubler_max')));
// Text "Enter login"
- if (EXT_IS_ACTIVE("nickname"))
- {
+ if (EXT_IS_ACTIVE("nickname")) {
// Choose login/nickname
define('DOUBLER_ENTER_LOGIN', GUEST_ENTER_LOGIN_NICKNAME);
- }
- else
- {
+ } else {
// Simple login ID
define('DOUBLER_ENTER_LOGIN', GUEST_ENTER_LOGIN);
}
// Which mail-send-mode did the admin setup?
- switch ($_CONFIG['doubler_send_mode'])
+ switch (getConfig('doubler_send_mode'))
{
case "DIRECT":
define('DOUBLER_PAYOUT_TIME', DOUBLER_PAYOUT_TIME_DIRECT);
}
// Generate table with already payed out doubles
- define('__DOUBLER_PAYOUT_HISTORY', DOUBLER_GENERATE_TABLE("0", 'Y', 'N', "DESC"));
+ define('__DOUBLER_PAYOUT_HISTORY', DOUBLER_GENERATE_TABLE("0", "Y", "N", "DESC"));
// Generate timemark
- define('__TIMEOUT_MARK', CREATE_FANCY_TIME($_CONFIG['doubler_timeout']));
+ define('__TIMEOUT_MARK', CREATE_FANCY_TIME(getConfig('doubler_timeout')));
// Usage counter
- define('__DOUBLER_COUNTER', $_CONFIG['doubler_counter']);
+ define('__DOUBLER_COUNTER', getConfig('doubler_counter'));
// Points left to doubler
define('__LEFT_VALUE', TRANSLATE_COMMA(DOUBLER_GET_TOTAL_POINTS_LEFT()));
// Output footer
include(PATH."inc/footer.php");
-}
- else
-{
+} else {
// You have to configure first!
LOAD_URL("install.php");
}