A lot has been rewritten, ext-teams added, ext-forced continued:
[mailer.git] / inc / modules / member / what-wernis.php
index 6517d9cd8565b247cb44b3c04918dc88164ef893..60809e91dd54a4150c5e5ff0a3c7ff2bf4e907fe 100644 (file)
  * $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 - 2009 by Roland Haeder                           *
+ * Copyright (c) 2009 - 2011 by Mailer Developer Team                   *
  * For more information visit: http://www.mxchange.org                  *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
@@ -45,17 +44,17 @@ if (!defined('__SECURITY')) {
 }
 
 // Add description as navigation point
-addMenuDescription('member', __FILE__);
+addYouAreHereLink('member', __FILE__);
 
 if ((!isExtensionActive('wernis')) && (!isAdmin())) {
-       loadTemplate('admin_settings_saved', false, generateExtensionInactiveNotInstalledMessage('wernis'));
+       displayMessage('{%pipe,generateExtensionInactiveNotInstalledMessage=wernis%}');
        return;
 } // END - if
 
 // Check if the admin has entered the data
-if ((getConfig('wernis_api_id') == '') || (getConfig('wernis_api_md5') == '')) {
+if ((getWernisApiId() == '') || (getWernisApiMd5() == '')) {
        // Something important is missing...
-       loadTemplate('admin_settings_saved', false, getMessage('MEMBER_WERNIS_API_DATA_MISSING'));
+       displayMessage('{--MEMBER_WERNIS_API_DATA_MISSING--}');
        return;
 } // END - if
 
@@ -65,7 +64,6 @@ $content = array(); $points = false;
 // Is the mode set (withdraw or payout)
 if ((!isGetRequestParameterSet('mode')) || (getRequestParameter('mode') == 'choose')) {
        // Let the user choose what he wants to do
-       $content['refid']    = getConfig(('wernis_refid'));
        $content['wernis_userid'] = '0';
 
        // Is there an id?
@@ -78,22 +76,19 @@ if ((!isGetRequestParameterSet('mode')) || (getRequestParameter('mode') == 'choo
                        array(getMemberId()), __FILE__, __LINE__);
 
                // Load all rows
-               $content['rows'] = ''; $SW = 2;
+               $content['rows'] = '';
                while ($data = SQL_FETCHARRAY($result)) {
                        // Prepare data for output
                        $rowContent = array(
                                'wernis_timestamp' => generateDateTime($data['wernis_timestamp'], 2),
-                               'points'           => translateComma($data['wernis_amount']),
-                               'wernis_account'   => bigintval($data['wernis_account']),
-                               'status'           => WERNIS_TRANSFER_STATUS($data['wernis_type']),
-                               'raw_type'         => strtolower($data['wernis_type']),
-                               'sw'               => $SW,
+                               '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);
-                       $SW = 3 - $SW;
-               }
+               } // END - while
 
                // Free result
                SQL_FREERESULT($result);
@@ -105,24 +100,21 @@ if ((!isGetRequestParameterSet('mode')) || (getRequestParameter('mode') == 'choo
                // Is the payout mode active?
                if (getConfig('wernis_payout_active') == 'Y') {
                        // Add link
-                       $content['payout_link'] = "<a class=\"menu_blur\" style=\"height: 40px\" href=\"{%url=modules.php?module=login&amp;what=wernis&amp;mode=payout%}\"><div style=\"padding-top: 10px\">{--MEMBER_WERNIS_MODE_PAYOUT--}</div></a>";
+                       $content['payout_link'] = '<a class="menu_blur" style="height: 40px" href="{%url=modules.php?module=login&amp;what=wernis&amp;mode=payout%}"><div style="padding-top: 10px">{--MEMBER_WERNIS_MODE_PAYOUT--}</div></a>';
                } // END - if
 
                // Is the withdraw mode active?
-               if (getConfig('wernis_withdraw_active') == 'Y') {
+               if (isWernisWithdrawActive()) {
                        // Add link
-                       $content['withdraw_link'] = "<a class=\"menu_blur\" style=\"height: 40px\" href=\"{%url=modules.php?module=login&amp;what=wernis&amp;mode=withdraw%}\"><div style=\"padding-top: 10px\">{--MEMBER_WERNIS_MODE_WITHDRAW--}</div></a>";
+                       $content['withdraw_link'] = '<a class="menu_blur" style="height: 40px" href="{%url=modules.php?module=login&amp;what=wernis&amp;mode=withdraw%}"><div style="padding-top: 10px">{--MEMBER_WERNIS_MODE_WITHDRAW--}</div></a>';
                } // END - if
 
                // Mode chooser! ;-)
                setGetRequestParameter('mode', 'choose');
        }
 } elseif ((getRequestParameter('mode') == 'payout') && (getConfig('wernis_payout_active') == 'Y')) {
-       // Get total points and check if the user can request a payout
-       $points = countSumTotalData(getMemberId(), 'user_points', 'points') - countSumTotalData(getMemberId(), 'user_data', 'used_points');
-
-       // Remove the registration fee
-       $points = $points - getConfig('points_register');
+       // 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');
@@ -130,11 +122,7 @@ if ((!isGetRequestParameterSet('mode')) || (getRequestParameter('mode') == 'choo
        // Is this enougth for a payout?
        if ($points < getConfig('wernis_min_payout')) {
                // No, then abort here
-               loadTemplate('admin_settings_saved', false, sprintf(
-                       getMessage('MEMBER_WERNIS_MIN_PAYOUT'),
-                       translateComma(getConfig('wernis_min_payout')),
-                       translateComma($points)
-               ));
+               displayMessage('{%message,MEMBER_WERNIS_MIN_PAYOUT=' . $points . '%}');
                return;
        } // END - if
 
@@ -143,74 +131,66 @@ if ((!isGetRequestParameterSet('mode')) || (getRequestParameter('mode') == 'choo
        $points = bigintval($points[0]);
 
        // Add points to content array
-       $content['points']     = translateComma($points);
-
-       // Get WDS66 username
-       $content['wernis_userid'] = getUserData('wernis_userid');
-} elseif ((getRequestParameter('mode') == 'withdraw') && (getConfig('wernis_withdraw_active') == 'Y')) {
-       // Get total points for just displaying them
-       $points = countSumTotalData(getMemberId(), 'user_points', 'points') - countSumTotalData(getMemberId(), 'user_data', 'used_points');
-
+       $content['points']     = $points;
+} elseif ((getRequestParameter('mode') == 'withdraw') && (isWernisWithdrawActive())) {
        // Prepare data for the template
-       $content['points']        = translateComma($points);
+       $content['points']        = getTotalPoints(getMemberId());
        $content['wernis_userid'] = '';
 
-       // Add fees to array
-       WERNIS_ADD_FEES_TO_ARRAY($content);
-
        // Fetch id
        $content['wernis_userid'] = getUserData('wernis_userid');
 } else {
        // Invalid mode!
-       loadTemplate('admin_settings_saved', false, getMaskedMessage('MEMBER_WERNIS_MODE_INVALID', getRequestParameter('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'))) {
+       if (!isPostRequestParameterSet('wernis_userid')) {
                // Nothing entered in WDS66 user id
-               loadTemplate('admin_settings_saved', false, getMessage('MEMBER_WERNIS_EMPTY_USERNAME'));
-       } elseif (!isPostRequestParameterSet(('wds66_password'))) {
+               displayMessage('{--MEMBER_WERNIS_EMPTY_USERNAME--}');
+       } elseif (!isPostRequestParameterSet('wds66_password')) {
                // Nothing entered in WDS66 password
-               loadTemplate('admin_settings_saved', false, getMessage('MEMBER_WERNIS_EMPTY_PASSWORD'));
-       } elseif (!isPostRequestParameterSet(('amount'))) {
+               displayMessage('{--MEMBER_WERNIS_EMPTY_PASSWORD--}');
+       } elseif (!isPostRequestParameterSet('amount')) {
                // Nothing entered in amount
-               loadTemplate('admin_settings_saved', false, getMessage('MEMBER_WERNIS_EMPTY_AMOUNT'));
+               displayMessage('{--MEMBER_WERNIS_EMPTY_AMOUNT--}');
        } elseif (postRequestParameter('wernis_userid') != bigintval(postRequestParameter('wernis_userid'))) {
                // Only numbers in account id!
-               loadTemplate('admin_settings_saved', false, getMessage('MEMBER_WERNIS_INVALID_USERNAME'));
+               displayMessage('{--MEMBER_WERNIS_INVALID_USERNAME');
        } elseif (postRequestParameter('amount') != bigintval(postRequestParameter('amount'))) {
                // Only numbers in amount!
-               loadTemplate('admin_settings_saved', false, getMessage('MEMBER_WERNIS_INVALID_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!
-                                       loadTemplate('admin_settings_saved', false, getMessage('MEMBER_WERNIS_WITHDRAW_AMOUNT_SMALLER_MIN'));
+                                       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')));
+                                               initReferalSystem();
+                                               addPointsThroughReferalSystem('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('MEMBER_WERNIS_WITHDRAW_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
-                                               loadTemplate('admin_settings_saved', false, GET_WERNIS_ERROR_MESSAGE());
+                                               displayMessage(GET_WERNIS_ERROR_MESSAGE());
                                        } else {
                                                // Something went wrong
-                                               loadTemplate('admin_settings_saved', false, getMaskedMessage('MEMBER_WERNIS_WITHDRAW_FAILED', GET_WERNIS_ERROR_MESSAGE()));
+                                               displayMessage('{--MEMBER_WERNIS_WITHDRAW_FAILED--}');
                                        }
                                }
                                break;
@@ -218,15 +198,15 @@ if ((isFormSent()) && (isGetRequestParameterSet('mode'))) {
                        case 'payout': // Payout this exchange -> WDS66
                                if (postRequestParameter('amount') < getConfig('wernis_min_payout')) {
                                        // Not enougth entered!
-                                       loadTemplate('admin_settings_saved', false, getMessage('MEMBER_WERNIS_PAYOUT_AMOUNT_SMALLER_MIN'));
+                                       displayMessage('{--MEMBER_WERNIS_PAYOUT_AMOUNT_SMALLER_MIN--}');
                                } elseif (postRequestParameter('amount') > $points) {
                                        // Not enougth points left!
-                                       loadTemplate('admin_settings_saved', false, sprintf(getMessage('MEMBER_WERNIS_PAYOUT_POINTS_DEPLETED'), bigintval(postRequestParameter('amount')), bigintval($points)));
+                                       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
+                                               // Sub points and ignore return status
                                                subtractPoints('wernis_payout', getMemberId(), postRequestParameter('amount'));
 
                                                // Update WDS66 id
@@ -234,23 +214,23 @@ if ((isFormSent()) && (isGetRequestParameterSet('mode'))) {
                                                        array(bigintval(postRequestParameter('wernis_userid')), getMemberId()), __FILE__, __LINE__);
 
                                                // All done!
-                                               loadTemplate('admin_settings_saved', false, getMessage('MEMBER_WERNIS_PAYOUT_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
-                                               loadTemplate('admin_settings_saved', false, GET_WERNIS_ERROR_MESSAGE());
+                                               displayMessage(GET_WERNIS_ERROR_MESSAGE());
                                        } else {
                                                // Something went wrong
-                                               loadTemplate('admin_settings_saved', false, getMaskedMessage('MEMBER_WERNIS_WITHDRAW_FAILED', GET_WERNIS_ERROR_MESSAGE()));
+                                               displayMessage('{--MEMBER_WERNIS_PAYOUT_FAILED--}');
                                        }
                                }
                                break;
 
                        default: // Invalid mode!
                                logDebugMessage(__FILE__, __LINE__, sprintf("Invalid mode %s detected.", getRequestParameter('mode')));
-                               loadTemplate('admin_settings_saved', false, getMaskedMessage('MEMBER_WERNIS_MODE_INVALID', getRequestParameter('mode')));
+                               displayMessage('{%message,MEMBER_WERNIS_MODE_INVALID=' . getRequestParameter('mode') . '%}');
                                return;
-               }
+               } // END - switch
        }
 } // END - if