Файл: modules/reviews.php
Строк: 61
<?php
/**
* @author Moroz Taras (-= MTV =-)
*/
namespace functions;
session_start();
$mod = (isset($_GET['mod']) ? a_filter_url($_GET['mod']) : NULL);
switch($mod) :
default:
if(a_isUser() === true) {
a_header('Отзывы');
echo '<div class="title">Отзывы</div>
<div class="about">Оставьте свой отзыв(оставлять отзыв могут люди,которые зарегистрированы на сайте больше чем 1 день и внесли сумму более 250 рублей)!';
if(a_isUser('reg')+86400 < time() || a_isUser('id') == 1) {
if(a_isUser('get_money') >= 250):
echo '<form method="POST">
<p><textarea name="msg" placeholder="Отзыв:"></textarea></p>
<p>
<select name="type">
<option value="1">Положительный</option>
<option value="2">Отрицательный</option>
</select>
</p>
<p><input type="submit" name="ready" value="Оставить"></p>
</form>';
else:
echo '<p>доступ закрыт</p>';
endif;
echo (isset($_SESSION['info']) ? '<div style="text-align:center;color:green;">'.$_SESSION['info'].'</div>' : NULL);
unset($_SESSION['info']);
if(isset($_POST['ready'])) {
$filtering = array(
'msg' => a_filter_str($_POST['msg']),
'type' => a_filter_str($_POST['type'])
);
$stmt = $db->prepare('SELECT `msg` FROM `db_reviews` WHERE `msg` = :msg LIMIT 1');
$stmt->bindValue(':msg', $filtering['msg']);
$stmt->execute();
$fetch = $stmt->fetch();
if(empty($filtering['msg'])) {
echo '<div style="color:red;text-align:center;">Введите отзыв.</div>';
} else if(mb_strlen($filtering['msg'], 'UTF-8') < 10) {
echo '<div style="color:red;text-align:center;">Отзыв должен состоять минимум с 10-ти символов.</div>';
} else if(!empty($fetch)) {
echo '<div style="color:red;text-align:center;">Подобный отзыв уже существует.</div>';
} else {
$stmt = $db->prepare('INSERT INTO `db_reviews` SET `msg` = :msg, `type` = :type, `author` = :author, `time` = :time');
$stmt->bindValue(':msg', $filtering['msg']);
$stmt->bindValue(':type', $filtering['type']);
$stmt->bindValue(':author', a_isUser('id'));
$stmt->bindValue(':time', time());
$stmt->execute();
$_SESSION['info'] = 'Отзыв успешно оставлен';
header('Location: /?act=reviews');
exit();
}
}
} else {
echo '<div style="color:red;text-align:center">Вы еще не можете оставлять свой отзыв.</div>';
}
echo '<hr>';
$reviews = $db->query('SELECT * FROM `db_reviews`');
$counter = $reviews->rowCount();
while($r = $reviews->fetch()) {
echo '<div style="">USER:<b>'.getUserById('payeer', $r['author']).'</b>['.($r['type'] == 1 ? '<font color="green">Положительный</font>' : '<font color="red">Отрицательный</font>').'] - ' . $r['msg'] . ' ('.a_time($r['time']).')
'.(a_isUser('access') == 1 ? '[<a href="/?act=reviews&mod=delete&id='.$r['id'].'">Удалить</a>]' : NULL).'</div>';
}
if($counter < 1) {
echo '<div style="text-align:center;color:red;">Отзывов еще не оставляли.</div>';
}
echo '<hr><a href="/">Вернуться на главную</a>';
echo '</div>';
a_footer();
} else {
header('Location: /');
exit();
}
break;
case 'delete':
if(a_isUser() === true) {
if(a_isUser('access') == 1) {
$id = a_filter_str($_GET['id']);
$stmt = $db->prepare('SELECT `id` FROM `db_reviews` WHERE `id` = :id Limit 1');
$stmt->bindValue(':id', $id);
$stmt->execute();
$fetch = $stmt->fetch();
if(!empty($fetch)) {
$db->query('DELETE FROM `db_reviews` WHERE `id` = "'.$fetch['id'].'"');
header('Location: /?act=reviews');
exit();
} else {
header('Location: /');
exit();
}
} else {
header('Location: /');
exit();
}
} else {
header('Location: /');
exit();
}
break;
endswitch;