Назад'); require ('../incfiles/end.php'); exit; } // Проверка записи на существование if ( (mysql_result(mysql_query("SELECT COUNT(*) FROM `blogs` WHERE `id` = '" . $id . "'"), 0 ) == 0) && $mod != 'add') { require ('../incfiles/head.php'); echo functions::display_error('Объект не найден', 'Назад'); require ('../incfiles/end.php'); exit; } switch ($mod) { /** * Добавление записи */ case 'add': $textl = 'Блоги | Добавить запись'; require ('../incfiles/head.php'); echo '
Блоги | Добавление записи
'; if (!empty($_POST)) { // Проверяем и добавляем данные $flood = functions::antiflood(); if ($flood) { echo functions::display_error('Вы не можете так часто добавлять сообщения
Пожалуйста подождите' . $flood . ' сек.', 'Повторить'); require('../incfiles/end.php'); exit; } if (empty($_POST['title']) || empty($_POST['text']) || empty($_POST['tags'])) { echo functions::display_error('Не все поля заполнены!', 'Попробовать еще раз'); require ('../incfiles/end.php'); exit; } $error = array(); $title = functions::check($_POST['title']); $text = mysql_real_escape_string(trim($_POST['text'])); $tags = functions::check($_POST['tags']); if (mb_strlen($title) > 25 || mb_strlen($title) < 2) $error[] = 'Длина заголовка должна содержать от 2-х до 25-ти символов'; if (mb_strlen($text) > $bset['post_len']) $error[] = 'Длина поста не должна превышать ' . $bset['post_len'] . ' символов'; if (mb_strlen($tags) > 60) $error[] = 'Содержимое меток не должно превышать 60 символов'; if (!empty($error)) { echo functions::display_error($error, 'Повторить'); require ('../incfiles/end.php'); exit; } mysql_query("INSERT INTO `blogs` SET `title` = '" . $title . "', `text` = '" . $text . "', `tags` = '" . $tags . "', `author_id` = '" . $user_id . "', `author_name` = '" . $login . "', `time` = '" . time() . "' "); $pid = mysql_insert_id(); if (isset($_POST['addfile'])) { header('Location: ?act=addfile&id=' . $pid); exit; } echo '
Добавлено! Просмотр
'; } else { // Форма добавления echo '
' . '

Заголовок (max. 25)

' . '

Текст (max. ' . $bset['post_len'] . ')
' . bbcode::auto_bb('form', 'text') . '

' . '

Метки (через запятую, max. 60 симв.)

' . '

Прикрепить файл: 

' . '

'; } echo '
Назад
'; break; /** * Редактирование записи */ case 'edit': $textl = 'Блоги | Редактирование записи'; require ('../incfiles/head.php'); echo '
Блоги | Редактирование записи
'; $text = mysql_fetch_assoc(mysql_query("SELECT * FROM `blogs` WHERE `id` = '" . $id . "'")); $a_user = functions::get_user($text['author_id']); // Проверка доступа к редактированию if (($text['author_id'] != $user_id && $rights < 7) || ($a_user['rights'] > $rights && $rights < 7)) { echo functions::display_error('Доступ запрещен', 'Назад'); require ('../incfiles/end.php'); exit; } if (!empty($_POST)) { // Проверка и запись данных if (empty($_POST['title']) || empty($_POST['text']) || empty($_POST['tags'])) { echo functions::display_error('Не все поля заполнены!', 'Попробовать еще раз'); require ('../incfiles/end.php'); exit; } $error = array(); $title = functions::check($_POST['title']); $text = mysql_real_escape_string(trim($_POST['text'])); $tags = functions::check($_POST['tags']); if (mb_strlen($title) > 25 || mb_strlen($title) < 2) $error[] = 'Длина заголовка должна содержать от 2-х до 25-ти символов'; if (mb_strlen($text) > $bset['post_len']) $error[] = 'Длина поста не должна превышать ' . $bset['post_len'] . ' символов'; if (mb_strlen($tags) > 60) $error[] = 'Содержимое меток не должно превышать 60 символов'; if (!empty($error)) { echo functions::display_error($error, 'Повторить'); require ('../incfiles/end.php'); exit; } mysql_query("UPDATE `blogs` SET `title` = '" . $title . "', `text` = '" . $text . "', `tags` = '" . $tags . "' WHERE `id` = '" . $id . "' "); echo ''; } else { // Форма редактирования echo ''; } echo '
Назад
'; break; /** * Удаление записи */ case 'delete': $textl = 'Блоги | Удаление записи'; require ('../incfiles/head.php'); $text = mysql_fetch_assoc(mysql_query("SELECT `author_id` FROM `blogs` WHERE `id` = '" . $id . "'")); $a_user = functions::get_user($text['author_id']); // Проверка доступа if (($text['author_id'] != $user_id && $rights < 7) || ($a_user['rights'] > $rights && $rights < 7)) { echo functions::display_error('Доступ запрещен', 'Назад'); require ('../incfiles/end.php'); exit; } echo '
Блоги | Удаление записи
'; if (!empty($_POST)) { mysql_query("DELETE FROM `blogs_votes` WHERE `post_id` = '" . $id . "'"); mysql_query("DELETE FROM `blogs` WHERE `id` = '" . $id . "'"); echo '
Удалено. Продолжить
'; } else { // Форма подтверждения echo '
Вы действительно хотите удалить эту запись?' . '
' . '
' . 'Отмена
'; } echo '
Назад
'; break; /** * Просмотр записи */ default: // Данные записи $text = mysql_fetch_assoc(mysql_query("SELECT * FROM `blogs` WHERE `id` = '" . $id . "'")); // Заголовок страницы $textl = strtr($text['title'], array('"' => '', '&' => '', '<' => '', '>' => '', ''' => '', '\' => '')); $textl = functions::checkout($textl); require ('../incfiles/head.php'); /** * Счетчик прочтений */ if ( !isset($_SESSION['blogs_view']) || ( isset($_SESSION['blogs_view']) && $_SESSION['blogs_view'] != $id ) ) { $_SESSION['blogs_view'] = $id; mysql_query("UPDATE `blogs` SET `views` = '" . (intval($text['views']) + 1) . "' WHERE `id` = '" . $id . "'"); } echo '
' . $text['author_name'] . ' | ' . $text['title'] . '
' . functions::smileys(functions::checkout($text['text'], 1, 1)) . '
' . functions::display_date($text['time']) . '
Метки: ' . $text['tags'] . '
Прочтений: ' . $text['views'] . '
Рейтинг: -' . ' ' . ($text['rate_p'] - $text['rate_m']) . ' +' . '
Комментарии: (' . $text['count_comm']. ')'; /** * Прикрепленные файлы */ $b_files = mysql_query("SELECT * FROM `blogs_files` WHERE `refid` = '" . $id . "'"); if (mysql_num_rows($b_files)) { echo '
Прикрепленные файлы:
'; while ($res_f = mysql_fetch_assoc($b_files)) { echo '' . htmlentities($res_f['filename']) . '
'; } } echo '
Назад
'; $a_user = functions::get_user($text['author_id']); if ($text['author_id'] == $user_id || ($a_user['rights'] < $rights && $rights >= 7)) { echo '
Изменить
' . 'Удалить
'; } break; } ?>