<?php
include_once 'sys/inc/start.php';
$doc = new document(); // инициализация документа для браузера
$doc->title = 'Отзывы';

if (isset($_GET['id']))$ank = new user($_GET['id']);else $ank = $user;


if (!$ank->group)$doc->access_denied('Нет данных');



$add=1;



$q=mysql_query("SELECT COUNT(*) as `count`, MAX(`time`) as `time` FROM `reviews_users` WHERE `id_user` = '$user->id' AND `id_ank` = '$ank->id'");

$count=mysql_result($q, 0, 'count');
$time=mysql_result($q, 0, 'time');

// чем больше отзывов оставлено, тем меньше это влияет на рейтинг
$add=1-min($count,9)/10;

// оставлять отзыв можно не чаще одного раза в сутки
if ($time>DAY_TIME)$add=0;

// VIP пользователю рейтинг засчитывается вдвойне
if ($ank->is_vip)$add+=$add;





if ($ank->id==$user->id)$doc->title='Отзывы обо мне';else $doc->title.=" о \"{$ank->login}\"";



if ($user->group && isset($_POST['review']) && $user->id!=$ank->id  && $add)
{
$message=text::input_text($_POST['review']);

if ($message)
{
mysql_query("UPDATE `users` SET `rating` = `rating` + '$add' WHERE `id` = '$ank->id' LIMIT 1");
mysql_query("INSERT INTO `reviews_users` (`id_user`, `id_ank`, `time`, `text`, `rating`) VALUES ('$user->id', '$ank->id', '".TIME."', '".my_esc($message)."', '$add')");
header('Refresh: 1; url=?id='.$ank->id);
$doc->ret('Вернуться','?id='.$ank->id);
$doc->msg('Ваш отзыв успешно оставлен');


$ank -> mess("$user->login оставил".($user->sex?'':'а')." о Вас свой [url=/profile.reviews.php]отзыв[/url]");


exit;
}
else
{
$doc->err('Текст отзыва пуст');
}

}






$posts = array();
$pages = new pages;
$pages->posts = mysql_result(mysql_query("SELECT COUNT(*) FROM `reviews_users` WHERE `id_ank` = '$ank->id'"), 0); // количество сообщений
$pages->this_page(); // получаем текущую страницу


$q = mysql_query("SELECT * FROM `reviews_users` WHERE `id_ank` = '$ank->id' ORDER BY `id` DESC LIMIT {$pages->my_start()}, {$pages->items_per_page}");
while ($rev=mysql_fetch_assoc($q)) {
$ank2=new user($rev['id_user']);
$posts[]=array('title'=>$ank2->show().' +'.$rev['rating'],'icon'=>$ank2->icon(),'post'=>output_text($rev['text']));
}
if (!$posts)$posts[]=array('icon'=>array('size'=>'small','src'=>'/sys/images/icons/empty.png'),'title'=>'Отзывы отсутствуют');

$show = new design();
$show->assign('post',$posts);
$show->display('design.listing.tpl');

$pages->listing('?id='.$ank->id.'&amp;'); // вывод страниц



if ($user->group &&  $user->id!=$ank->id  && $add)
{
$smarty = new design();
$smarty->assign('method','post');
$smarty->assign('action','?id='.$ank->id.'&amp;'.passgen());
$elements=array();
$elements[]=array('type'=>'textarea', 'title'=>'Отзыв о пользователе*', 'br'=>1, 'info'=>array('name'=>'review'));
$elements[]=array('type'=>'text','value'=>'* Разрешается оставлять только положительные отзывы. Кроме того каждый отзыв увеличивает пользователю рейтинг.','br'=>1);
$elements[]=array('type'=>'submit', 'br'=>0, 'info'=>array('value'=>'Отправить')); // кнопка

$smarty->assign('el',$elements);
$smarty->display('input.form.tpl');
}


$doc->ret('В анкету',"profile.view.php?id={$ank->id}");
$doc->ret('Личное меню','/menu.user.php');
?>
