Файл: CMS/core/modules/users_wall.php
Строк: 65
<?php
if (!defined('CMS')) { die('Access Denied!'); }
$data = array();
$data = $db->selectRow("SELECT `u`.*,
(SELECT COUNT(`wall_id`) FROM ?_users_wall WHERE `wall_user` = `u`.`users_login`) AS `wall`
FROM ?_users `u` WHERE LOWER(`u`.`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']);
}
$error = '';
/* Добавляем сообщение на стену */
if ($is_logged) {
if (!empty($_POST['add_wall'])) {
$_SESSION['crc32'] = !empty($_SESSION['crc32']) ? $_SESSION['crc32'] : NULL;
if (!empty($_GET['rnd']) && $_GET['rnd'] == $_SESSION['token']) {
//if ($data['users_login'] <> $log) {
$msg = !empty($_POST['text']) ? check($_POST['text']) : '';
if ($_SESSION['crc32'] <> $msg) {
if (cms_strlen($msg) >= 3 && cms_strlen($msg) <= 1000) {
if (is_flood($log)) {
$_SESSION['crc32'] = $msg;
$msg = antimat($msg);
$msg = smiles($msg);
$db->query("INSERT INTO ?_users_wall (`wall_user`, `wall_login`, `wall_text`, `wall_time`)
VALUES (?, ?, ?, ?);", $data['users_login'], $log, $msg, SITE_TIME);
$db->query("UPDATE ?_users SET `users_newwall` = (`users_newwall` + 1) WHERE `users_login` = ?", $data['users_login']);
$inSes->addMessage('Сообщение успешно добавлено!', 'ok');
gen_red('wall');
}
else $error = 'Антифлуд! Разрешается отправлять сообщения раз в ' . flood_period() . ' секунд!';
}
else $error = 'Ошибка! Слишком длинное или короткое сообщение!';
}
else $error = 'Ошибка! Ваше сообщение уже было добавлено!';
//}
//else $error = 'Ошибка! Запрещено добавлять себе сообщения!';
}
else $error = 'Ошибка! Неверный идентификатор сессии, повторите действие!';
if (!empty($error)) $inSes->addMessage($error, 'error');
}
}
$nickname = nickname($data['users_login']);
show_header('Стена сообщений ' . $nickname);
$onpage = !empty($config['user_list']) ? (int) $config['user_list'] : 10;
if ($page > 1) $from = ($page - 1) * $onpage; else $from = 0;
$rows = $db->selectPage($total, "SELECT * FROM ?_users_wall WHERE `wall_user` = ?
ORDER BY `wall_time` DESC LIMIT ?d, ?d", $data['users_login'], $from, $onpage);
if (!empty($rows) && $total > 0) {
$i = 0;
foreach($rows as $row) {
++$i;
echo '<div class="b">';
echo '<div class="right">' . get_date($row['wall_time']) . '</div>';
echo '<div class="img">' . user_avatars($row['wall_login']) . '</div> ';
echo users_anketa($row['wall_login']) . '<br />';
echo user_title($row['wall_login']) . ' ' . user_online($row['wall_login']) . '<br />';
echo nl2br(bb_code($row['wall_text'])) . '</div>';
}
echo show_pages('wall', '', 'p');
echo '<div class="b">Всего записей: <b>' . $total . '</b><br /></div>';
}
else {
show_error('Сообщений пока нет!');
}
if ($is_logged) {
//if ($log != $data['users_login']) {
$form = new cmsForm('?rnd=' . $_SESSION['token'], 'post', ' name="form"');
$form->addTextarea('Сообщение:', 'text', request('text'), ' id="msg"');
echo $form->Submit('Написать', 'add_wall');
//}
if ($data['users_login'] == $log && $data['users_newwall'] > 0) {
$db->query("UPDATE ?_users SET `users_newwall` = '0' WHERE `users_login` = ?", $log);
}
}
else {
show_login('Вы не авторизованы, чтобы написать на стене, необходимо');
}
echo '<div class="b">';
echo icon('return.png') . ' <a href="./">Назад</a>';
echo '</div>';
?>