Файл: CMS/comm/comm_edit_topic.php
Строк: 42
<?php
if (!defined('CMS')) { die('Access Denied!'); }
$data = '';
$data = $db->selectRow("SELECT ?_comm_comm.*, ?_comm_category.*
FROM ?_comm_comm LEFT JOIN ?_comm_category
ON ?_comm_comm.`comm_cats_id` = ?_comm_category.`cats_id`
WHERE `comm_url` = ? LIMIT 1;", $soo);
if (empty($data) || !is_array($data)) {
$inSes->addMessage('Ошибка! Сообщество не найдено или ссылка неверна!');
gen_red('index', '', RND);
}
if (empty($data['comm_forum'])) {
$inSes->addMessage('Ошибка! Форум не найден или ссылка неверна!');
gen_red('index', '', RND);
}
$arr_admins = @explode(',', $data['comm_admins']);
if ($is_logged) {
//$users = array();
//$users = $db->selectRow("SELECT * FROM ?_comm_users WHERE `cu_comm` = ? AND `cu_user` = ? LIMIT 1;", $data['comm_id'], $log);
if ($data['comm_user'] == $log || is_admin()) {
$row = $db->selectRow("SELECT `t`.*, `f`.`forums_id`
FROM ?_comm_topics `t`
LEFT JOIN ?_comm_forums `f`
ON `t`.`topics_forums_id` = `f`.`forums_id`
WHERE `t`.`topics_id` = ? AND `t`.`topics_comm` = ?
LIMIT 1;", $id, $data['comm_id']);
if (!empty($row)) {
if (!empty($_POST['cancel'])) {
gen_red('topic', $id, 'page=' . $page);
}
if (!empty($_POST['submit'])) {
$title = !empty($_POST['name']) ? check($_POST['name']) : '';
$modes = !empty($_POST['mods']) ? check($_POST['mods']) : '';
$locked = !empty($_POST['locked']) ? 1 : 0;
$closed = !empty($_POST['closed']) ? 1 : 0;
if (!empty($_GET['rnd']) && $_GET['rnd'] == $_SESSION['token']) {
if (cms_strlen($title) >= 3 && cms_strlen($title) <= 100) {
$db->query("UPDATE ?_comm_topics SET `topics_title` = ?, `topics_closed` = ?, `topics_locked` = ?, `topics_mod` = ?
WHERE `topics_id` = ? AND `topics_comm` = ?;", $title, $closed, $locked, $modes, $id, $data['comm_id']);
if ($locked == 1) { $page = 1; }
$inSes->addMessage('Тема успешно отредактирована!', 'ok');
gen_red('topic', $id, RND);
}
else $inSes->addMessage('Ошибка! Слишком длинное или короткое название темы!');
}
else $inSes->addMessage('Ошибка! Неверный идентификатор сессии, повторите действие!');
}
show_header('Управление форумом - Редактирование');
$form = new cmsForm(gen_uri('edit_topic', $id, 'rnd=' . $_SESSION['token']), 'post');
$form->addText('Тема:', 'name', $row['topics_title']);
//$form->addTextarea('Кураторы темы:', 'mods', $row['topics_mod']);
$form->addCheckbox(array('', '- Закрепить тему'), 'locked', $row['topics_locked']);
$form->addCheckbox(array('', '- Закрыть тему'), 'closed', $row['topics_closed']);
$form->addHidden('fid', $row['forums_id']);
$form->addHidden('tid', $id);
echo $form->Submit(array('Изменить', 'Отмена'), array('submit', 'cancel'));
unset($form);
}
else {
$inSes->addMessage('Ошибка! Данной темы не существует!');
gen_red('topic', $id, RND);
}
}
else {
$inSes->addMessage('Ошибка! Данной темы не существует или у Вас нет доступа!');
gen_red('index', '', RND);
}
}
else {
$inSes->addMessage('Ошибка! Форум не найден или ссылка неверна!');
gen_red('index', '', RND);
}
?>