0)) {
// Add new payout type
$result = SQL_QUERY_ESC("SELECT `id` FROM `{!_MYSQL_PREFIX!}_payout_types` WHERE type='%s' LIMIT 1",
array(REQUEST_POST('title')), __FILE__, __LINE__);
if (SQL_NUMROWS($result) == 0) {
// Add now
SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_payout_types`
(type, rate, min_points, from_account, from_pass, engine_url, engine_ret_ok, engine_ret_failed, pass_enc, allow_url)
VALUES ('%s', %d, %d,'%s','%s','%s','%s','%s','%s','%s')",
array(
REQUEST_POST('title'),
bigintval(REQUEST_POST('rate')),
bigintval(REQUEST_POST('mpoi')),
REQUEST_POST('yacc'),
REQUEST_POST('ypass'),
REQUEST_POST('yurl'),
REQUEST_POST('yrdone'),
REQUEST_POST('yrfailed'),
REQUEST_POST('ytrans'),
REQUEST_POST('allow_url'),
), __FILE__, __LINE__);
// Get message
$message = getMessage('ADMIN_PAYOUT_TYPE_ADDED');
} else {
// Free memory
SQL_FREERESULT($result);
// Does already exist
$message = "
{--ADMIN_PAYOUT_TYPE_ALREADY--}
";
}
}
// Payout requests by your members
$result_mem = SQL_QUERY("SELECT `id` FROM `{!_MYSQL_PREFIX!}_user_payouts` WHERE `status`='NEW' ORDER BY payout_timestamp DESC", __FILE__, __LINE__);
$display = true;
if ((REQUEST_ISSET_POST('edit')) && (countPostSelection() > 0)) {
// Edit payout types
if ((REQUEST_ISSET_GET('ok')) && (REQUEST_GET('ok') == 'ok')) {
// Init SQLs
INIT_SQLS();
// Edit entries
foreach (REQUEST_POST('sel') as $id => $sel) {
// Secure ID
$id = bigintval($id);
// Edit only if something is entered
if ((REQUEST_ISSET_POST('title', $id)) && (REQUEST_POST('rate', $id) > 0)) {
// Update entry
ADD_SQL(SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_payout_types` SET
type='%s',
rate=%s,
min_points=%s,
allow_url='%s'
WHERE `id`='".$id."' LIMIT 1",
array(
REQUEST_POST('title', $id),
convertCommaToDot(REQUEST_POST('rate', $id)),
convertCommaToDot(REQUEST_POST('mpoi' , $id)),
REQUEST_POST('allow', $id),
),__FILE__, __LINE__, false));
}
}
// Run all SQLs
runFilterChain('run_sqls');
// Get message
$message = getMessage('ADMIN_PAYOUT_ENTRIES_CHANGED');
} else {
$display = false; //Suppress any other outputs
$OUT = ''; $SW = 2;
foreach (REQUEST_POST('sel') as $id => $sel) {
// Load data
$result = SQL_QUERY_ESC("SELECT type, rate, min_points, allow_url FROM `{!_MYSQL_PREFIX!}_payout_types` WHERE `id`=%s LIMIT 1",
array(bigintval($id)), __FILE__, __LINE__);
list($title, $rate, $mpoi, $allow) = SQL_FETCHROW($result);
SQL_FREERESULT($result);
// Prepare data for the row template
$content = array(
'sw' => $SW,
'id' => $id,
'title' => COMPILE_CODE($title),
'rate' => translateComma($rate),
'mpoi' => translateComma($mpoi),
'allow' => ADD_SELECTION('yn', $allow, "allow[".$id."]"),
);
// Load row template and switch color
$OUT .= LOAD_TEMPLATE('admin_config_payouts_edit_row', true, $content);
$SW = 3 - $SW;
}
// @TODO Rewrite this constant
define('__PAYOUT_ROWS', $OUT);
// Load main template
LOAD_TEMPLATE('admin_config_payouts_edit');
}
} elseif ((REQUEST_ISSET_POST('del')) && (countPostSelection() > 0)) {
// Delete payout types
if ((REQUEST_ISSET_GET('ok')) && (REQUEST_GET('ok') == 'ok')) {
// Init SQLs
INIT_SQLS();
// Delete entries
foreach (REQUEST_POST('sel') as $id => $sel) {
ADD_SQL(SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_payout_types` WHERE `id`=%s LIMIT 1",
array(bigintval($id)), __FILE__, __LINE__, false));
} // END - foreach
// Run all SQLs
runFilterChain('run_sqls');
// Get message
$message = getMessage('ADMIN_PAYOUT_ENTRIES_DELETED');
} else {
$display = false; //Suppress any other outputs
$OUT = ''; $SW = 2;
foreach (REQUEST_POST('sel') as $id => $sel) {
// Secure ID number
$id = bigintval($id);
// Load data
$result = SQL_QUERY_ESC("SELECT type, rate, min_points FROM `{!_MYSQL_PREFIX!}_payout_types` WHERE `id`=%s LIMIT 1",
array($id), __FILE__, __LINE__);
list($title, $rate, $mpoi) = SQL_FETCHROW($result);
SQL_FREERESULT($result);
// Prepare data for the row template
$content = array(
'sw' => $SW,
'id' => $id,
'title' => COMPILE_CODE($title),
'rate' => translateComma($rate),
'mpoi' => translateComma($mpoi),
);
// Load row template and switch color
$OUT .= LOAD_TEMPLATE('admin_config_payouts_del_row', true, $content);
$SW = 3 - $SW;
}
define('__PAYOUT_ROWS', $OUT);
// Load main template
LOAD_TEMPLATE('admin_config_payouts_del');
}
}
if (!empty($message)) {
// Output message
LOAD_TEMPLATE('admin_settings_saved', false, $message);
} // END - if
// Payout types
$result_type = SQL_QUERY("SELECT
`id`, `type`, `rate`, `min_points`, `from_account`
FROM
`{!_MYSQL_PREFIX!}_payout_types`
ORDER BY
`type` ASC", __FILE__, __LINE__);
if ((SQL_NUMROWS($result_type) > 0) && ($display)) {
// List all payout types
$OUT = ''; $SW = 2;
while ($content = SQL_FETCHARRAY($result_type)) {
// Prepare data for the row template
$content = array(
'sw' => $SW,
'id' => $content['id'],
'from' => COMPILE_CODE($content['from_account']),
'type' => COMPILE_CODE($content['type']),
'rate' => translateComma($content['rate']),
'mpoi' => translateComma($content['min_points']),
);
// Load row template and switch color
$OUT .= LOAD_TEMPLATE('admin_config_payouts_row', true, $content);
$SW = 3 - $SW;
}
// Free memory
SQL_FREERESULT($result_type);
// @TODO Rewrite this constant
define('__PAYOUT_ROWS', $OUT);
// Load main template
LOAD_TEMPLATE('admin_config_payouts');
}
// Does your members request payouts?
if ((SQL_NUMROWS($result_mem) > 0) && ($display)) {
// Members has requested payouts
LOAD_TEMPLATE('admin_settings_saved', false, "{--ADMIN_PAYOUT_LIST_REQUESTS--}");
} elseif ($display) {
// No member requests so far
LOAD_TEMPLATE('admin_settings_saved', false, getMessage('ADMIN_PAYOUT_NO_MEMBER_REQUESTS'));
}
// Free result
SQL_FREERESULT($result_mem);
// Add new paypout type
if ($display === true) LOAD_TEMPLATE('admin_payout_add_new');
//
?>