X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fmember%2Fwhat-wernis.php;h=af105f761c8a6ac67032135830e3d1accef5585c;hp=02be8e2703a7040af351d755edf1d42b0b25fac6;hb=330dbb3e2b34450cd1665497506455e195a0a166;hpb=c99c15da4f0f45ea20be40a1320112e7af83af90
diff --git a/inc/modules/member/what-wernis.php b/inc/modules/member/what-wernis.php
index 02be8e2703..af105f761c 100644
--- a/inc/modules/member/what-wernis.php
+++ b/inc/modules/member/what-wernis.php
@@ -1,7 +1,7 @@
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'] .= loadTemplate('member_wernis_mode_list_row', true, $rowContent);
+ } // END - while
+
+ // Free result
+ SQL_FREERESULT($result);
+ } else {
+ // 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'] = '';
+ } // END - if
+
+ // Is the withdraw mode active?
+ if (isWernisWithdrawActive()) {
+ // Add link
+ $content['withdraw_link'] = '';
+ } // END - if
+
+ // Mode chooser! ;-)
+ setGetRequestParameter('mode', 'choose');
+ }
+} elseif ((getRequestParameter('mode') == 'payout') && (getConfig('wernis_payout_active') == 'Y')) {
+ // Get user's total points and remove the registration fee
+ $points = getTotalPoints(getMemberId()) - getPointsRegister();
+
+ // Is there a percentage or fixed fee?
+ $points = WERNIS_TAKE_FEE($points, 'payout');
+
+ // Is this enougth for a payout?
+ if ($points < getConfig('wernis_min_payout')) {
+ // No, then abort here
+ displayMessage('{%message,MEMBER_WERNIS_MIN_PAYOUT=' . $points . '%}');
+ return;
+ } // END - if
+
+ // No dots here...
+ $points = explode('.', $points);
+ $points = bigintval($points[0]);
+
+ // 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!
+ displayMessage('{%message,MEMBER_WERNIS_MODE_INVALID=' . getRequestParameter('mode') . '%}');
+ return;
}
-//
+// 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
+ 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--}');
+ }
+ }
+ 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 {
+ // 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;
+
+ 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", getRequestParameter('mode'));
+
+// Load the template
+loadTemplate($mode, false, $content);
+
+// [EOF]
?>