X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=inc%2Fmodules%2Fmember%2Fwhat-payout.php;h=f9b5405b394e2444738264e426c9de7c193665c7;hb=1e2a4228e071a67a2d79e970a843e3e30476cfb8;hp=3ed797f332370ec48011270ee23c4c9b18c3cdfe;hpb=307a4e11763f0914e73dc756b219356e1c29ab25;p=mailer.git diff --git a/inc/modules/member/what-payout.php b/inc/modules/member/what-payout.php index 3ed797f332..f9b5405b39 100644 --- a/inc/modules/member/what-payout.php +++ b/inc/modules/member/what-payout.php @@ -10,7 +10,12 @@ * -------------------------------------------------------------------- * * Kurzbeschreibung : Auszahlungsanfragen * * -------------------------------------------------------------------- * - * * + * $Revision:: $ * + * $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 - 2008 by Roland Haeder * * For more information visit: http://www.mxchange.org * @@ -32,120 +37,115 @@ ************************************************************************/ // Some security stuff... -if (ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) { +if (!defined('__SECURITY')) { // Don't call this directly! - $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php"; + $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), '/inc') + 4) . '/security.php'; require($INC); -} elseif (!IS_LOGGED_IN()) { +} elseif (!IS_MEMBER()) { // Not logged in - LOAD_URL("modules.php?module=index"); -} elseif ((!EXT_IS_ACTIVE("payout")) && (!IS_ADMIN())) { - // Extension "payout" is not active - ADD_FATAL(EXTENSION_PROBLEM_EXT_INACTIVE, "payout"); + redirectToUrl('modules.php?module=index'); +} elseif ((!EXT_IS_ACTIVE('payout')) && (!IS_ADMIN())) { + addFatalMessage(__FILE__, __LINE__, generateExtensionInactiveNotInstalledMessage('payout')); return; } // Add description as navigation point -ADD_DESCR("member", basename(__FILE__)); - -$result_depths = SQL_QUERY("SELECT level, percents FROM "._MYSQL_PREFIX."_refdepths ORDER BY level", __FILE__, __LINE__); -$TPTS = "0"; -while (list($lvl, $per) = SQL_FETCHROW($result_depths)) -{ - // Load referral points - $result_points = SQL_QUERY_ESC("SELECT points FROM "._MYSQL_PREFIX."_user_points WHERE userid=%d AND ref_depth=%d LIMIT 1", - array($GLOBALS['userid'], bigintval($lvl)), __FILE__, __LINE__); - if (SQL_NUMROWS($result_points) == 1) - { +ADD_DESCR('member', __FILE__); + +$result_depths = SQL_QUERY("SELECT level, percents FROM `{!_MYSQL_PREFIX!}_refdepths` ORDER BY level", __FILE__, __LINE__); +$TPTS = 0; +while ($content = SQL_FETCHARRAY($result_depths)) { + // Load referal points + $result_points = SQL_QUERY_ESC("SELECT points FROM `{!_MYSQL_PREFIX_user_points!}` WHERE userid=%s AND ref_depth=%d LIMIT 1", + array(getUserId(), bigintval($content['level'])), __FILE__, __LINE__); + + // Entry found? + if (SQL_NUMROWS($result_points) == 1) { + // Load points list($points) = SQL_FETCHROW($result_points); - SQL_FREERESULT($result_points); + + // Add them to total $TPTS += $points; } + + // Free result + SQL_FREERESULT($result_points); } // Free memory SQL_FREERESULT($result_depths); -$result = SQL_QUERY_ESC("SELECT used_points FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d LIMIT 1", - array($GLOBALS['userid']), __FILE__, __LINE__); -list($USED) = SQL_FETCHROW($result); -SQL_FREERESULT($result); +// Get used points +$USED = GET_TOTAL_DATA(getUserId(), "user_data", "used_points"); // Translate point into comma -$TPTS = TRANSLATE_COMMA($TPTS - $USED); +$TPTS = translateComma($TPTS - $USED); // Sanity check... if (empty($TPTS)) $TPTS = "0.00000"; -if (empty($_GET['payout'])) -{ +if (!REQUEST_ISSET_GET(('payout'))) { // Load payout types $result = SQL_QUERY_ESC("SELECT id, type, rate, min_points, allow_url -FROM "._MYSQL_PREFIX."_payout_types -WHERE %d >= min_points -ORDER BY type", array(str_replace(",", ".", $TPTS)), __FILE__, __LINE__); - if (SQL_NUMROWS($result) > 0) - { +FROM `{!_MYSQL_PREFIX!}_payout_types` +WHERE %s >= min_points +ORDER BY type ASC", + array(convertCommaToDot($TPTS)), __FILE__, __LINE__); + if (SQL_NUMROWS($result) > 0) { // Free memory SQL_FREERESULT($result); // Check for his payouts - $result_payouts = SQL_QUERY_ESC("SELECT DISTINCT p.id, p.payout_total, p.target_account, p.target_bank, t.type, p.payout_timestamp, p.status, t.allow_url AS allow, p.target_url AS url, p.link_text AS alt, p.banner_url AS bannerm -FROM "._MYSQL_PREFIX."_user_payouts AS p -LEFT JOIN "._MYSQL_PREFIX."_payout_types AS t + $result_payouts = SQL_QUERY_ESC("SELECT DISTINCT p.id, p.payout_total, p.target_account, p.target_bank, t.type, p.payout_timestamp, p.status, t.allow_url AS allow, p.target_url AS url, p.link_text AS alt, p.banner_url AS banner +FROM `{!_MYSQL_PREFIX!}_user_payouts` AS p +LEFT JOIN `{!_MYSQL_PREFIX!}_payout_types` AS t ON p.payout_id = t.id -WHERE p.userid = %d +WHERE p.userid = %s ORDER BY p.payout_timestamp DESC", - array($GLOBALS['userid']), __FILE__, __LINE__); - if (SQL_NUMROWS($result_payouts) > 0) - { + array(getUserId()), __FILE__, __LINE__); + if (SQL_NUMROWS($result_payouts) > 0) { // List all his requests - $SW = 2; $OUT = ""; - while (list($pid, $total, $account, $bank, $type, $tstamp, $status, $allow, $url, $alt, $banner) = SQL_FETCHROW($result_payouts)) - { + $OUT = ''; $SW = 2; + while ($content = SQL_FETCHARRAY($result_payouts)) { // Translate status - $evl = "\$status = PAYOUT_MEMBER_STATUS_".strtoupper($status).";"; - eval($evl); - $status = "".$status.""; + $content['status'] = getMessage('PAYOUT_MEMBER_STATUS_'.strtoupper($content['status']).''); + $content['status'] = "
".$content['status']."
"; // Nothing entered must be secured in member/what-payputs.php ! - if ($allow == "Y") - { + if ($content['allow'] == 'Y') { // Banner/Textlink views/clicks request - if (!empty($banner)) - { + if (!empty($content['banner'])) { // Banner - $account = "\"".$alt."\""; - } - else - { + $content['target_account'] = "\"".$content['alt']."\""; + } else { // Textlink - $account = $alt; + $content['target_account'] = $content['alt']; } - $bank = "".CLICK_HERE.""; - } - else - { + $content['target_bank'] = "{--CLICK_HERE--}"; + } else { // e-currency payout request - if (empty($account)) $account = "---"; - if (empty($bank)) $bank = "---"; + if (empty($content['target_account'])) $content['target_account'] = '---'; + if (empty($content['target_bank'])) $content['target_bank'] = '---'; } // Prepare data for the template + // @TODO Rewritings: acc->target_account,bank->target_bank in templates $content = array( 'sw' => $SW, - 'acc' => $account, - 'points' => TRANSLATE_COMMA($total)." ".COMPILE_CODE($type), - 'bank' => $bank, - 'stamp' => MAKE_DATETIME($tstamp, "2"), - 'status' => $status + 'acc' => $content['target_account'], + 'points' => translateComma($content['payout_total'])." ".COMPILE_CODE($content['type']), + 'bank' => $content['target_bank'], + 'stamp' => generateDateTime($content['payout_timestamp'], '2'), + 'status' => $content['status'] ); + // Load row template and switch colors $OUT .= LOAD_TEMPLATE("member_payout_row", true, $content); $SW = 3 - $SW; } // Remember rows in constant + // @TODO Rewrite this constant define('__PAYOUT_ROWS', $OUT); // Load template @@ -158,151 +158,128 @@ ORDER BY p.payout_timestamp DESC", // Output payout list PAYOUT_OUTPUT_PAYOUT_LIST($TPTS); } -} - else -{ +} else { // Chedk if he can get paid by selected type - $result = SQL_QUERY_ESC("SELECT type, rate, min_points, allow_url FROM "._MYSQL_PREFIX."_payout_types WHERE id=%d LIMIT 1", - array(bigintval($_GET['payout'])), __FILE__, __LINE__); + $result = SQL_QUERY_ESC("SELECT type, rate, min_points, allow_url AS allow FROM `{!_MYSQL_PREFIX!}_payout_types` WHERE `id`=%s LIMIT 1", + array(bigintval(REQUEST_GET('payout'))), __FILE__, __LINE__); - if (SQL_NUMROWS($result) == 1) - { - // ID is valid - list($type, $rate, $min, $allow) = SQL_FETCHROW($result); + if (SQL_NUMROWS($result) == 1) { + // ID is valid so load the data + $content = SQL_FETCHARRAY($result); SQL_FREERESULT($result); // Calculate maximum value - $max = round($TPTS * $rate - 0.5); + $max = round($TPTS * $content['rate'] - 0.5); // Calulcate points from submitted amount $PAYOUT = 0; - if (!empty($_POST['payout'])) - { - $PAYOUT = bigintval($_POST['payout']) / $rate; - $PAY_MAX = $max / $rate; + if (REQUEST_ISSET_POST(('payout'))) { + $PAYOUT = bigintval(REQUEST_POST('payout')) / $content['rate']; + $PAY_MAX = $max / $content['rate']; } // Move variables into constants for templates + // @TODO Rewrite these constants define('PAYOUT_MAX_VALUE' , $max); - define('PAYOUT_TYPE_VALUE', COMPILE_CODE($type)); + define('PAYOUT_TYPE_VALUE', COMPILE_CODE($content['type'])); - if (str_replace(",", ".", $TPTS) >= $min) - { + if (convertCommaToDot($TPTS) >= $content['min_points']) { // Ok, he can get be paid - if ((isset($_POST['ok'])) && ($PAYOUT <= $PAY_MAX) && ($PAYOUT >= $min)) - { + if ((isFormSent()) && ($PAYOUT <= $PAY_MAX) && ($PAYOUT >= $content['min_points'])) { // Calculate exact value + // @TODO Rewrite this constant define('PAYOUT_POINTS_VALUE', $PAYOUT); // Subtract points from member's account - $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET used_points=used_points+%s WHERE userid=%d LIMIT 1", - array($PAYOUT, $GLOBALS['userid']), __FILE__, __LINE__); - - // Update mediadata as well - if (GET_EXT_VERSION("mediadata") >= "0.0.4") - { - // Update database - MEDIA_UPDATE_ENTRY(array("total_points"), "sub", $PAYOUT); - } + SUB_POINTS('payout', getUserId(), $PAYOUT); // Add entry to his tranfer history - if ($allow == "Y") - { + if ($content['allow'] == 'Y') { // Banner/textlink ordered - $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_user_payouts (userid, payout_total, payout_id, payout_timestamp, status, target_url, link_text, banner_url) -VALUES (%d, %d, %d, UNIX_TIMESTAMP(), 'NEW', '%s', '%s', '%s')", - array( - $GLOBALS['userid'], - bigintval($_POST['payout']), - bigintval($_GET['payout']), - $_POST['turl'], - $_POST['alt'], - $_POST['banner'] -), __FILE__, __LINE__); + SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_user_payouts` (userid, payout_total, payout_id, payout_timestamp, status, target_url, link_text, banner_url) +VALUES (%s,%s,%s, UNIX_TIMESTAMP(), 'NEW','%s','%s','%s')", + array( + getUserId(), + bigintval(REQUEST_POST('payout')), + bigintval(REQUEST_GET('payout')), + REQUEST_POST('turl'), + REQUEST_POST('alt'), + REQUEST_POST('banner') + ), __FILE__, __LINE__); // Load templates - $msg_mem = LOAD_EMAIL_TEMPLATE("member_payout_request_banner", "", $GLOBALS['userid']); - if (GET_EXT_VERSION("admins") >= "0.4.1") - { + $msg_mem = LOAD_EMAIL_TEMPLATE("member_payout_request_banner", array(), getUserId()); + if (GET_EXT_VERSION('admins') >= '0.4.1') { $adm_tpl = "admin_payout_request_banner"; + } else { + $msg_adm = LOAD_EMAIL_TEMPLATE("admin_payout_request_banner", array(), getUserId()); } - else - { - $msg_adm = addslashes(LOAD_EMAIL_TEMPLATE("admin_payout_request_banner", "", $GLOBALS['userid'])); - } - } - else - { + } else { // e-currency payout requested - $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_user_payouts (userid, payout_total, target_account, target_bank, payout_id, payout_timestamp, status, password) -VALUES (%d, %d, %d, '%s', %d, UNIX_TIMESTAMP(), 'NEW', '%s')", - array( - $GLOBALS['userid'], - bigintval($_POST['payout']), - bigintval($_POST['account']), - $_POST['bank'], - bigintval($_GET['payout']), - $_POST['pass'] -), __FILE__, __LINE__); + SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_user_payouts` (userid, payout_total, target_account, target_bank, payout_id, payout_timestamp, status, password) +VALUES (%s,%s,%s,'%s',%s, UNIX_TIMESTAMP(), 'NEW','%s')", + array( + getUserId(), + bigintval(REQUEST_POST('payout')), + bigintval(REQUEST_POST('account')), + REQUEST_POST('bank'), + bigintval(REQUEST_GET('payout')), + REQUEST_POST('pass') + ), __FILE__, __LINE__); // Load templates - $msg_mem = LOAD_EMAIL_TEMPLATE("member_payout_request", "", $GLOBALS['userid']); - $msg_adm = addslashes(LOAD_EMAIL_TEMPLATE("admin_payout_request", "", $GLOBALS['userid'])); - $admin_tpl = ""; - if (GET_EXT_VERSION("admins") >= "0.4.1") - { + $msg_mem = LOAD_EMAIL_TEMPLATE("member_payout_request", array(), getUserId()); + $msg_adm = LOAD_EMAIL_TEMPLATE("admin_payout_request", array(), getUserId()); + $admin_tpl = ''; + + // @TODO Rewrite this to a filter + if (GET_EXT_VERSION('admins') >= '0.4.1') { $admin_tpl = "admin_payout_request"; } } // Generate task - $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_task_system (assigned_admin, status, task_type, subject, text, task_created, userid) -VALUES (0, 'NEW', 'PAYOUT_REQUEST', '[payout:] ".PAYOUT_REQUEST_ADMIN."', '%s', UNIX_TIMESTAMP(), %d)", - array( - $msg_adm, - $GLOBALS['userid'] -), __FILE__, __LINE__); + SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_task_system` (assigned_admin, status, task_type, subject, text, task_created, userid) +VALUES (0, 'NEW','PAYOUT_REQUEST','[payout:] {--PAYOUT_REQUEST_ADMIN--}','%s', UNIX_TIMESTAMP(), %s)", + array( + $msg_adm, + getUserId() + ), __FILE__, __LINE__); // Send out mails - SEND_EMAIL($GLOBALS['userid'], PAYOUT_REQUEST_MEMBER, $msg_mem); + sendEmail(getUserId(), getMessage('PAYOUT_REQUEST_MEMBER'), $msg_mem); // To admin(s) - if (GET_EXT_VERSION("admins") >= "0.4.1") - { - // Use new method - SEND_ADMIN_EMAILS_PRO(PAYOUT_REQUEST_ADMIN, $admin_tpl, "", $GLOBALS['userid']); - } - else - { - // Use old method - SEND_ADMIN_EMAILS(PAYOUT_REQUEST_ADMIN, $msg_adm); - } + sendAdminNotification(getMessage('PAYOUT_REQUEST_ADMIN'), $admin_tpl, array(), getUserId()); // Load template and output it - LOAD_TEMPLATE("admin_settings_saved", false, PAYOUT_REQUEST_SENT); - } - elseif ($allow == "Y") - { + LOAD_TEMPLATE('admin_settings_saved', false, getMessage('PAYOUT_REQUEST_SENT')); + } elseif ($content['allow'] == 'Y') { + // Prepare content + $content = array( + 'payout' => bigintval(REQUEST_GET('payout')) + ); + // Generate banner order form - LOAD_TEMPLATE("member_payout_form_banner"); - } - else - { + LOAD_TEMPLATE("member_payout_form_banner", false, $content); + } else { + // Prepare content + $content = array( + 'payout' => bigintval(REQUEST_GET('payout')) + ); + // Generate normal form - LOAD_TEMPLATE("member_payout_form"); + LOAD_TEMPLATE("member_payout_form", false, $content); } - } - else - { + } else { // Not enougth points - LOAD_TEMPLATE("admin_settings_saved", false, PAYOUT_POINTS_NOT_ENOUGTH); + LOAD_TEMPLATE('admin_settings_saved', false, getMessage('PAYOUT_POINTS_NOT_ENOUGTH')); } - } - else - { + } else { // ID is invalid - LOAD_TEMPLATE("admin_settings_saved", false, PAYOUT_ID_INVALID); + LOAD_TEMPLATE('admin_settings_saved', false, getMessage('PAYOUT_ID_INVALID')); } } + // ?>