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 (getConfig('wernis_withdraw_active') == 'Y') {
// Add link
$content['withdraw_link'] = '';
} // 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');
// 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
loadTemplate('admin_settings_saved', false, sprintf(
getMessage('MEMBER_WERNIS_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'] = 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');
// Prepare data for the template
$content['points'] = translateComma($points);
$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')));
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
loadTemplate('admin_settings_saved', false, '{--MEMBER_WERNIS_EMPTY_USERNAME--}');
} elseif (!isPostRequestParameterSet(('wds66_password'))) {
// Nothing entered in WDS66 password
loadTemplate('admin_settings_saved', false, '{--MEMBER_WERNIS_EMPTY_PASSWORD--}');
} elseif (!isPostRequestParameterSet(('amount'))) {
// Nothing entered in amount
loadTemplate('admin_settings_saved', false, '{--MEMBER_WERNIS_EMPTY_AMOUNT--}');
} elseif (postRequestParameter('wernis_userid') != bigintval(postRequestParameter('wernis_userid'))) {
// Only numbers in account id!
loadTemplate('admin_settings_saved', false, '{--MEMBER_WERNIS_INVALID_USERNAME');
} elseif (postRequestParameter('amount') != bigintval(postRequestParameter('amount'))) {
// Only numbers in amount!
loadTemplate('admin_settings_saved', false, '{--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, '{--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!
loadTemplate('admin_settings_saved', false, '{--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());
} else {
// Something went wrong
loadTemplate('admin_settings_saved', false, getMaskedMessage('MEMBER_WERNIS_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, '{--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)));
} 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, '{--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());
} else {
// Something went wrong
loadTemplate('admin_settings_saved', false, getMaskedMessage('MEMBER_WERNIS_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('MEMBER_WERNIS_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]
?>