Размер файла: 6.34Kb
<?php
// проверяем корректность запроса
if (!isset($user) && mysql_result(mysql_query("SELECT COUNT(*) FROM `users` WHERE `id` = '". num($_GET['user_id']) ."' LIMIT 1"), 0) == 0)
{
# Перенаправляем на главную
header('Location: /');
}
if (isset($_GET['vote']) && isset($user) && mysql_result(mysql_query("SELECT COUNT(*) FROM `users` WHERE `id` = '". num($_GET['user_id']) ."' LIMIT 1"), 0) != 0 && ((mysql_result(mysql_query("SELECT COUNT(*) FROM `user_rating` WHERE `user_id` = '". num($_GET['user_id']) ."' AND `rate_id` = '$user[id]'"), 0) != 0) || mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_p` WHERE `user_id` = '$user[id]'"), 0) < 100))
{
# Перенаправляем на главную
header('Location: /');
}
# Заголовок модуля
$system['page_title'] = 'Рейтинг пользователя';
# Шапка модуля
require_once(HOME .'/incfiles/header.php');
# Массив владельца странички
if (isset($_GET['user_id']))
{
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `users` WHERE `id` = '". num($_GET['user_id']) ."' LIMIT 1"), 0) == 1)
{
$ank = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `id` = '". num($_GET['user_id']) ."' LIMIT 1"));
}
else
{
$ank = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `id` = '$user[id]' LIMIT 1"));
}
}
else
{
$ank = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `id` = '$user[id]' LIMIT 1"));
}
// голосуем
if (isset($_POST['type']) && isset($_POST['text']) && isset($_GET['vote']) && isset($user) && $user['id'] != $ank['id'] && mysql_result(mysql_query("SELECT COUNT(*) FROM `user_rating` WHERE `user_id` = '$ank[id]' AND `rate_id` = '$user[id]'"), 0) == 0 && mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_p` WHERE `user_id` = '$user[id]'"), 0) >= 100) {
$type = num($_POST['type']);
if (empty($type)) $err .= 'Не выбран тип голоса<br />';
if ($type != '1' && $type != '2') $err .= 'Неверный тип голоса<br />';
# Название
$text = txt($_POST['text']);
# Проверка ввода названия
if (empty($text)) $err .= 'Не введен комментарий<br />';
# Проверка длины логина
if (!empty($text) && (strlen_rus($text) < 3 || strlen_rus($text) > 3000)) $err .= 'Неверная длина комментария. Допустимо от 3 до 3000 символов<br />';
if (!isset($err)) {
mysql_query("INSERT INTO `user_rating` SET `user_id` = '$ank[id]', `rate_id` = '$user[id]', `text` = '". input($text) ."', `time` = '". time() ."', `type` = '$type'");
echo '<div class="title">Голосование</div>
<div class="menu">
Ваш голос успешно принят.
</div>';
echo '<div class="block">
» <a href="/user/user_rating.php?user_id='. $ank['id'] .'">Просмотр голосов</a><br />
» <a href="/user/user.php?user_id='. $ank['id'] .'">На личную страницу</a><br />
» <a href="/">На главную</a>
</div>';
# Ноги модуля
require_once(HOME .'/incfiles/footer.php');
}
}
error($err);
// голосуем
if (isset($_GET['vote']) && isset($user) && $user['id'] != $ank['id'] && mysql_result(mysql_query("SELECT COUNT(*) FROM `user_rating` WHERE `user_id` = '$ank[id]' AND `rate_id` = '$user[id]'"), 0) == 0 && mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_p` WHERE `user_id` = '$user[id]'"), 0) >= 100) {
echo '<div class="title">Голосование</div>
<form method="post" action="/user/user_rating.php?user_id='. $ank['id'] .'&vote">
<div class="menu">
Тип голоса:<br />
<select name="type" size="1">
<option value="1">Положительный</option>
<option value="2">Отрицательный</option>
</select><br />
Комментарий: (обязателен)<br />
<textarea name="text" rows="4" cols="20">'. txt($_POST['text']) .'</textarea><br />
<input type="submit" value="Отправить" />
</div>
</form>';
echo '<div class="block">
» <a href="/user/user_rating.php?user_id='. $ank['id'] .'">Просмотр голосов</a><br />
» <a href="/user/user.php?user_id='. $ank['id'] .'">На личную страницу</a><br />
» <a href="/">На главную</a>
</div>';
# Ноги модуля
require_once(HOME .'/incfiles/footer.php');
}
echo '<div class="title">Голоса пользователя: '. $ank['nick'] .'</div>';
if (isset($user) && $user['id'] != $ank['id'] && mysql_result(mysql_query("SELECT COUNT(*) FROM `user_rating` WHERE `user_id` = '$ank[id]' AND `rate_id` = '$user[id]'"), 0) == 0 && mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_p` WHERE `user_id` = '$user[id]'"), 0) >= 100) {
echo '<div class="menu">'. (isset($user) && $settings['img_site'] == 2?NULL:'<img src="/design/icons/rating/star.png" alt="" /> ') .'<a href="/user/user_rating.php?user_id='. $ank['id'] .'&vote">Проголосовать</a></div>';
}
# Кол-во пользователей
$k_rate = mysql_result(mysql_query("SELECT COUNT(*) FROM `user_rating` WHERE `user_id` = '". $ank['id'] ."'"), 0);
# Старт навигации
nav_start($k_rate, 10);
if ($k_rate == 0)
{
echo '<div class="menu">Голосов нет</div>';
}
else
{
$sql_rate = mysql_query("SELECT * FROM `user_rating` WHERE `user_id` = '". $ank['id'] ."' ORDER BY time DESC LIMIT $start, 10");
while ($rate = mysql_fetch_assoc($sql_rate))
{
echo '<div class="menu">
'. icon($rate['rate_id']) .' <a href="/user/user.php?user_id='. $rate['rate_id'] .'">'. nick($rate['rate_id']) .'</a> '. online($rate['rate_id']) .' ('. vtime($rate['time']) .')<br />
Голос: '. ($rate['type'] == 1?'Положительный':'Отрицательный') .'<br />
'. output($rate['text']) .'
</div>';
}
# Вывод навигации
view_nav();
}
echo '<div class="block">
» <a href="/user/user.php?user_id='. $ank['id'] .'">На личную страницу</a><br />
» <a href="/">На главную</a>
</div>';
# Ноги модуля
require_once(HOME .'/incfiles/footer.php');
?>