Файл: CMS/core/modules/users_present.php
Строк: 154
<?php
if (!defined('CMS')) { die('Access Denied!'); }
if ($is_logged) {
$error = '';
$data = $db->selectRow("SELECT * FROM ?_users WHERE LOWER(`users_login`) = ? LIMIT 1;", cms_tolower($uz));
if (empty($data) || !is_array($data)) {
$inSes->addMessage('Ошибка! Пользователь с данным логином не найден!');
redirect($config['site_url']);
}
if ($data['users_ban'] == 1) {
$inSes->addMessage('Ошибка! Пользователь заблокирован!');
redirect($config['site_url']);
}
if ($config['allow_regkeys'] > 0 && $data['users_confirmreg'] > 0) {
$inSes->addMessage('Ошибка! Пользователя не существует!');
redirect($config['site_url']);
}
if ($data['users_login'] == $log && !is_admin()) {
$inSes->addMessage('Ошибка! Запрещено делать себе подарки!');
gen_red('index', '', RND);
}
$presents = array(
1 => '10 монет',
2 => '25 монет',
3 => '50 монет',
4 => 'Зверушки',
);
$nick = nickname($data['users_login'],1);
if (!empty($id) && !empty($mod) && $mod == 'send_present') {
$prs = $db->selectRow("SELECT * FROM ?_present_files WHERE `id` = ?", $id);
if (!empty($prs) && @file_exists( ROOTPATH . '/images/present/' . $prs['file'] )) {
if (!empty($_POST['submit'])) {
if (!empty($_GET['rnd']) && $_GET['rnd'] == $_SESSION['token']) {
$giftid = !empty($_POST['giftid']) ? num($_POST['giftid']) : 0;
$giftmode = !empty($_POST['giftmode']) ? num($_POST['giftmode']) : 0;
$giftmsg = !empty($_POST['giftmsg']) ? check($_POST['giftmsg']) : '';
$giftmode = ($giftmode > 2) ? 0 : $giftmode;
if (cms_strlen($giftmsg) >= 3 && cms_strlen($giftmsg) < 1000) {
if ($uset['users_money'] >= $prs['price']) {
$is_ignor = (int) $db->selectCell("SELECT `ignore_id` FROM ?_users_ignor_list
WHERE `ignore_user` = ? AND `ignore_name` = ? LIMIT 1;", $data['users_login'], $log);
if ($is_ignor < 1) {
if (is_flood($log)) {
$giftmsg = antimat($giftmsg);
$giftmsg = smiles($giftmsg);
$last_id = (int) $db->query("INSERT INTO ?_present SET `user_from` = ?, `user_to` = ?, `fid` = ?, `file` = ?, `msg` = ?, `mode` = ?, `time` = ?", $log, $data['users_login'], $id, $prs['file'], $giftmsg, $giftmode, SITE_TIME);
$db->query("UPDATE ?_users SET `users_money` = (`users_money` - ?)
WHERE `users_login` = ?;", $prs['price'], $log);
$db->query("UPDATE ?_users SET `users_newprivat` = (`users_newprivat` + 1)
WHERE `users_login` = ? LIMIT 1;", $data['users_login']);
$msg = "Пользователь " . nickname($log) . " сделал Вам подарок!n[gifts=" . $last_id . "]Подробнее >>[/gifts]n";
$db->query("INSERT INTO ?_users_inbox (`inbox_user`, `inbox_author`, `inbox_text`, `inbox_time`)
VALUES (?, ?, ?, ?);", $data['users_login'], $log, $msg, SITE_TIME);
set_users_shop($log, 'Подарок другу ' . $data['users_login'], 'present', $prs['price']);
$inSes->addMessage('Подарок успешно отправлен, ' . $nick . ' будет оповещен о вашем подарке!', 'ok');
gen_red('index', '', RND);
}
else $error = 'Антифлуд! Разрешается отправлять сообщения раз в ' . flood_period() . ' секунд!';
}
else $error = 'Ошибка! Вы внесены в игнор-лист получателя!';
}
else $error = 'Ошибка! На вашем счете недостаточно средств!';
}
else $error = 'Ошибка! Слишком длинное или короткое сообщение!' . cms_strlen($giftmsg);
}
else $error = 'Ошибка! Неверный идентификатор сессии, повторите действие!';
if (!empty($error)) $inSes->addMessage($error, 'error');
}
show_header('Подарок для ' . $nick);
$prs['file'] = str_replace('_small_', '_large_', $prs['file']);
echo '<div class="b"><img src="/images/present/' . $prs['file'] . '" alt="' . $prs['name'] . '" /><br />';
echo 'Стоимость подарка: ' . moneys($prs['price']) . '<br />';
echo 'В наличии: ' . moneys($uset['users_money']) . '<br />';
echo '</div><div class="b"><form method="post" action="' . gen_uri('send_present', $id, 'rnd=' . $_SESSION['token']) . '"><span style="font-size:small;color:darkblue"><b>Тип подарка:</b></span><br/><input type="radio" name="giftmode" value="0" checked="checked" /> Публичный<br /><span style="font-size:small;color:darkgray">Все будут видеть ваш подарок, сообщение и Ник.</span><br /><input type="radio" name="giftmode" value="1" /> Личный<br /><span style="font-size:small;color:darkgray">Все будут видеть ваш подарок, но только получатель сможет видеть ваш Ник и сообщение.</span><br /><input type="radio" name="giftmode" value="2" /> Анонимный<br /><span style="font-size:small;color:darkgray">Все будут видеть ваш подарок. Только получатель увидит ваше сообщение. Никто не увидит ваш Ник.</span><input type="hidden" name="user" value="' . $uz . '" /><input type="hidden" name="giftid" value="' . $id . '" /><textarea name="giftmsg" rows="3" cols="17" style="width:90%">' . request('', 'Лови подарок!') . '</textarea><br /><input type="submit" name="submit" class="btns" value="Отправить" /></form></div><div class="b">' . icon('return.png') . ' <a href="' . gen_uri('present', '', 'user=' . $uz) . '">Выбрать другой</a></div>';
}
else {
$inSes->addMessage('К сожалению, подарок не найден!');
gen_red('present', '', 'user=' . $data['users_login'] . '&' . RND);
}
}
else {
$sort = !empty($_GET['id']) ? num($_GET['id']) : 1;
show_header('Выбор подарка для ' . $nick);
$show = array();
foreach($presents as $key => $val) {
if ($key == $sort) {
$show[] = '<b>' . $val . '</b>';
}
else {
$show[] = '<a href="' . gen_uri('present', $key, 'user=' . $uz . '&' . RND) . '">' . $val . '</a>';
}
}
echo '<div class="b">' . implode(' | ', $show) . '</div>';
$onpage = !empty($config['user_list']) ? num($config['user_list']) : 10;
if ($page > 1) $from = ($page - 1) * $onpage; else $from = 0;
$rows = $db->selectPage($total, "SELECT * FROM ?_present_files WHERE `cid` = ?
ORDER BY `name` ASC LIMIT ?d, ?d", $sort, $from, $onpage);
if ($total > 0) {
foreach($rows as $row) {
if ( @file_exists( ROOTPATH . '/images/present/' . $row['file'] ) ) {
echo '<div class="b" style="min-height:25px;">';
echo '<div class="img"><img src="/images/present/' . $row['file'] . '" alt="" /></div>';
echo '<a href="' . gen_uri('send_present', $row['id'], 'user=' . $data['users_login']) . '">' . $row['name'] . '</a> ';
echo '(' . moneys($row['price']) . ')</div>';
}
}
echo show_pages(gen_uri('present', $sort, 'user=' . $data['users_login'] . '&' . RND));
}
else show_error('К сожалению подарки не найдены!');
}
}
else {
show_header('Подарок');
show_login('Вы не авторизованы, чтобы делать подарки другим пользователям, необходимо');
}
echo '<div class="b">';
echo icon('return.png') . ' <a href="' . gen_users($data['users_login'], 'index', '', RND) . '">Назад</a><br />';
echo '</div>';
?>