/profile.reviews.php
PHP | 95 lines | 72 code | 20 blank | 3 comment | 21 complexity | a7e6fe7156e942bc96fb500a695b0ca7 MD5 | raw file
- <?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(__('??? ??????'));
- }
-
- $can_write = true;
- if (!$user->is_writeable) {
- $doc->msg(__('?????? ?????????'), 'write_denied');
- $can_write = false;
- }
-
-
- $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 > NEW_TIME)
- $add = 0;
- // VIP ???????????? ??????? ????????????? ???????
- if ($ank->is_vip)
- $add += $add;
-
- if ($ank->id == $user->id)
- $doc->title = __('?????? ??? ???');
- else
- $doc->title = __('"?????? ? "%s"', $ank->login);
-
- if ($user->group && $can_write && 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(__('????? ?????? ????'));
- }
- }
-
- $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->limit");
-
- $listing = new listing();
- while ($rev = mysql_fetch_assoc($q)) {
- $ank2 = new user($rev['id_user']);
- $post = $listing -> post();
- $post -> title = $ank2->nick();
- $post -> counter = '+' . $rev['rating'];
- $post -> icon($ank2->icon());
- $post -> content = output_text($rev['text']);
- }
- $listing -> display(__('?????? ???????????'));
-
- $pages->display('?id=' . $ank->id . '&'); // ????? ???????
-
- if ($user->group && $can_write && $user->id != $ank->id && $add) {
- $smarty = new design();
- $smarty->assign('method', 'post');
- $smarty->assign('action', '?id=' . $ank->id . '&' . 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');
- ?>