* -------------------------------------------------------------------- *
* 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 *
************************************************************************/
// 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(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)
- {
- list($POINTS) = SQL_FETCHROW($result_points);
- SQL_FREERESULT($result_points);
- $TPTS += $POINTS;
- }
+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);
+
+ // Add them to total
+ $TPTS += $points;
+ } // END - if
+
+ // 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($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 = "<FONT class=\"member_failed\">".$status."</FONT>";
+ $content['status'] = getMessage('PAYOUT_MEMBER_STATUS_'.strtoupper($content['status']).'');
+ $content['status'] = "<div class=\"member_failed\">".$content['status']."</div>";
// 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 = "<IMG src=\"".$banner."\" alt=\"".$alt."\" title=\"".$alt."\" border=\"0\">";
- }
- else
- {
+ $content['target_account'] = "<img src=\"".$content['banner']."\" alt=\"".$content['alt']."\" title=\"".$content['alt']."\" border=\"0\" />";
+ } else {
// Textlink
- $account = $alt;
+ $content['target_account'] = $content['alt'];
}
- $bank = "<A href=\"".DEREFERER($url)."\" target=\"_blank\">".CLICK_HERE."</A>";
- }
- else
- {
+ $content['target_bank'] = "<a href=\"".DEREFERER($content['url'])."\" target=\"_blank\">{--CLICK_HERE--}</a>";
+ } 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);
+ $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
- LOAD_TEMPLATE("member_payout");
+ LOAD_TEMPLATE('member_payout');
}
// Free memory
// 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")
- {
- $adm_tpl = "admin_payout_request_banner";
+ $msg_mem = LOAD_EMAIL_TEMPLATE('member_payout_request_banner', REQUEST_POST_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', REQUEST_POST_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")
- {
- $admin_tpl = "admin_payout_request";
- }
+ $msg_mem = LOAD_EMAIL_TEMPLATE('member_payout_request', REQUEST_POST_ARRAY(), getUserId());
+ $msg_adm = LOAD_EMAIL_TEMPLATE('admin_payout_request', REQUEST_POST_ARRAY(), getUserId());
+ $admin_tpl = '';
+
+ // @TODO Rewrite this to a filter
+ if (GET_EXT_VERSION('admins') >= '0.4.1') {
+ $admin_tpl = 'admin_payout_request';
+ } // END - if
}
// 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, REQUEST_POST_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'));
}
}
+
//
?>