<?php
/***************************************************************************
* usercp_money.php
* -------------------
* Разработка и оптимизация под WAP: Гутник Игорь ( чел ).
* 2009 год
***************************************************************************/
if ( !defined('IN_PHPBB') )
{
die('Hacking attempt');
exit;
}
if ( isset($HTTP_POST_VARS['start1']) )
{
$start1 = abs(intval($HTTP_POST_VARS['start1']));
$start = (($start1 - 1) * $board_config['topics_per_page']);
} else {
$start = ( isset($HTTP_GET_VARS['start']) ) ? intval($HTTP_GET_VARS['start']) : 0;
$start = ($start < 0) ? 0 : $start;
}
if (isset($HTTP_GET_VARS['nick']))
{
if ( $userdata['user_points'] < $board_config['smena_nika'] )
{
message_die(GENERAL_MESSAGE, 'На вашем счету недостаточно средств для покупки данного товара.');
}
if ( isset($HTTP_POST_VARS['submit']) && !empty($HTTP_POST_VARS['username']) )
{
include($phpbb_root_path . 'includes/functions_validate.'.$phpEx);
$username = phpbb_clean_username($HTTP_POST_VARS['username']);
$result = validate_username($username);
if ( $result['error'] )
{
message_die(GENERAL_MESSAGE, $result['error_msg']);
}
$sql = "UPDATE " . USERS_TABLE . "
SET username = '" . str_replace("\'", "''", $username) . "'
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
$sql = "UPDATE " . USERS_TABLE . "
SET user_points = user_points - " . $board_config['smena_nika'] . "
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
$ostatok = $userdata['user_points'] - $board_config['smena_nika'];
message_die(GENERAL_MESSAGE, 'Ваш ник успешно изменён.<br/>Со счёта списано '.$board_config['smena_nika'].' монет.<br/>Остаток на вашем счёте '.$ostatok.' монет.');
}
else
{
$page_title = 'Сменить ник';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'shop_action.tpl')
);
$template->assign_vars(array(
'L_SHOP_ACTION' => 'Сменить ник',
'SHOP_ACTION' => 'Введите желаемый ник',
'SHOP_ACTION_DB' => 'username',
'SHOP_ACTION_MAX' => '25',
'SHOP_MONEY' => $board_config['smena_nika'],
'S_SHOP_ACTION' => append_sid("profile.$phpEx?mode=money&nick"))
);
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
}
} elseif (isset($HTTP_GET_VARS['color'])) {
if ( $userdata['user_points'] < $board_config['smena_cveta'] )
{
message_die(GENERAL_MESSAGE, 'На вашем счету недостаточно средств для покупки данного товара.');
}
if ( isset($HTTP_POST_VARS['submit']) && !empty($HTTP_POST_VARS['color']) )
{
$color = trim(htmlspecialchars($HTTP_POST_VARS['color']));
if ( !ereg("^[A-Za-z0-9#]+$", $color) )
{
message_die(GENERAL_MESSAGE, 'Нельзя использовать недопустимые символы.');
}
$sql = "UPDATE " . USERS_TABLE . "
SET user_nic_color = '" . str_replace("\'", "''", $color) . "'
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
$sql = "UPDATE " . USERS_TABLE . "
SET user_points = user_points - " . $board_config['smena_cveta'] . "
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
$ostatok = $userdata['user_points'] - $board_config['smena_cveta'];
message_die(GENERAL_MESSAGE, 'Цвет вашего ника успешно изменён.<br/>Со счёта списано '.$board_config['smena_cveta'].' монет.<br/>Остаток на вашем счёте '.$ostatok.' монет.');
}
else
{
$page_title = 'Цвет ника';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'shop_action.tpl')
);
$template->assign_vars(array(
'L_SHOP_ACTION' => 'Сменить цвет ника',
'SHOP_ACTION' => 'Введите желаемый цвет',
'SHOP_ACTION_DB' => 'color',
'SHOP_ACTION_MAX' => '25',
'SHOP_MONEY' => $board_config['smena_cveta'],
'S_SHOP_ACTION' => append_sid("profile.$phpEx?mode=money&color"))
);
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
}
} elseif (isset($HTTP_GET_VARS['rank'])) {
if ( $userdata['user_points'] < $board_config['smena_zvaniya'] )
{
message_die(GENERAL_MESSAGE, 'На вашем счету недостаточно средств для покупки данного товара.');
}
if ( isset($HTTP_POST_VARS['submit']) )
{
$rank = trim(htmlspecialchars($HTTP_POST_VARS['rank']));
$sql = "UPDATE " . USERS_TABLE . "
SET user_zvanie = '" . str_replace("\'", "''", $rank) . "'
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
$sql = "UPDATE " . USERS_TABLE . "
SET user_points = user_points - " . $board_config['smena_zvaniya'] . "
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
$ostatok = $userdata['user_points'] - $board_config['smena_zvaniya'];
message_die(GENERAL_MESSAGE, 'Личное звание установлено.<br/>Со счёта списано '.$board_config['smena_zvaniya'].' монет.<br/>Остаток на вашем счёте '.$ostatok.' монет.');
}
else
{
$page_title = 'Личное звание';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'shop_action.tpl')
);
$template->assign_vars(array(
'L_SHOP_ACTION' => 'Установить личное звание',
'SHOP_ACTION' => 'Введите желаемое звание',
'SHOP_ACTION_DB' => 'rank',
'SHOP_ACTION_MAX' => '50',
'SHOP_MONEY' => $board_config['smena_zvaniya'],
'S_SHOP_ACTION' => append_sid("profile.$phpEx?mode=money&rank"))
);
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
}
} elseif (isset($HTTP_GET_VARS['acc'])) {
if ( $userdata['user_points'] < $board_config['pokupka_uchetki'] )
{
message_die(GENERAL_MESSAGE, 'На вашем счету недостаточно средств для покупки данного товара.');
}
if ( isset($HTTP_POST_VARS['submit']) && !empty($HTTP_POST_VARS['useracc']) )
{
$useracc = phpbb_clean_username($HTTP_POST_VARS['useracc']);
$nedeli = time() - ($board_config['pokupka_uchetki_nedeli'] * 604800);
$sql = "SELECT *
FROM " . USERS_TABLE . "
WHERE username LIKE '" . str_replace("\'", "''", $useracc) . "' AND user_id <> " . ANONYMOUS . " AND user_level = " . USER . "
AND user_posts <= " . $board_config['pokupka_uchetki_posts'] . " AND user_regdate <= $nedeli";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain search results', '', __LINE__, __FILE__, $sql);
}
if ( $row = $db->sql_fetchrow($result) )
{
$arr = array("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z");
$new_password = $arr[rand(0,61)].$arr[rand(0,61)].$arr[rand(0,61)].$arr[rand(0,61)].$arr[rand(0,61)].$arr[rand(0,61)].$arr[rand(0,61)];
$new_password_md = md5($new_password);
$sql = "UPDATE " . USERS_TABLE . "
SET user_password = '$new_password_md', user_active = 1, user_email = 'sale" . time() . "@account.forum'
WHERE user_id = " . $row['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
} else {
message_die(GENERAL_MESSAGE, 'Приобрести аккаунт '.$useracc.' невозможно. Возможны следующие причины ошибки:<br/>- его регистрационные данные или количество постов не удовлетворяют требованиям покупки аккаунта в нашем магазине<br/>- вы пытаетесь купить учётную запись кого-нибудь из администрации форума<br/>- либо такого пользователя просто не существует (в этом случае, если вам понравился ник '.$useracc.', вы можете <a href="'.append_sid("shop.$phpEx?id=1").'">сменить свой ник</a> на подобный).');
}
$sql = "UPDATE " . USERS_TABLE . "
SET user_points = user_points - " . $board_config['pokupka_uchetki'] . "
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
$ostatok = $userdata['user_points'] - $board_config['pokupka_uchetki'];
message_die(GENERAL_MESSAGE, 'Поздравляем, вы приобрели аккаунт <b>'.$useracc.'</b>.<br/>Его новый пароль '.$new_password.'<br/>С этого момента во избежании недоразумений на нём установлен несуществующий адрес e-mail, смените его на свой.<br/>С вашего счёта списано '.$board_config['pokupka_uchetki'].' монет.<br/>Остаток на счёте '.$ostatok.' монет.');
}
else
{
$page_title = 'Купить аккаунт';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'shop_action.tpl')
);
$template->assign_vars(array(
'L_SHOP_ACTION' => 'Купить аккаунт',
'SHOP_ACTION' => 'Введите ник приобретаемой учётки',
'SHOP_ACTION_DB' => 'useracc',
'SHOP_ACTION_MAX' => '25',
'SHOP_MONEY' => $board_config['pokupka_uchetki'],
'S_SHOP_ACTION' => append_sid("profile.$phpEx?mode=money&acc"))
);
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
}
} elseif (isset($HTTP_GET_VARS['ban'])) {
if ( $userdata['user_points'] < $board_config['razblokirovka_druga'] )
{
message_die(GENERAL_MESSAGE, 'На вашем счету недостаточно средств для покупки данного товара.');
}
if ( isset($HTTP_POST_VARS['submit']) && !empty($HTTP_POST_VARS['userban']) )
{
$userban = phpbb_clean_username($HTTP_POST_VARS['userban']);
$sql = "SELECT *
FROM " . USERS_TABLE . "
WHERE username LIKE '" . str_replace("\'", "''", $userban) . "' AND user_id <> " . ANONYMOUS . "
AND user_id <> " . $userdata['user_id'] . " AND user_level = " . USER . " AND user_warnings > 0";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain users results', '', __LINE__, __FILE__, $sql);
}
if ( $row = $db->sql_fetchrow($result) )
{
$sql = "SELECT id, user_id, expire, modification
FROM " . REPUTATION_TABLE . "
WHERE user_id = " . $row['user_id'] . " AND modification = 4";
if( !($resultat = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not query users', '', __LINE__, __FILE__, $sql);
}
if ( $roww = $db->sql_fetchrow($resultat) )
{
$expire_money = ceil((($roww['expire'] - time()) / 60) / 60) * $board_config['razblokirovka_druga'];
if ( $expire_money > $userdata['user_points'] )
{
message_die(GENERAL_MESSAGE, 'На вашем счету недостаточно средств для разблокировки пользователя '.$userban.'.');
}
db_query('DELETE FROM {REPUTATION_TABLE} WHERE id = %d', $roww['id']);
db_query('DELETE FROM {REPUTATION_TEXT_TABLE} WHERE id = %d', $roww['id']);
db_query('DELETE FROM {BANLIST_TABLE} WHERE ban_userid = %d', $row['user_id']);
db_query('UPDATE {USERS_TABLE} SET user_warnings = user_warnings - 1 WHERE user_id = %d', $row['user_id']);
db_query('UPDATE {USERS_TABLE} SET user_allow_pm = 1 WHERE user_id = %d', $row['user_id']);
} else {
message_die(GENERAL_MESSAGE, 'Вашего друга не забанили, а всего лишь предупредили.');
}
}
else
{
message_die(GENERAL_MESSAGE, 'Вы что-то путаете, этот пользователь незаблокирован, либо его вообще не существует, либо вы пытаетесь разблокировать самого себя.');
}
$sql = "UPDATE " . USERS_TABLE . "
SET user_points = user_points - $expire_money
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
$ostatok = $userdata['user_points'] - $expire_money;
message_die(GENERAL_MESSAGE, 'Пользователь '.$userban.' успешно разблокирован.<br/>С вашего счёта списано '.$expire_money.' монет.<br/>Остаток на счёте '.$ostatok.' монет.');
}
else
{
$page_title = 'Разбанить друга';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'shop_action.tpl')
);
$template->assign_vars(array(
'L_SHOP_ACTION' => 'Разбанить друга',
'SHOP_ACTION' => 'Введите ник заблокированной учётки',
'SHOP_ACTION_DB' => 'userban',
'SHOP_ACTION_MAX' => '25',
'SHOP_MONEY' => 'за каждый час бана ' . $board_config['razblokirovka_druga'],
'S_SHOP_ACTION' => append_sid("profile.$phpEx?mode=money&ban"))
);
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
}
} elseif (isset($HTTP_GET_VARS['icq'])) {
if ( $userdata['user_points'] > 0 )
{
if ( isset($HTTP_GET_VARS['icq']) && !empty($HTTP_GET_VARS['id']) )
{
$uin = abs(intval($HTTP_GET_VARS['id']));
$sql = "SELECT *
FROM ".$table_prefix."shop_icq
WHERE id = $uin";
if( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not query icq', '', __LINE__, __FILE__, $sql);
}
if ( $row = $db->sql_fetchrow($result) )
{
if ( $userdata['user_points'] < $row['icq_cost'] )
{
message_die(GENERAL_MESSAGE, 'На вашем счету недостаточно монет для покупки данного номера');
}
$cost = $row['icq_cost'];
$pass = $row['icq_password'];
$number = $row['icq_number'];
$sql = "DELETE FROM ".$table_prefix."shop_icq
WHERE id = $uin";
if ( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_MESSAGE, 'Не удалось удалить UIN');
}
$sql = "UPDATE " . USERS_TABLE . "
SET user_points = user_points - " . $cost . "
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
$ostatok = $userdata['user_points'] - $cost;
message_die(GENERAL_MESSAGE, 'Номер <b>'.$number.'</b> успешно куплен.<br/>Пароль от номера '.$pass.'<br/>Скопировать<br/><input type="text" value="'.$pass.'" /><br/>Со счёта списано '.$cost.' монет.<br/>Остаток '.$ostatok.' монет.');
} else {
message_die(GENERAL_MESSAGE, 'Такого номера не существует');
}
}
else
{
$page_title = 'ICQ';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'shop_action_icq.tpl')
);
$sql = "SELECT *
FROM ".$table_prefix."shop_icq
ORDER BY id ASC LIMIT $start, " . $board_config['topics_per_page'];
if( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not query users', '', __LINE__, __FILE__, $sql);
}
if ( $row = $db->sql_fetchrow($result) )
{
$i = 0;
do
{
$uin = $row['icq_number'];
$cost = $row['icq_cost'];
$id = $row['id'];
$template->assign_block_vars('memberrow', array(
'UIN' => $uin,
'COST' => $cost,
'U_PAY' => append_sid("profile.$phpEx?mode=money&icq&id=$id"))
);
$i++;
}
while ( $row = $db->sql_fetchrow($result) );
$db->sql_freeresult($result);
} else {
$template->assign_block_vars('no_pay', array() );
}
$sql = "SELECT count(*) AS total
FROM ".$table_prefix."shop_icq";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Error getting total users', '', __LINE__, __FILE__, $sql);
}
if ( $total = $db->sql_fetchrow($result) )
{
$total_members = $total['total'];
$pagination = generate_pagination("profile.$phpEx?mode=money&icq", $total_members, $board_config['topics_per_page'], $start);
}
$db->sql_freeresult($result);
if ( $total_members > $board_config['topics_per_page'] )
{
$template->assign_vars(array(
'PAGINATION' => $pagination)
);
}
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
}
} else {
message_die(GENERAL_MESSAGE, 'На вашем счету недостаточно средств для покупки номера.');
}
} elseif (isset($HTTP_GET_VARS['sites'])) {
if ( !$board_config['sites'] )
{
message_die(GENERAL_MESSAGE, 'Покупка рекламы на этом форуме отключена.');
}
if ( ($userdata['user_points'] > $board_config['verh_pay']) || ($userdata['user_points'] > $board_config['niz_pay']) )
{
$sql = "SELECT count(*) AS total FROM ".$table_prefix."shop_sites WHERE site_order = 0";
$result = $db->sql_query($sql);
$total = $db->sql_fetchrow($result);
$total_verh = $total['total'];
$sql = "SELECT count(*) AS total FROM ".$table_prefix."shop_sites WHERE site_order = 1";
$result = $db->sql_query($sql);
$total = $db->sql_fetchrow($result);
$total_niz = $total['total'];
if ( ($board_config['verh'] == $total_verh) && ($board_config['niz'] == $total_niz) )
{
message_die(GENERAL_MESSAGE, 'Все места заняты');
}
if ( isset($HTTP_POST_VARS['submit']) && !empty($HTTP_POST_VARS['url']) && !empty($HTTP_POST_VARS['desc']) && !empty($HTTP_POST_VARS['time']) )
{
$time = intval($HTTP_POST_VARS['time']);
$url = trim(htmlspecialchars($HTTP_POST_VARS['url']));
$desc = trim(htmlspecialchars($HTTP_POST_VARS['desc']));
$order = ( isset($HTTP_POST_VARS['order']) ) ? ( ($HTTP_POST_VARS['order']) ? 1 : 0 ) : 1;
if ( preg_match('#\?#', $url) && $board_config['ref_url'] )
{
message_die(GENERAL_MESSAGE, 'Ссылка должна быть прямой.');
}
if ( !$order )
{
if ( $board_config['verh'] == $total_verh )
{
message_die(GENERAL_MESSAGE, 'Вверху места заняты');
}
$stoimost = $board_config['verh_pay'] * $time;
if ( $stoimost > $userdata['user_points'] )
{
message_die(GENERAL_MESSAGE, 'У вас недостаточно средств для покупки рекламы наверху на такой срок');
}
$vremya_sek = $time * 604800;
$vremya_okonch = time() + $vremya_sek;
$sql = "INSERT INTO ".$table_prefix."shop_sites (site_url, site_desc, site_time, site_order) VALUES ('" . str_replace("\'", "''", $url) . "', '" . str_replace("\'", "''", $desc) . "', $vremya_okonch, 0)";
if ( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_MESSAGE, 'Не удалось добавить ссылку');
}
$sql = "UPDATE " . USERS_TABLE . "
SET user_points = user_points - " . $stoimost . "
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
$ostatok = $userdata['user_points'] - $stoimost;
message_die(GENERAL_MESSAGE, 'Рекламная ссылка была успешно установлена.<br/>Со счёта списано '.$stoimost.' монет.<br/>Остаток '.$ostatok.' монет.');
} else {
if ( $board_config['niz'] == $total_niz )
{
message_die(GENERAL_MESSAGE, 'Внизу места заняты');
}
$stoimost = $board_config['niz_pay'] * $time;
if ( $stoimost > $userdata['user_points'] )
{
message_die(GENERAL_MESSAGE, 'У вас недостаточно средств для покупки рекламы внизу на такой срок');
}
$vremya_sek = $time * 604800;
$vremya_okonch = time() + $vremya_sek;
$sql = "INSERT INTO ".$table_prefix."shop_sites (site_url, site_desc, site_time, site_order) VALUES ('" . str_replace("\'", "''", $url) . "', '" . str_replace("\'", "''", $desc) . "', $vremya_okonch, 1)";
if ( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_MESSAGE, 'Не удалось добавить ссылку');
}
$sql = "UPDATE " . USERS_TABLE . "
SET user_points = user_points - " . $stoimost . "
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
$ostatok = $userdata['user_points'] - $stoimost;
message_die(GENERAL_MESSAGE, 'Рекламная ссылка была успешно установлена.<br/>Со счёта списано '.$stoimost.' монет.<br/>Остаток '.$ostatok.' монет.');
}
}
else
{
$page_title = 'Купить рекламу';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'shop_action_sites.tpl')
);
$template->assign_vars(array(
'S_SHOP_ACTION' => append_sid("profile.$phpEx?mode=money&sites"))
);
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
}
} else {
message_die(GENERAL_MESSAGE, 'На вашем счету недостаточно средств для покупки рекламы.');
}
} elseif (isset($HTTP_GET_VARS['url'])) {
if ( isset($HTTP_GET_VARS['url']) && !empty($HTTP_GET_VARS['id']) )
{
$uin = abs(intval($HTTP_GET_VARS['id']));
$sql = "SELECT *
FROM ".$table_prefix."shop_url
WHERE id = $uin";
if( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not query icq', '', __LINE__, __FILE__, $sql);
}
if ( $row = $db->sql_fetchrow($result) )
{
$cost = $row['url_cost'];
$url = $row['url'];
if ( ($userdata['time_last_click'] + $board_config['time_click']) < time() )
{
$sql = "UPDATE " . USERS_TABLE . "
SET user_points = user_points + " . $cost . ", time_last_click = '" . time() . "'
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
header('Location: ' . $url);
exit;
} else {
$ost = time() - ($userdata['time_last_click'] + $board_config['time_click']);
message_die(GENERAL_MESSAGE, 'Вы пытаетесь накручивать. Попробуйте нажать на ссылку через '.$ost.' сек.');
}
} else {
message_die(GENERAL_MESSAGE, 'Такой ссылки не существует');
}
}
else
{
$page_title = 'Заработок';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'shop_action_url.tpl')
);
$sql = "SELECT *
FROM ".$table_prefix."shop_url
ORDER BY id ASC LIMIT $start, " . $board_config['topics_per_page'];
if( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not query users', '', __LINE__, __FILE__, $sql);
}
if ( $row = $db->sql_fetchrow($result) )
{
$i = 0;
do
{
$cost = $row['url_cost'];
$nazv = $row['nazvanie'];
$id = $row['id'];
$template->assign_block_vars('memberrow', array(
'NAZVANIE' => $nazv,
'COST' => $cost,
'U_PAY' => append_sid("profile.$phpEx?mode=money&url&id=$id"))
);
$i++;
}
while ( $row = $db->sql_fetchrow($result) );
$db->sql_freeresult($result);
} else {
$template->assign_block_vars('no_pay', array() );
}
$sql = "SELECT count(*) AS total
FROM ".$table_prefix."shop_url";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Error getting total users', '', __LINE__, __FILE__, $sql);
}
if ( $total = $db->sql_fetchrow($result) )
{
$total_members = $total['total'];
$pagination = generate_pagination("profile.$phpEx?mode=money&url", $total_members, $board_config['topics_per_page'], $start);
}
$db->sql_freeresult($result);
if ( $total_members > $board_config['topics_per_page'] )
{
$template->assign_vars(array(
'PAGINATION' => $pagination)
);
}
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
}
} elseif (isset($HTTP_GET_VARS['exch'])) {
if ( !$board_config['pay_money'] )
{
message_die(GENERAL_MESSAGE, 'Система выплат на этом форуме отключена.');
}
if ( isset($HTTP_POST_VARS['submit']) && !empty($HTTP_POST_VARS['exch']) )
{
$userexch = abs(intval($HTTP_POST_VARS['exch']));
$payexch = $userexch * $board_config['kurs_payment'];
$sql = "UPDATE " . USERS_TABLE . "
SET user_money_earned = user_money_earned + $payexch
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
$sql = "UPDATE " . CONFIG_TABLE . "
SET config_value = config_value + $payexch
WHERE config_name = 'money_earned'";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update config table', '', __LINE__, __FILE__, $sql);
}
$sql = "UPDATE " . USERS_TABLE . "
SET user_points = user_points - $userexch
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
$ostatok = $userdata['user_points'] - $userexch;
$ostatok_rub = $userdata['user_money_earned'] + $payexch;
message_die(GENERAL_MESSAGE, 'Обмен успешно совершён.<br/>На ваш рублёвый счёт на форуме перечислено '.$payexch.' руб.<br/>Итого у вас '.$ostatok_rub.' руб.<br/>Со счёта списано '.$userexch.' монет.<br/>Остаток '.$ostatok.' монет.');
}
else
{
$page_title = 'Обмен';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'shop_action.tpl')
);
$template->assign_vars(array(
'L_SHOP_ACTION' => 'Конвертировать в рубли',
'SHOP_ACTION' => 'Введите количество монет, которое вы хотите обменять на рубли (не более '.$userdata['user_points'].')',
'SHOP_ACTION_DB' => 'exch',
'SHOP_ACTION_MAX' => '100',
'SHOP_MONEY' => 'указанное вами количество',
'S_SHOP_ACTION' => append_sid("profile.$phpEx?mode=money&exch"))
);
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
}
} else {
if ( empty($HTTP_GET_VARS[POST_USERS_URL]) || $HTTP_GET_VARS[POST_USERS_URL] == ANONYMOUS )
{
message_die(GENERAL_MESSAGE, $lang['No_user_id_specified']);
}
$user = intval($HTTP_GET_VARS[POST_USERS_URL]);
if ( $user == $userdata['user_id'] )
{
message_die(GENERAL_MESSAGE, 'Нафига тебе самому себе пересылать деньги?');
}
$sql = "SELECT username
FROM " . USERS_TABLE . "
WHERE user_id = '$user'";
if ( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, 'Could not obtain user information for sendpassword', '', __LINE__, __FILE__, $sql);
}
if ( !$row = $db->sql_fetchrow($result) )
{
message_die(GENERAL_MESSAGE, $lang['No_user_id_specified']);
}
$username = $row['username'];
if ( isset($HTTP_POST_VARS['submit']) && !empty($HTTP_POST_VARS['money_send']) )
{
$money = intval($HTTP_POST_VARS['money_send']);
if ( $userdata['user_level'] != ADMIN )
{
$money = abs($money);
}
if ( $money > $userdata['user_points'] && $userdata['user_level'] != ADMIN )
{
message_die(GENERAL_MESSAGE, 'У вас недостаточно средств для перевода такой суммы');
}
$sql = "UPDATE " . USERS_TABLE . "
SET user_points = user_points + $money
WHERE user_id = $user";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
if ( $userdata['user_level'] != ADMIN )
{
$sql = "UPDATE " . USERS_TABLE . "
SET user_points = user_points - $money
WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
}
if ( $userdata['user_level'] == ADMIN )
{
message_die(GENERAL_MESSAGE, 'На счёт пользователя '.$username.' перечислено '.$money.' монет');
} else {
message_die(GENERAL_MESSAGE, 'С вашего счёта списано '.$money.' монет и перечислено на счёт пользователя '.$username);
}
}
else
{
$page_title = 'Передача монет';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'profile_send_money.tpl')
);
if ( isset($HTTP_POST_VARS['submit']) && empty($HTTP_POST_VARS['money_send']) )
{
$template->set_filenames(array(
'reg_header' => 'error_body.tpl')
);
$template->assign_vars(array(
'ERROR_MESSAGE' => 'Вы не ввели количество монет')
);
$template->assign_var_from_handle('ERROR_BOX', 'reg_header');
}
$template->assign_vars(array(
'USERNAME' => $username,
'USER_MONEY' => $userdata['user_points'],
'L_SUBMIT' => $lang['Submit'],
'S_POST_ACTION' => append_sid("profile.$phpEx?mode=money&u=$user"))
);
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
}
}
?>