<?php
$t = "Мой форум";
include_once '../core/core.php';
if (!$user->auth()){
	include_once '../core/head.php';
	echo '<div class="error">Необходимо пройти войти в систему для посещения данной страницы.</div>';
	echo h();
	include_once '../core/foot.php';
	die();
}
if ($id != 0 && !$act){
	if ($db->Count("forum_cat","WHERE `sid` = '".$user->uid."' AND `cid` = '".$id."'") == 0){
		include_once '../core/head.php';
		echo '<div class="error">Данная категория не существует.</div>';
	} else {
		$cat = $db->getObject("SELECT * FROM `forum_cat` WHERE `sid` = '".$user->uid."' AND `cid` = '".$id."'");
		$t = 'Действия с категорией - '.$cat->name;
		include_once '../core/head.php';
		echo '<div class="title">Действия с категорией - '.$cat->name.'</div>';
		echo l("/forum.lm?id=".$id."&act=rename","Переименовать категорию","star",false,false,"Для того чтобы задать другое имя категории, нажмите здесь.");
		echo l("/forum.lm?id=".$id."&act=erase","Отчистить категорию","cancel",false,false,"Для удаления всех тем и сообщений нажмите здесь.");
		echo l("/forum.lm?id=".$id."&act=del","Удалить категорию","trash",false,false,"Для удаления данной категории нажмите здесь.");
		echo b("/forum.lm");
		echo hcp();
		include_once '../core/foot.php';
		die();
	}
} elseif ($id != 0 && $act == "rename"){
	if ($db->Count("forum_cat","WHERE `sid` = '".$user->uid."' AND `cid` = '".$id."'") == 0){
		include_once '../core/head.php';
		echo '<div class="error">Данная категория не существует.</div>';
	} else {
		$cat = $db->getObject("SELECT * FROM `forum_cat` WHERE `sid` = '".$user->uid."' AND `cid` = '".$id."'");
		$t = 'Переименование категории - '.$cat->name;
		if (isset($_POST["ok"]) && isset($_POST["name"]) && isset($_POST["txt"])){
			if (strlen(trim($_POST['name'])) < 4) {
				$core->regError("Слишком короткое название категории","Слишком короткое название категории (от 4-32 символов)",3,"Forum");
			} elseif (strlen(trim($_POST['name'])) > 64) {
				$core->regError("Слишком длинное название категории","Слишком длинное название категории (от 4-64 символов)",3,"Forum");
			} else {
				$db->Query("UPDATE `forum_cat` SET `name`='".$core->FilterString($_POST["name"])."',`txt` = '".$core->FilterString($_POST["txt"])."' WHERE `sid` = '".$user->uid."' AND `cid` = '".$id."'");include_once '../core/head.php';
				include_once '../core/head.php';
				echo '<div class="success">Категория успешно переименована.</div>';
				echo b("/forum.lm?id=".$id);
				echo hcp();
				include_once '../core/foot.php';
				die();
			}
		}
		include_once '../core/head.php';
		if ($core->isBooleanError()){
			foreach ($core->showError() as $csE){
				echo '<div class="error">Произошла ошибка при обработке операции<br><b>КОД: '.$csE["code"].'</b><br>Подробнее: '.$csE["utxt"].'</div>';
			}	
		}
		echo '<div class="title">Переименование категории - '.$cat->name.'</div>';
		echo '<form method="POST">';
		echo 'Название категории:<br>
		<input type="text" name="name" value="'.(isset($_POST["name"]) && !empty($_POST["name"])?$core->FilterString($_POST["name"]):$cat->name).'"><br>
		Описание категории:<br>
		<textarea name="txt">'.(isset($_POST["txt"]) && !empty($_POST["txt"])?$core->FilterString($_POST["txt"]):$cat->txt).'</textarea><br>';
		echo '<input type="submit" name="ok" value="Применить изменения"></form>';
		echo b("/forum.lm?id=".$id);
		echo hcp();
		include_once '../core/foot.php';
		die();
	}
} elseif ($id != 0 && $act == "erase"){
	if ($db->Count("forum_cat","WHERE `sid` = '".$user->uid."' AND `cid` = '".$id."'") == 0){
		include_once '../core/head.php';
		echo '<div class="error">Данная категория не существует.</div>';
	} else {
		$cat = $db->getObject("SELECT * FROM `forum_cat` WHERE `sid` = '".$user->uid."' AND `cid` = '".$id."'");
		$t = 'Отчистка категории - '.$cat->name;
		if (isset($_POST["ok"])){
			// Начинаем удаление данных пользователя
			$db->Delete("forum_topics","WHERE `sid` = '".$user->uid."' AND `cid` = '".$id."'");
			$db->Delete("forum_message","WHERE `sid` = '".$user->uid."' AND `cid` = '".$id."'");
			include_once '../core/head.php';
			echo '<div class="success">Категория успешно отчищина.</div>';
			echo b("/forum.lm?id=".$id);
			echo hcp();
			include_once '../core/foot.php';
			die();
		}
		include_once '../core/head.php';
		echo '<div class="title">Отчистка категории - '.$cat->name.'</div>';
		echo '<div class="warning">ВНИМАНИЕ!!! При отчистке категории будут удалены все темы и сообщения, восстановить обратно их не получиться!</div>';
		echo '<form method="POST">
		<input type="submit" name="ok" value="Да, отчистить категорию"></form>';
		echo b("/forum.lm?id=".$id);
		echo hcp();
		include_once '../core/foot.php';
		die();
	}
} elseif ($id != 0 && $act == "del"){
	if ($db->Count("forum_cat","WHERE `sid` = '".$user->uid."' AND `cid` = '".$id."'") == 0){
		include_once '../core/head.php';
		echo '<div class="error">Данная категория не существует.</div>';
	} else {
		$cat = $db->getObject("SELECT * FROM `forum_cat` WHERE `sid` = '".$user->uid."' AND `cid` = '".$id."'");
		$t = 'Удаление категории - '.$cat->name;
		if (isset($_POST["ok"])){
			// Начинаем удаление данных пользователя
			$db->Delete("forum_cat","WHERE `sid` = '".$user->uid."' AND `cid` = '".$id."'");
			$db->Delete("forum_topics","WHERE `sid` = '".$user->uid."' AND `cid` = '".$id."'");
			$db->Delete("forum_message","WHERE `sid` = '".$user->uid."' AND `cid` = '".$id."'");
			include_once '../core/head.php';
			echo '<div class="success">Категория успешно удалена.</div>';
			echo b("/forum.lm");
			echo hcp();
			include_once '../core/foot.php';
			die();
		}
		include_once '../core/head.php';
		echo '<div class="title">Удаление категории - '.$cat->name.'</div>';
		echo '<div class="warning">ВНИМАНИЕ!!! При удалении категории будут удалены все темы и сообщения, восстановить обратно их не получиться!</div>';
		echo '<form method="POST">
		<input type="submit" name="ok" value="Да, удалить категорию и все её составляющие"></form>';
		echo b("/forum.lm?id=".$id);
		echo hcp();
		include_once '../core/foot.php';
		die();
	}
} elseif ($id == 0 && $act == "add"){
	$t = 'Создание категории';
	if (isset($_POST["ok"]) && isset($_POST["name"]) && isset($_POST["txt"])){
		if (strlen(trim($_POST['name'])) < 4) {
			$core->regError("Слишком короткое название категории","Слишком короткое название категории (от 4-32 символов)",3,"Forum");
		} elseif (strlen(trim($_POST['name'])) > 64) {
			$core->regError("Слишком длинное название категории","Слишком длинное название категории (от 4-64 символов)",3,"Forum");
		} else {
			$db->Query("INSERT INTO `forum_cat`(`sid`, `name`, `txt`) VALUES ('".$user->uid."','".$core->FilterString($_POST["name"])."','".$core->FilterString($_POST["txt"])."')");
			include_once '../core/head.php';
			echo '<div class="success">Категория успешно создана.</div>';
			echo b("/forum.lm?id=".$id);
			echo hcp();
			include_once '../core/foot.php';
			die();
		}
	}
	include_once '../core/head.php';
	if ($core->isBooleanError()){
		foreach ($core->showError() as $csE){
			echo '<div class="error">Произошла ошибка при обработке операции<br><b>КОД: '.$csE["code"].'</b><br>Подробнее: '.$csE["utxt"].'</div>';
		}	
	}
	echo '<div class="title">Создание категории</div>';
	echo '<form method="POST">
	Название категории:<br>
	<input type="text" name="name" value="'.(isset($_POST["name"]) && !empty($_POST["name"])?$core->FilterString($_POST["name"]):null).'"><br>
	Описание категории:<br>
	<textarea name="txt">'.(isset($_POST["txt"]) && !empty($_POST["txt"])?$core->FilterString($_POST["txt"]):null).'</textarea><br>
	<input type="submit" name="ok" value="Создать категорию">
	</form>';
	echo b("/forum.lm");
	echo hcp();
	include_once '../core/foot.php';
	die();
}
include_once '../core/head.php';
echo '<div class="title">Мой форум</div>';
if ($db->Count("forum_cat","WHERE `sid` = '".$user->uid."'") == 0){
	echo '<div class="error">В форуме категорий пока что нету.</div>';
}
$max = 25;
$k_post = $db->Count("forum_cat","WHERE `sid` = '".$user->uid."'");
$k_page = $core->k_page($k_post,$max);
$page = $core->page($k_page);
$start = $max*$page-$max;

$data = $db->Query("SELECT * FROM `forum_cat` WHERE `sid` = '".$user->uid."' ORDER BY `cid` ASC LIMIT $start, $max"); 
while ($d = mysqli_fetch_assoc($data)){
	echo l("/forum.lm?id=".$d["cid"],$d["name"],"newdoc",false,$db->Count("forum_topics","WHERE `sid` = '".$user->uid."' AND `cid` = '".$d["cid"]."'"),($d["txt"]!=null?$core->drawString($d["txt"]):"<i>(без описания)</i>"));
}
if($k_page>1) echo $core->str('?',$k_page,$page);
echo l("/forum.lm?act=add","Создать категорию","plus",false,false,"Для создания новой категории нажмите здесь.");
echo hcp();
include_once '../core/foot.php';
?>