Просмотр файла modules/forum/new.topic.php

Размер файла: 4.6Kb
<?
define('SHCMS_ENGINE',true);
include_once('../../engine/system/core.php');
$templates->template(Lang::__('Создание новой темы')); //Название страницы

    //Отключения форума
	//Вывод определенных данных
    $off_forum = $db->get_array($db->query("SELECT * FROM `off_modules`"));
	if($off_forum['off_forum'] == 1) {
	    echo engine::error(Lang::__('Форум приостановлен с ').date::make_date($off_forum['time_forum']),$off_forum['text_forum']); //Ошибка об отключении и дополнительный текст
	    echo engine::home(array('Назад','/index.php'));	 
	    exit;
	}
	
//Если пользователь не авторизован и захочет создать тему то выведит ошибку
if($id_user == false) {
    echo engine::error('Тему могут создать авторизованные пользователи');
    header('Refresh: 1; url=index.php');
    exit;
}

//Если вместо id num попытаются вставить текст то выводит ошибку
if (!isset($_GET['id']) || !is_numeric($_GET['id'])) {
    $templates->template(Lang::__('Ошибка при создании темы')); //Название страницы
    header('Refresh: 1; url=index.php');
    engine::error('Произошла ошибка при выборе раздела'); //При ошибке
    exit;
}
//Из $_GET в обычную 
$id = (int) $_GET['id'];


	//Если файла из выбранного $id
        $view = $db->query('SELECT * FROM `forum_subsection` WHERE `id` = '.$id.'');
		if(!$db->num_rows($view)){
		    header('Refresh: 1; url=index.php');
            engine::error(Lang::__('Произошла ошибка не найден раздел')); //При ошибке
            exit;
		}		

//Вызываем данные из базы
$section = $db->get_array($db->query("SELECT * FROM `forum_subsection` WHERE `id` = '".$id."'"));


if(isset($_POST['name']) and isset($_POST['topic']) and isset($_POST['submit'])) {
    //Обрабатываем название
    $name = engine::proc_name($_POST['name']);
	//Обрабатывает описание
    $topic = engine::input_text($_POST['topic']);

	//Проверяет введена ли название
	$nametop = $db->query("SELECT * FROM `forum_topics` WHERE `name` = '".$db->safesql($name)."'");
	if($db->get_array($nametop) != 0) {
	    echo engine::error(Lang::__('Такое название уже существует'));
	}elseif(!$name) {
	    echo engine::error(Lang::__('Введите название темы'));
	}elseif(!$topic) {
	//Проверяет введена ли описание
	    echo engine::error(Lang::__('Введите описание темы'));
	}else {

		    //Добавлям данные в базу
	        $db->query("INSERT INTO `forum_topics` (`id_sec`,`id_cat`,`id_user`,`name`,`text`,`time`) VALUES ('".$section['id']."','".$section['id_cat']."','".$id_user."','".$db->safesql($name)."','".$db->safesql($topic)."','".time()."')");
	        $top_id = $db->get_array($db->query("SELECT * FROM `forum_topics` WHERE `id_sec` = '".$section['id']."' AND `id_user` = '".$id_user."' AND `name` = '".$db->safesql($name)."'"));
			$db->query("INSERT INTO `forum_post` (`id_cat`,`id_sec`,`id_top`,`id_user`,`time`,`text`) VALUES ('".intval($section['id_cat'])."','".intval($section['id'])."','".$top_id['id']."','".$id_user."','".time()."','".$db->safesql($topic)."')");
			
			echo engine::success(Lang::__('Тема успешно создана')); // Успешно
		    echo engine::home(array(Lang::__('Создать еще'),'new.topic.php?id='.$id.'')); //Переадресация на пред. страницу
	        echo engine::home(array('Назад','section.php?id='.$id.'')); //Переадресация на пред. стараницу
			exit;
	    }
	
}



    //Форма
	echo '<div class="mainname">'.Lang::__('Создание новой темы').' в <font color="green">'.$section['name'].'</font></div>';
    echo '<div class="mainpost">';
        $form = new form('?id='.$id.'');
        $form->input(Lang::__('Название:'),'name','text');
        $form->textarea(Lang::__('Описание:'),'topic');
        $form->submit(Lang::__('Создать тему'),'submit');
        $form->display();
    echo '</div>';

echo engine::home(array(Lang::__('Назад'),'section.php?id='.$id.'')); //Переадресация на пред. страницу
?>