+// Is the formular sent?
+if ((isFormSent()) && (isGetRequestParameterSet('mode'))) {
+ // Is the user id and password set?
+ if (!isPostRequestParameterSet(('wernis_userid'))) {
+ // Nothing entered in WDS66 user id
+ loadTemplate('admin_settings_saved', false, getMessage('WERNIS_MEMBER_EMPTY_USERNAME'));
+ } elseif (!isPostRequestParameterSet(('wds66_password'))) {
+ // Nothing entered in WDS66 password
+ loadTemplate('admin_settings_saved', false, getMessage('WERNIS_MEMBER_EMPTY_PASSWORD'));
+ } elseif (!isPostRequestParameterSet(('amount'))) {
+ // Nothing entered in amount
+ loadTemplate('admin_settings_saved', false, getMessage('WERNIS_MEMBER_EMPTY_AMOUNT'));
+ } elseif (postRequestParameter('wernis_userid') != bigintval(postRequestParameter('wernis_userid'))) {
+ // Only numbers in account id!
+ loadTemplate('admin_settings_saved', false, getMessage('WERNIS_MEMBER_INVALID_USERNAME'));
+ } elseif (postRequestParameter('amount') != bigintval(postRequestParameter('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 (getRequestParameter('mode')) {
+ case 'withdraw': // Widthdraws WDS66 -> This exchange
+ if (postRequestParameter('amount') < getConfig('wernis_min_withdraw')) {
+ // Not enougth entered!
+ loadTemplate('admin_settings_saved', false, getMessage('WERNIS_MEMBER_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!
+ 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, getMaskedMessage('WERNIS_MEMBER_WITHDRAW_FAILED', GET_WERNIS_ERROR_MESSAGE()));
+ }
+ }
+ break;
+
+ case 'payout': // Payout this exchange -> WDS66
+ if (postRequestParameter('amount') < getConfig('wernis_min_payout')) {
+ // Not enougth entered!
+ loadTemplate('admin_settings_saved', false, getMessage('WERNIS_MEMBER_PAYOUT_AMOUNT_SMALLER_MIN'));
+ } elseif (postRequestParameter('amount') > $points) {
+ // Not enougth points left!
+ loadTemplate('admin_settings_saved', false, sprintf(getMessage('WERNIS_MEMBER_PAYOUT_POINTS_DEPLETED'), bigintval(postRequestParameter('amount')), bigintval($points)));
+ } else {
+ // 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!
+ 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, getMaskedMessage('WERNIS_MEMBER_WITHDRAW_FAILED', GET_WERNIS_ERROR_MESSAGE()));
+ }
+ }
+ break;
+
+ default: // Invalid mode!
+ logDebugMessage(__FILE__, __LINE__, sprintf("Invalid mode %s detected.", getRequestParameter('mode')));
+ loadTemplate('admin_settings_saved', false, getMaskedMessage('WERNIS_MEMBER_MODE_INVALID', getRequestParameter('mode')));
+ return;
+ }
+ }
+} // END - if
+
+// Prepare mode for template name
+$mode = sprintf("member_wernis_mode_%s", getRequestParameter('mode'));
+
+// Load the template
+loadTemplate($mode, false, $content);
+
+// [EOF]