X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fmember%2Fwhat-wernis.php;h=af105f761c8a6ac67032135830e3d1accef5585c;hp=ca832333d9e8352bccfe8f406c741a5b85b5db6b;hb=330dbb3e2b34450cd1665497506455e195a0a166;hpb=50cec5fbac1b8b7427f016bf02c93cb1aa7bb9e1 diff --git a/inc/modules/member/what-wernis.php b/inc/modules/member/what-wernis.php index ca832333d9..af105f761c 100644 --- a/inc/modules/member/what-wernis.php +++ b/inc/modules/member/what-wernis.php @@ -1,7 +1,7 @@ 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, + 'wernis_timestamp' => generateDateTime($data['wernis_timestamp'], 2), + 'wernis_amount' => $data['wernis_amount'], + 'wernis_account' => $data['wernis_account'], + 'wernis_type' => $data['wernis_type'], ); // Load row template - $content['rows'] .= LOAD_TEMPLATE("member_wernis_mode_list_row", true, $rowContent); - $SW = 3 - $SW; - } + $content['rows'] .= loadTemplate('member_wernis_mode_list_row', true, $rowContent); + } // END - while // Free result SQL_FREERESULT($result); } else { - // Mode pay - $_GET['mode'] = "pay"; + // Default links are not active! + $content['payout_link'] = '{--MEMBER_WERNIS_PAYOUT_DISABLED--}'; + $content['withdraw_link'] = '{--MEMBER_WERNIS_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 (isWernisWithdrawActive()) { + // Add link + $content['withdraw_link'] = '
{--MEMBER_WERNIS_MODE_WITHDRAW--}
'; + } // END - if + + // Mode chooser! ;-) + setGetRequestParameter('mode', 'choose'); } -} -if ($_GET['mode'] == "pay") { - // 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]); +} elseif ((getRequestParameter('mode') == 'payout') && (getConfig('wernis_payout_active') == 'Y')) { + // Get user's total points and remove the registration fee + $points = getTotalPoints(getMemberId()) - getPointsRegister(); - // Remove the registration fee - $points = $points - $_CONFIG['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']))); + displayMessage('{%message,MEMBER_WERNIS_MIN_PAYOUT=' . $points . '%}'); return; - } + } // END - if - // Add points to content array - $content['points'] = $points; - $content['min_points'] = TRANSLATE_COMMA($_CONFIG['wernis_min_payout']); - - // Get WDS66 id - $content['wds66_id'] = ""; - $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); - } + // No dots here... + $points = explode('.', $points); + $points = bigintval($points[0]); - // Free result - SQL_FREERESULT($result); + // Add points to content array + $content['points'] = $points; +} elseif ((getRequestParameter('mode') == 'withdraw') && (isWernisWithdrawActive())) { + // Prepare data for the template + $content['points'] = getTotalPoints(getMemberId()); + $content['wernis_userid'] = ''; + + // Fetch id + $content['wernis_userid'] = getUserData('wernis_userid'); } else { // Invalid mode! - LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_MODE_INVALID, SQL_ESCAPE($_GET['mode']))); + displayMessage('{%message,MEMBER_WERNIS_MODE_INVALID=' . getRequestParameter('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 "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 payout - $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; +if ((isFormSent()) && (isGetRequestParameterSet('mode'))) { + // Is the user id and password set? + if (!isPostRequestParameterSet('wernis_userid')) { + // Nothing entered in WDS66 user id + displayMessage('{--MEMBER_WERNIS_EMPTY_USERNAME--}'); + } elseif (!isPostRequestParameterSet('wds66_password')) { + // Nothing entered in WDS66 password + displayMessage('{--MEMBER_WERNIS_EMPTY_PASSWORD--}'); + } elseif (!isPostRequestParameterSet('amount')) { + // Nothing entered in amount + displayMessage('{--MEMBER_WERNIS_EMPTY_AMOUNT--}'); + } elseif (postRequestParameter('wernis_userid') != bigintval(postRequestParameter('wernis_userid'))) { + // Only numbers in account id! + displayMessage('{--MEMBER_WERNIS_INVALID_USERNAME'); + } elseif (postRequestParameter('amount') != bigintval(postRequestParameter('amount'))) { + // Only numbers in amount! + displayMessage('{--MEMBER_WERNIS_INVALID_AMOUNT--}'); + } else { + // Check input data depending on the mode and execute the requested mode + switch (getRequestParameter('mode')) { + case 'withdraw': // Widthdraws WDS66 -> This exchange + if (postRequestParameter('amount') < getConfig('wernis_min_withdraw')) { + // Not enougth entered! + displayMessage('{--MEMBER_WERNIS_WITHDRAW_AMOUNT_SMALLER_MIN--}'); + } else { + // All is fine here so do the withdraw + $success = WERNIS_EXECUTE_WITHDRAW(postRequestParameter('wernis_userid'), md5(postRequestParameter('wds66_password')), postRequestParameter('amount')); + if ($success === true) { + // Add it to this amount + addPointsDirectly('wernis_withdraw', getMemberId(), bigintval(postRequestParameter('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(postRequestParameter('wernis_userid')), getMemberId()), __FILE__, __LINE__); + + // All done! + displayMessage('{--MEMBER_WERNIS_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 + displayMessage(GET_WERNIS_ERROR_MESSAGE()); + } else { + // Something went wrong + displayMessage('{--MEMBER_WERNIS_WITHDRAW_FAILED--}'); } - - // Remove the points from the account - $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET `used_points` = `used_points` + %s, `wernis_userid`=%s WHERE userid=%s 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 (postRequestParameter('amount') < getConfig('wernis_min_payout')) { + // Not enougth entered! + displayMessage('{--MEMBER_WERNIS_PAYOUT_AMOUNT_SMALLER_MIN--}'); + } elseif (postRequestParameter('amount') > $points) { + // Not enougth points left! + displayMessage(sprintf(getMessage('MEMBER_WERNIS_PAYOUT_POINTS_DEPLETED'), bigintval(postRequestParameter('amount')), bigintval($points))); } else { - // Something went wrong - LOAD_TEMPLATE("admin_settings_saved", false, sprintf(WERNIS_MEMBER_PAYOUT_FAILED, GET_WERNIS_ERROR_MESSAGE())); - OUTPUT_HTML("
"); + // All is fine here so do the withdraw + $success = WERNIS_EXECUTE_PAYOUT(postRequestParameter('wernis_userid'), postRequestParameter('amount')); + if ($success === true) { + // Sub points + subtractPoints('wernis_payout', getMemberId(), postRequestParameter('amount')); + + // Update WDS66 id + SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_user_data` SET `wernis_userid`=%s WHERE `userid`=%s LIMIT 1", + array(bigintval(postRequestParameter('wernis_userid')), getMemberId()), __FILE__, __LINE__); + + // All done! + displayMessage('{--MEMBER_WERNIS_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 + displayMessage(GET_WERNIS_ERROR_MESSAGE()); + } else { + // Something went wrong + displayMessage('{--MEMBER_WERNIS_PAYOUT_FAILED--}'); + } } - } - 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.", getRequestParameter('mode'))); + displayMessage('{%message,MEMBER_WERNIS_MODE_INVALID=' . getRequestParameter('mode') . '%}'); + return; + } // END - switch } -} +} // END - if // Prepare mode for template name -$mode = sprintf("member_wernis_mode_%s", SQL_ESCAPE($_GET['mode'])); +$mode = sprintf("member_wernis_mode_%s", getRequestParameter('mode')); // Load the template -LOAD_TEMPLATE($mode, false, $content); +loadTemplate($mode, false, $content); -// +// [EOF] ?>