View file panel/forum.php

File size: 6.67Kb
<?php
// by mides, wmclub.mobi

$title = 'Админка';
require('../config.php');
require('../includes/sys.php');
require('../includes/start.php');
require('../includes/auth.php');
require('../includes/header.php');

switch($_GET['act']){

###############################################################################
##                    Главная страница, список разделов                      ##
###############################################################################
default:

tp('Админка &gt; Форум');

$result_cats = mysql_query("SELECT * FROM `forum_cats` ORDER BY `order`");
while($cat = mysql_fetch_assoc($result_cats)){
	echo '&bull; <a href="../forum/index.php?act=cat&amp;id='.$cat['id'].'">'.$cat['name'].'</a> (<a href="?act=cat_edit&amp;id='.$cat['id'].'">ред</a>)<br/>';
	$result_subcats = mysql_query("SELECT * FROM `forum_subcats` WHERE `id_cat` = '".$cat['id']."'");
	while($subcat = mysql_fetch_assoc($result_subcats)){
		echo '-- <a href="../forum/index.php?act=subcat&amp;id='.$subcat['id'].'">'.$subcat['name'].'</a> (<a href="?act=subcat_edit&amp;id='.$subcat['id'].'">ред</a>)<br />';
	}
}

echo '<br/>
	 <form action="?act=cat_add" method="post" name="form">
	 <select name="cat">
	 <option value="0">Главная</option>';
$result_cats = mysql_query("SELECT * FROM `forum_cats` ORDER BY `order`");
while($cat = mysql_fetch_assoc($result_cats)){
	echo '<option value="'.$cat['id'].'">'.$cat['name'].'</option>';	
}
echo '</select><br />
	 Название (под)раздела:<br/><input name="name" type="text" maxlength="50" /><br />
	 <input name="submit" type="submit" value="Добавить"></form>';
nav('./');

break;

###############################################################################
##                           Добавление раздела                              ##
###############################################################################
case 'cat_add':

if(!empty($_POST['name'])){
	$name = check($_POST['name']);
	if(empty($_POST['cat'])){
		$order = mysql_fetch_assoc(mysql_query("SELECT `order` FROM `forum_cats` ORDER BY `order` DESC LIMIT 1"));
		$order_s = $order['order'] + 1;
		mysql_query("INSERT INTO `forum_cats`(`name`, `order`) VALUES('$name', '$order_s')");
		info('Раздел успешно добавлен!');
	}else{
		$cat = intval($_POST['cat']);
		$order = mysql_fetch_assoc(mysql_query("SELECT `order` FROM `forum_subcats` ORDER BY `order` DESC LIMIT 1"));
		$order_s = $order['order'] + 1;
		mysql_query("INSERT INTO `forum_subcats`(`id_cat`, `name`, `order`) VALUES('$cat', '$name', '$order_s')");
		info('Подраздел успешно добавлен!');
	}
}else{
	error('Вы не заполнили поле!');
}
nav('?');

break;

###############################################################################
##                        Форма редактирования раздела                       ##
###############################################################################
case 'cat_edit':

$id = intval($_REQUEST['id']);
$cat = mysql_fetch_assoc(mysql_query("SELECT * FROM `forum_cats` WHERE `id` = '$id'"));
if($cat['id']){
	tp('Редактирование раздела');
	echo '<form action="?act=cat_edit_do&amp;id='.$id.'" method="post" name="form">
		 Название(max50):<br /><input name="name" type="text" maxlength="50" value="'.$cat['name'].'" /><br />
		 <input name="del" type="checkbox" value="1" /> Удалить<br />
		 <input name="submit" type="submit" value="Ok" />
		 </form>';
}else{
	error('Раздел не существует!');
}
nav('?');

break;

###############################################################################
##                          Редактирование раздела                           ##
###############################################################################
case 'cat_edit_do':

$id = intval($_REQUEST['id']);
$r_cat = mysql_query("SELECT `id` FROM `forum_cats` WHERE `id` = '$id'");
if(mysql_num_rows($r_cat)){
	if(!empty($_POST['del'])){
		mysql_query("DELETE FROM `forum_cats` WHERE `id` = '$id'");
		info('Раздел успешно удален!');
		nav('?');
	}else{
		if(!empty($_POST['name'])){
			$name = check($_POST['name']);
			mysql_query("UPDATE `forum_cats` SET `name` = '$name' WHERE `id` = '$id'");
			info('Раздел успешно отредактирован!');
			nav('?');
		}else{
			error('Вы не заполнили поле!');
			nav('?act=cat_edit&amp;id='.$id);
		}
	}
}else{
	error('Раздел не существует!');
	nav('?');
}

break;

###############################################################################
##                       Форма редактирования подраздела                     ##
###############################################################################
case 'subcat_edit':

$id = intval($_REQUEST['id']);
$subcat = mysql_fetch_assoc(mysql_query("SELECT * FROM `forum_subcats` WHERE `id` = '$id'"));
if($subcat['id']){
	tp('Редактирование подраздела');
	echo '<form action="?act=subcat_edit_do&amp;id='.$id.'" method="post" name="form">
		 Название(max50):<br /><input name="name" type="text" maxlength="50" value="'.$subcat['name'].'" /><br />
		 <input name="del" type="checkbox" value="1" /> Удалить<br />
		 <input name="submit" type="submit" value="Ok" />
		 </form>';
}else{
	error('Подраздел не существует!');
}
nav('?');

break;

###############################################################################
##                         Редактирование подраздела                         ##
###############################################################################
case 'subcat_edit_do':

$id = intval($_REQUEST['id']);
$r_subcat = mysql_query("SELECT `id` FROM `forum_subcats` WHERE `id` = '$id'");
if(mysql_num_rows($r_subcat)){
	if(!empty($_POST['del'])){
		mysql_query("DELETE FROM `forum_subcats` WHERE `id` = '$id'");
		info('Подраздел успешно удален!');
		nav('?');
	}else{
		if(!empty($_POST['name'])){
			$name = check($_POST['name']);
			mysql_query("UPDATE `forum_subcats` SET `name` = '$name' WHERE `id` = '$id'");
			info('Подраздел успешно отредактирован!');
			nav('?');
		}else{
			error('Вы не заполнили поле!');
			nav('?act=subcat_edit&amp;id='.$id);
		}
	}
}else{
	error('Подраздел не существует!');
	nav('?');
}

break;

}

require('../includes/tail.php');
?>