X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fmember%2Fwhat-wernis.php;h=8e5465d241df9a741b9fc7dff5bd6acf433cbd09;hp=f6ef2687f6a853dcd7eb093734a2445d608589dc;hb=c47144dd555bbab4acdf9085e4623900dedb0e7c;hpb=9955cbe6e80fa364e01d1cb29d14a587f48736f1 diff --git a/inc/modules/member/what-wernis.php b/inc/modules/member/what-wernis.php index f6ef2687f6..8e5465d241 100644 --- a/inc/modules/member/what-wernis.php +++ b/inc/modules/member/what-wernis.php @@ -32,27 +32,26 @@ ************************************************************************/ // Some security stuff... -if (ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) { +if (!defined('__SECURITY')) { $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php"; require($INC); -} elseif (!IS_LOGGED_IN()) { +} elseif (!IS_MEMBER()) { // User is not logged in LOAD_URL("modules.php?module=index"); } elseif ((!EXT_IS_ACTIVE("wernis")) && (!IS_ADMIN())) { - // Extension "wernis" is not activated - ADD_FATAL(EXTENSION_PROBLEM_EXT_INACTIVE, "wernis"); + addFatalMessage(EXTENSION_PROBLEM_EXT_INACTIVE, "wernis"); return; } // Add description as navigation point -ADD_DESCR("member", basename(__FILE__)); +ADD_DESCR("member", __FILE__); // Check if the admin has entered the data -if ((empty($_CONFIG['wernis_api_id'])) || (empty($_CONFIG['wernis_api_md5']))) { +if ((getConfig('wernis_api_id') == "") || (getConfig('wernis_api_md5') == "")) { // Something important is missing... LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_API_DATA_MISSING); return; -} +} // END - if // Init the content array and points $content = array(); $points = false; @@ -60,17 +59,18 @@ $content = array(); $points = false; // Is the mode set (withdraw or payout) if ((!isset($_GET['mode'])) || ($_GET['mode'] == "choose")) { // Let the user choose what he wants to do - $content['refid'] = bigintval($_CONFIG['wernis_refid']); + $content['refid'] = bigintval(getConfig('wernis_refid')); + $content['wds66_id'] = 0; // Get WDS66 id - $result = SQL_QUERY_ESC("SELECT wernis_userid FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d LIMIT 1", + $result = SQL_QUERY_ESC("SELECT wernis_userid FROM `{!_MYSQL_PREFIX!}_user_data` WHERE userid=%s LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__); // Are there some entries? if (SQL_NUMROWS($result) == 1) { // Fetch ID list($content['wds66_id']) = SQL_FETCHROW($result); - } + } // END - if // Free result SQL_FREERESULT($result); @@ -81,7 +81,7 @@ if ((!isset($_GET['mode'])) || ($_GET['mode'] == "choose")) { $_GET['mode'] = "list"; // And load all rows! - $result = SQL_QUERY_ESC("SELECT `id`, `wernis_account`, `wernis_amount`, `wernis_timestamp`, `wernis_type` FROM "._MYSQL_PREFIX."_user_wernis WHERE `userid` = %d ORDER BY `wernis_timestamp` DESC", + $result = SQL_QUERY_ESC("SELECT `id`, `wernis_account`, `wernis_amount`, `wernis_timestamp`, `wernis_type` FROM `{!_MYSQL_PREFIX!}_user_wernis` WHERE `userid` = %s ORDER BY `wernis_timestamp` DESC", array($GLOBALS['userid']), __FILE__, __LINE__); // Load all rows @@ -89,12 +89,12 @@ if ((!isset($_GET['mode'])) || ($_GET['mode'] == "choose")) { while ($data = SQL_FETCHARRAY($result)) { // Prepare data for output $rowContent = array( - 'stamp' => MAKE_DATETIME($data['wernis_timestamp'], "2"), - 'points' => TRANSLATE_COMMA($data['wernis_amount']), - 'acc' => bigintval($data['wernis_account']), - 'status' => WERNIS_TRANSFER_STATUS($data['wernis_type']), - 'raw_type' => strtolower($data['wernis_type']), - 'sw' => $SW, + 'stamp' => MAKE_DATETIME($data['wernis_timestamp'], "2"), + 'points' => TRANSLATE_COMMA($data['wernis_amount']), + 'acc' => bigintval($data['wernis_account']), + 'status' => WERNIS_TRANSFER_STATUS($data['wernis_type']), + 'raw_type' => strtolower($data['wernis_type']), + 'sw' => $SW, ); // Load row template @@ -105,59 +105,87 @@ if ((!isset($_GET['mode'])) || ($_GET['mode'] == "choose")) { // Free result SQL_FREERESULT($result); } else { + // Default links are not active! + $content['payout_link'] = "".WERNIS_MEMBER_PAYOUT_DISABLED.""; + $content['withdraw_link'] = "".WERNIS_MEMBER_WITHDRAW_DISABLED.""; + + // Is the payout mode active? + if (getConfig('wernis_payout_active') == "Y") { + // Add link + $content['payout_link'] = "
".MEMBER_WERNIS_MODE_PAYOUT."
"; + } // END - if + + // Is the withdraw mode active? + if (getConfig('wernis_withdraw_active') == "Y") { + // Add link + $content['withdraw_link'] = "
".MEMBER_WERNIS_MODE_WITHDRAW."
"; + } // END - if + // Mode chooser! ;-) $_GET['mode'] = "choose"; } -} elseif ($_GET['mode'] == "pay") { +} elseif (($_GET['mode'] == "payout") && (getConfig('wernis_payout_active') == "Y")) { // Get total points and check if the user can request a payout $points = GET_TOTAL_DATA($GLOBALS['userid'], "user_points", "points") - GET_TOTAL_DATA($GLOBALS['userid'], "user_data", "used_points"); - // No dots here... - $points = explode(".", $points); - $points = bigintval($points[0]); + // Remove the registration fee + $points = $points - getConfig('points_register'); + + // Is there a percentage or fixed fee? + $points = WERNIS_TAKE_FEE($points, "payout"); // Is this enougth for a payout? - if ($points < $_CONFIG['wernis_min_payout']) { + if ($points < getConfig('wernis_min_payout')) { // No, then abort here - LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_MIN_PAYOUT_PAYOUT, TRANSLATE_COMMA($_CONFIG['wernis_min_payout']))); + LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_MIN_PAYOUT, TRANSLATE_COMMA(getConfig('wernis_min_payout')))); return; - } + } // END - if + + // No dots here... + $points = explode(".", $points); + $points = bigintval($points[0]); // Add points to content array - $content['points'] = $points; - $content['min_points'] = TRANSLATE_COMMA($_CONFIG['wernis_min_payout']); + $content['points'] = TRANSLATE_COMMA($points); + $content['min_points'] = TRANSLATE_COMMA(getConfig('wernis_min_payout')); + + // Add fees to array + WERNIS_ADD_FEES_TO_ARRAY($content); // Get WDS66 id $content['wds66_id'] = ""; - $result = SQL_QUERY_ESC("SELECT wernis_userid FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d LIMIT 1", + $result = SQL_QUERY_ESC("SELECT wernis_userid FROM `{!_MYSQL_PREFIX!}_user_data` WHERE userid=%s LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__); // Are there some entries? if (SQL_NUMROWS($result) == 1) { // Fetch ID list($content['wds66_id']) = SQL_FETCHROW($result); - } + } // END - if // Free result SQL_FREERESULT($result); -} elseif ($_GET['mode'] == "withdraw") { +} elseif (($_GET['mode'] == "withdraw") && (getConfig('wernis_withdraw_active') == "Y")) { // Get total points for just displaying them $points = GET_TOTAL_DATA($GLOBALS['userid'], "user_points", "points") - GET_TOTAL_DATA($GLOBALS['userid'], "user_data", "used_points"); // Prepare data for the template - $content['points'] = TRANSLATE_COMMA($points); - $content['min_points'] = TRANSLATE_COMMA($_CONFIG['wernis_min_withdraw']); - $content['wds66_id'] = ""; + $content['points'] = TRANSLATE_COMMA($points); + $content['min_points'] = TRANSLATE_COMMA(getConfig('wernis_min_withdraw')); + $content['wds66_id'] = ""; + + // Add fees to array + WERNIS_ADD_FEES_TO_ARRAY($content); // Get WDS66 id - $result = SQL_QUERY_ESC("SELECT wernis_userid FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d LIMIT 1", + $result = SQL_QUERY_ESC("SELECT wernis_userid FROM `{!_MYSQL_PREFIX!}_user_data` WHERE userid=%s LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__); // Are there some entries? if (SQL_NUMROWS($result) == 1) { // Fetch ID list($content['wds66_id']) = SQL_FETCHROW($result); - } + } // END - if // Free result SQL_FREERESULT($result); @@ -169,128 +197,92 @@ if ((!isset($_GET['mode'])) || ($_GET['mode'] == "choose")) { // Is the formular sent? if ((isset($_POST['ok'])) && (isset($_GET['mode']))) { - // Check input data depending on the mode and execute the requested mode - switch ($_GET['mode']) { - case "withdraw": // Widthdraws WDS66 -> This exchange - // Is the user ID and password set? - if (empty($_POST['wds66_id'])) { - // Nothing entered in WDS66 user ID - LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_EMPTY_USERNAME); - OUTPUT_HTML("
"); - } elseif (empty($_POST['wds66_password'])) { - // Nothing entered in WDS66 password - LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_EMPTY_PASSWORD); - OUTPUT_HTML("
"); - } elseif (empty($_POST['amount'])) { - // Nothing entered in amount - LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_EMPTY_AMOUNT); - OUTPUT_HTML("
"); - } elseif ($_POST['wds66_id'] != bigintval($_POST['wds66_id'])) { - // Only numbers in account ID! - LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_INVALID_USERNAME); - OUTPUT_HTML("
"); - } elseif ($_POST['amount'] != bigintval($_POST['amount'])) { - // Only numbers in amount! - LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_INVALID_AMOUNT); - OUTPUT_HTML("
"); - } elseif ($_POST['amount'] < $_CONFIG['wernis_min_withdraw']) { - // Not enougth entered! - LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_AMOUNT_SMALLER_MIN, bigintval($_CONFIG['wernis_min_withdraw']))); - OUTPUT_HTML("
"); - } else { - // All is fine here so do the withdraw - $success = WERNIS_EXECUTE_WITHDRAW($_POST['wds66_id'], md5($_POST['wds66_password']), $_POST['amount']); - if ($success) { - // Add it to this amount - $DEPTH = 0; - ADD_POINTS_REFSYSTEM($GLOBALS['userid'], bigintval($_POST['amount']), false, 0, false, "direct"); - - // Update the user data as well.. - $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET `wernis_userid`=%d WHERE userid=%d LIMIT 1", - array(bigintval($_POST['wds66_id']), $GLOBALS['userid']), __FILE__, __LINE__); - - // All done! - LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_WITHDRAW_DONE); - return; - } elseif ((GET_WERNIS_ERROR_CODE() == "user_failed") || (GET_WERNIS_ERROR_CODE() == "own_failed") || (GET_WERNIS_ERROR_CODE() == "amount_failed")) { - // Wrong login data - LOAD_TEMPLATE("admin_settings_saved", false, GET_WERNIS_ERROR_MESSAGE()); - OUTPUT_HTML("
"); + // Is the user ID and password set? + if (empty($_POST['wds66_id'])) { + // Nothing entered in WDS66 user ID + LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_EMPTY_USERNAME); + } elseif (empty($_POST['wds66_password'])) { + // Nothing entered in WDS66 password + LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_EMPTY_PASSWORD); + } elseif (empty($_POST['amount'])) { + // Nothing entered in amount + LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_EMPTY_AMOUNT); + } elseif ($_POST['wds66_id'] != bigintval($_POST['wds66_id'])) { + // Only numbers in account ID! + LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_INVALID_USERNAME); + } elseif ($_POST['amount'] != bigintval($_POST['amount'])) { + // Only numbers in amount! + LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_INVALID_AMOUNT); + } else { + // Check input data depending on the mode and execute the requested mode + switch ($_GET['mode']) { + case "withdraw": // Widthdraws WDS66 -> This exchange + if ($_POST['amount'] < getConfig('wernis_min_withdraw')) { + // Not enougth entered! + LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_AMOUNT_SMALLER_MIN, bigintval(getConfig('wernis_min_withdraw')))); } else { - // Something went wrong - LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_WITHDRAW_FAILED, GET_WERNIS_ERROR_MESSAGE())); - OUTPUT_HTML("
"); - } - } - break; - - case "pay": // Payout this exchange -> WDS66 - // Is the user ID and password set? - if (empty($_POST['wds66_id'])) { - // Nothing entered in WDS66 user ID - LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_EMPTY_USERNAME); - OUTPUT_HTML("
"); - } elseif (empty($_POST['wds66_password'])) { - // Nothing entered in WDS66 password - LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_EMPTY_PASSWORD); - OUTPUT_HTML("
"); - } elseif (empty($_POST['amount'])) { - // Nothing entered in amount - LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_EMPTY_AMOUNT); - OUTPUT_HTML("
"); - } elseif ($_POST['wds66_id'] != bigintval($_POST['wds66_id'])) { - // Only numbers in account ID! - LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_INVALID_USERNAME); - OUTPUT_HTML("
"); - } elseif ($_POST['amount'] != bigintval($_POST['amount'])) { - // Only numbers in amount! - LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_INVALID_AMOUNT); - OUTPUT_HTML("
"); - } elseif ($_POST['amount'] < $_CONFIG['wernis_min_payout']) { - // Not enougth entered! - LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_AMOUNT_SMALLER_MIN, bigintval($_CONFIG['wernis_min_payout']))); - OUTPUT_HTML("
"); - } elseif ($_POST['amount'] > $points) { - // Not enougth points left! - LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_PAYOUT_POINTS_DEPLETED, bigintval($_POST['amount']), bigintval($points))); - OUTPUT_HTML("
"); - } else { - // All is fine here so do the withdraw - $success = WERNIS_EXECUTE_PAYOUT($_POST['wds66_id'], md5($_POST['wds66_password']), $_POST['amount']); - if ($success) { - // Default is locked! - $locked = true; - - // Shall I "pay" the referral points imidiately? - if ($_CONFIG['ref_payout'] == "0") { - // Yes, "pay" it now - $locked = false; + // All is fine here so do the withdraw + $success = WERNIS_EXECUTE_WITHDRAW($_POST['wds66_id'], md5($_POST['wds66_password']), $_POST['amount']); + if ($success) { + // Add it to this amount + unset($GLOBALS['ref_level']); + ADD_POINTS_REFSYSTEM("wernis_withdraw", $GLOBALS['userid'], bigintval($_POST['amount']), false, 0, false, "direct"); + + // Update the user data as well.. + SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_user_data` SET `wernis_userid`=%s WHERE userid=%s LIMIT 1", + array(bigintval($_POST['wds66_id']), $GLOBALS['userid']), __FILE__, __LINE__); + + // All done! + LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_WITHDRAW_DONE); + return; + } elseif ((GET_WERNIS_ERROR_CODE() == "user_failed") || (GET_WERNIS_ERROR_CODE() == "own_failed") || (GET_WERNIS_ERROR_CODE() == "amount_failed")) { + // Wrong login data + LOAD_TEMPLATE("admin_settings_saved", false, GET_WERNIS_ERROR_MESSAGE()); + } else { + // Something went wrong + LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_WITHDRAW_FAILED, GET_WERNIS_ERROR_MESSAGE())); } - - // Remove the points from the account - $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET `used_points` = `used_points` + %d, `wernis_userid`=%d WHERE userid=%d LIMIT 1", - array(bigintval($_POST['amount']), bigintval($_POST['wds66_id']), $GLOBALS['userid']), __FILE__, __LINE__); - - // All done! - LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_PAYOUT_DONE); - return; - } elseif ((GET_WERNIS_ERROR_CODE() == "user_failed") || (GET_WERNIS_ERROR_CODE() == "own_failed") || (GET_WERNIS_ERROR_CODE() == "amount_failed") || (GET_WERNIS_ERROR_CODE() == "api_amount_failed")) { - // Wrong login data - LOAD_TEMPLATE("admin_settings_saved", false, GET_WERNIS_ERROR_MESSAGE()); - OUTPUT_HTML("
"); + } + break; + + case "payout": // Payout this exchange -> WDS66 + if ($_POST['amount'] < getConfig('wernis_min_payout')) { + // Not enougth entered! + LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_AMOUNT_SMALLER_MIN, bigintval(getConfig('wernis_min_payout')))); + } elseif ($_POST['amount'] > $points) { + // Not enougth points left! + LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_PAYOUT_POINTS_DEPLETED, bigintval($_POST['amount']), bigintval($points))); } else { - // Something went wrong - LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_WITHDRAW_FAILED, GET_WERNIS_ERROR_MESSAGE())); - OUTPUT_HTML("
"); + // All is fine here so do the withdraw + $success = WERNIS_EXECUTE_PAYOUT($_POST['wds66_id'], $_POST['amount']); + if ($success) { + // Sub points + SUB_POINTS("wernis_payout", $GLOBALS['userid'], $_POST['amount']); + + // Update WDS66 id + SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_user_data` SET `wernis_userid`=%s WHERE userid=%s LIMIT 1", + array(bigintval($_POST['wds66_id']), $GLOBALS['userid']), __FILE__, __LINE__); + + // All done! + LOAD_TEMPLATE("admin_settings_saved", false, WERNIS_MEMBER_PAYOUT_DONE); + return; + } elseif ((GET_WERNIS_ERROR_CODE() == "user_failed") || (GET_WERNIS_ERROR_CODE() == "own_failed") || (GET_WERNIS_ERROR_CODE() == "amount_failed") || (GET_WERNIS_ERROR_CODE() == "api_amount_failed")) { + // Wrong login data + LOAD_TEMPLATE("admin_settings_saved", false, GET_WERNIS_ERROR_MESSAGE()); + } else { + // Something went wrong + LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_WITHDRAW_FAILED, GET_WERNIS_ERROR_MESSAGE())); + } } - } - break; + break; - default: // Invalid mode! - LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_MODE_INVALID, SQL_ESCAPE($_GET['mode']))); - return; + default: // Invalid mode! + DEBUG_LOG(__FILE__, __LINE__, sprintf("Invalid mode %s detected.", $_GET['mode'])); + LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_MODE_INVALID, SQL_ESCAPE($_GET['mode']))); + return; + } } -} +} // END - if // Prepare mode for template name $mode = sprintf("member_wernis_mode_%s", SQL_ESCAPE($_GET['mode']));