X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fmember%2Fwhat-wernis.php;h=33ffa15f14a15f5753ceb695e21f56fd33a2f542;hp=f6ef2687f6a853dcd7eb093734a2445d608589dc;hb=3e2e8ea82079f4e76b8add38efccf6c24afda507;hpb=9955cbe6e80fa364e01d1cb29d14a587f48736f1 diff --git a/inc/modules/member/what-wernis.php b/inc/modules/member/what-wernis.php index f6ef2687f6..33ffa15f14 100644 --- a/inc/modules/member/what-wernis.php +++ b/inc/modules/member/what-wernis.php @@ -10,9 +10,14 @@ * -------------------------------------------------------------------- * * Kurzbeschreibung : Auszahlungsanfragen * * -------------------------------------------------------------------- * - * * + * $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 * + * Copyright (c) 2003 - 2009 by Roland Haeder * * For more information visit: http://www.mxchange.org * * * * This program is free software; you can redistribute it and/or modify * @@ -32,271 +37,267 @@ ************************************************************************/ // Some security stuff... -if (ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) { - $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php"; - require($INC); -} elseif (!IS_LOGGED_IN()) { +if (!defined('__SECURITY')) { + die(); +} elseif (!isMember()) { // 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"); - return; + redirectToIndexMemberOnlyModule(); } // Add description as navigation point -ADD_DESCR("member", basename(__FILE__)); +addMenuDescription('member', __FILE__); + +if ((!isExtensionActive('wernis')) && (!isAdmin())) { + loadTemplate('admin_settings_saved', false, generateExtensionInactiveNotInstalledMessage('wernis')); + return; +} // END - if // 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); + loadTemplate('admin_settings_saved', false, getMessage('WERNIS_MEMBER_API_DATA_MISSING')); return; -} +} // END - if // Init the content array and points $content = array(); $points = false; // Is the mode set (withdraw or payout) -if ((!isset($_GET['mode'])) || ($_GET['mode'] == "choose")) { +if ((!isGetRequestElementSet('mode')) || (getRequestElement('mode') == 'choose')) { // Let the user choose what he wants to do - $content['refid'] = bigintval($_CONFIG['wernis_refid']); + $content['refid'] = 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", - array($GLOBALS['userid']), __FILE__, __LINE__); + $result = SQL_QUERY_ESC("SELECT wernis_userid FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1", + array(getUserId()), __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); // Is there an ID? - if ((!empty($content['wds66_id'])) && (!isset($_GET['mode']))) { + if ((!empty($content['wds66_id'])) && (!isGetRequestElementSet('mode'))) { // Then use an other "mode" - $_GET['mode'] = "list"; + setRequestGetElement('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", - array($GLOBALS['userid']), __FILE__, __LINE__); + $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(getUserId()), __FILE__, __LINE__); // Load all rows - $content['rows'] = ""; $SW = 2; + $content['rows'] = ''; $SW = 2; 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' => generateDateTime($data['wernis_timestamp'], 2), + 'points' => translateComma($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 - $content['rows'] .= LOAD_TEMPLATE("member_wernis_mode_list_row", true, $rowContent); + $content['rows'] .= loadTemplate('member_wernis_mode_list_row', true, $rowContent); $SW = 3 - $SW; } // 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"; + setRequestGetElement('mode', 'choose'); } -} elseif ($_GET['mode'] == "pay") { +} elseif ((getRequestElement('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"); + $points = countSumTotalData(getUserId(), 'user_points', 'points') - countSumTotalData(getUserId(), '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']))); + loadTemplate('admin_settings_saved', false, sprintf( + getMessage('WERNIS_MEMBER_MIN_PAYOUT'), + translateComma(getConfig('wernis_min_payout')), + translateComma($points) + )); 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'] = translateComma($points); + $content['min_points'] = translateComma(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", - array($GLOBALS['userid']), __FILE__, __LINE__); + $content['wds66_id'] = ''; + $result = SQL_QUERY_ESC("SELECT `wernis_userid` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1", + array(getUserId()), __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 ((getRequestElement('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"); + $points = countSumTotalData(getUserId(), 'user_points', 'points') - countSumTotalData(getUserId(), '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'] = translateComma($points); + $content['min_points'] = translateComma(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", - array($GLOBALS['userid']), __FILE__, __LINE__); + $result = SQL_QUERY_ESC("SELECT `wernis_userid` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1", + array(getUserId()), __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); } else { // Invalid mode! - LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_MODE_INVALID, SQL_ESCAPE($_GET['mode']))); + loadTemplate('admin_settings_saved', false, sprintf(getMessage('WERNIS_MEMBER_MODE_INVALID'), getRequestElement('mode'))); return; } // 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("
"); +if ((isFormSent()) && (isGetRequestElementSet('mode'))) { + // Is the user ID and password set? + if (!isPostRequestElementSet(('wds66_id'))) { + // Nothing entered in WDS66 user ID + loadTemplate('admin_settings_saved', false, getMessage('WERNIS_MEMBER_EMPTY_USERNAME')); + } elseif (!isPostRequestElementSet(('wds66_password'))) { + // Nothing entered in WDS66 password + loadTemplate('admin_settings_saved', false, getMessage('WERNIS_MEMBER_EMPTY_PASSWORD')); + } elseif (!isPostRequestElementSet(('amount'))) { + // Nothing entered in amount + loadTemplate('admin_settings_saved', false, getMessage('WERNIS_MEMBER_EMPTY_AMOUNT')); + } elseif (postRequestElement('wds66_id') != bigintval(postRequestElement('wds66_id'))) { + // Only numbers in account ID! + loadTemplate('admin_settings_saved', false, getMessage('WERNIS_MEMBER_INVALID_USERNAME')); + } elseif (postRequestElement('amount') != bigintval(postRequestElement('amount'))) { + // Only numbers in amount! + loadTemplate('admin_settings_saved', false, getMessage('WERNIS_MEMBER_INVALID_AMOUNT')); + } else { + // Check input data depending on the mode and execute the requested mode + switch (getRequestElement('mode')) { + case 'withdraw': // Widthdraws WDS66 -> This exchange + if (postRequestElement('amount') < getConfig('wernis_min_withdraw')) { + // Not enougth entered! + loadTemplate('admin_settings_saved', false, sprintf(getMessage('WERNIS_MEMBER_AMOUNT_SMALLER_MIN'), translateComma(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(postRequestElement('wds66_id'), md5(postRequestElement('wds66_password')), postRequestElement('amount')); + if ($success === true) { + // Add it to this amount + addPointsDirectly('wernis_withdraw', getUserId(), bigintval(postRequestElement('amount'))); + + // 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(postRequestElement('wds66_id')), getUserId()), __FILE__, __LINE__); + + // All done! + loadTemplate('admin_settings_saved', false, getMessage('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 + loadTemplate('admin_settings_saved', false, GET_WERNIS_ERROR_MESSAGE()); + } else { + // Something went wrong + loadTemplate('admin_settings_saved', false, sprintf(getMessage('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 (postRequestElement('amount') < getConfig('wernis_min_payout')) { + // Not enougth entered! + loadTemplate('admin_settings_saved', false, sprintf(getMessage('WERNIS_MEMBER_AMOUNT_SMALLER_MIN'), translateComma(getConfig('wernis_min_payout')))); + } elseif (postRequestElement('amount') > $points) { + // Not enougth points left! + loadTemplate('admin_settings_saved', false, sprintf(getMessage('WERNIS_MEMBER_PAYOUT_POINTS_DEPLETED'), bigintval(postRequestElement('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(postRequestElement('wds66_id'), postRequestElement('amount')); + if ($success === true) { + // Sub points + subtractPoints('wernis_payout', getUserId(), postRequestElement('amount')); + + // Update WDS66 id + SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_user_data` SET `wernis_userid`=%s WHERE `userid`=%s LIMIT 1", + array(bigintval(postRequestElement('wds66_id')), getUserId()), __FILE__, __LINE__); + + // All done! + loadTemplate('admin_settings_saved', false, getMessage('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 + loadTemplate('admin_settings_saved', false, GET_WERNIS_ERROR_MESSAGE()); + } else { + // Something went wrong + loadTemplate('admin_settings_saved', false, sprintf(getMessage('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! + logDebugMessage(__FILE__, __LINE__, sprintf("Invalid mode %s detected.", getRequestElement('mode'))); + loadTemplate('admin_settings_saved', false, sprintf(getMessage('WERNIS_MEMBER_MODE_INVALID'), getRequestElement('mode'))); + return; + } } -} +} // END - if // Prepare mode for template name -$mode = sprintf("member_wernis_mode_%s", SQL_ESCAPE($_GET['mode'])); +$mode = sprintf("member_wernis_mode_%s", getRequestElement('mode')); // Load the template -LOAD_TEMPLATE($mode, false, $content); +loadTemplate($mode, false, $content); -// +// [EOF] ?>