<?
define('SHCMS_ENGINE',true);
include_once('../../engine/system/core.php');
$templates->template(Lang::__('Настройка Папок')); //Название страницы
//Если у тебя права 15 то ты можешь приступить к работе
if($groups->setAdmin($user_group) != 15) {
echo engine::error('У вас нет прав для доступа');
header('Refresh: 1; url=index.php');
exit;
}
//Авторизация
if(!$id_user) {
header('Location: index.php');
}
//Если папки нет то выведит эту ошибку
$yes_cat = $db->query('SELECT * FROM `forum_category`');
if(!$db->num_rows($yes_cat)){
header('Refresh: 1; url=index.php');
engine::error(Lang::__('Произошла ошибка не найдено категорий')); //При ошибке
exit;
}
//Делаем облегчение создаем 2разных фукнции в одной станице
switch($act):
//По умолчанию
default:
echo '<div class="mainpost">';
echo '<img src="/engine/template/icons/app.png"> <a href="?act=editor_cat">'.Lang::__('Опция редактирования и удаления').'</a>';
echo '</div>';
echo engine::home(array(Lang::__('Назад'),'index.php'));
break;
//Редактируем папку
case 'editor_cat':
if(isset($_GET['edit']) == 'edit') {
//Если вместо id num попытаются вставить текст то выводит ошибку
if (!isset($_GET['id']) || !is_numeric($_GET['id'])) {
header('Refresh: 1; url=index.php');
engine::error(Lang::__('Произошла ошибка при выборки папок')); //При ошибке
exit;
}
//из $_GET в обычную переменную
$id = (int) $_GET['id'];
//Выводим категорию по $ID
$dir_in = $db->query("SELECT * FROM `files_dir` WHERE `id` = '".$id."'");
echo '<div class="mainname">'.Lang::__('Редактирование папки').'</div>';
//Через $edit[] начинаем вывод данных с базы
$edit = $db->get_array($dir_in);
echo '<div class="mainpost">';
//Проверяем нажата ли кнопка и если ли в поле input текст
if(isset($_POST['name']) and isset($_POST['update'])) {
//Обрабатываем название
$name = engine::proc_name($_POST['name']);
//Если не введена название папки
if(!$_POST['name']) {
echo engine::error(Lang::__('Введите название папки!'));
}else{
//Если все выполнена правильно то обновляет название в базе
$db->query("UPDATE `files_dir` SET `name` = '".$db->safesql($name)."' WHERE `id` = '".$id."'");
echo engine::success(Lang::__('Папка успешно изменена')); //Успешно
echo engine::home(array(Lang::__('Назад'),'setting.in.php?act=editor_cat')); //Переадресация
exit;
}
}
//Форма редактирования
$form = new form('?act=editor_cat&id='.$id.'&edit');
$form->input(Lang::__('Название:'),'name','text',$edit['name']); //Название
$form->submit(Lang::__('Обновить'),'update'); //Обновляем
$form->display();
echo '</div>';
}
//Загружаем данные с базы
$dir_in = $db->query("SELECT * FROM `files_dir` WHERE `dir` = '0' ORDER BY `id` DESC");
echo '<div class="mainname">'.Lang::__('Список категорий').'</div>';
//Проверяем есть ли категории
if($db->num_rows($dir_in)) {
echo '<div class="mainpost">';
//Если есть выводим их всех
while($cat = $db->get_array($dir_in)) {
echo '<div class="sortable"><b>ID:'.$cat['id'].'</b> <a href="index.php">'.$cat['name'].'</a>
<span class="time">
<a href="?act=editor_cat&id='.$cat['id'].'&edit"><img src="/engine/template/icons/notepad.png"/></a>
<a href="?act=delete_cat&id='.$cat['id'].'"><img src="/engine/template/icons/delete.png"/></a>
</span></div>';
}
echo '</div>';
}
//Переадресация на пред. старницу
echo engine::home(array(Lang::__('Назад'),'setting.in.php'));
//Завершаем с редактированием категории
break;
//Удаляем папку
case 'delete_cat':
//Если вместо id num попытаются вставить текст то выводит ошибку
if (!isset($_GET['id']) || !is_numeric($_GET['id'])) {
header('Refresh: 1; url=index.php');
engine::error(Lang::__('Произошла ошибка при удаление папки')); //При ошибке
exit;
}
//из $_GET в обычную переменную
$id = (int) $_GET['id'];
//Если вы нажали на подтверждение то будет удалена категория со всеми разделами и темами
if(isset($_POST['yes_delete'])) {
//Удаляем папку
$db->query('DELETE FROM `files_dir` WHERE `dir` = "0"');
//Удаляем айлы в данной папке
$db->query('DELETE FROM `files` WHERE `id_dir` = "0"');
//Успешное удаление всех выбранных данных
echo engine::success('Папка успешно удалена');
echo engine::home(array('Назад','setting.in.php?act=editor_cat'));
exit;
//Если вы нажали на отмену то переадресовывается на пред. страницу
}elseif(isset($_POST['no_delete'])){
header('Location: setting.in.php?act=editor_cat'); //Пред. стараница
}
//Подтверждение
echo '<div class="mainname">Подтверждение</div>';
echo '<div class="mainpost">';
echo 'Вы действительно хотите удалить выбранную папку? Данное действие невозможно будет отменить.<hr/>';
//Форма удаление
echo '<div style="text-align:right;">';
$form = new form('?act=delete_cat&id='.$id.'');
$form->submit('Да','yes_delete');
$form->submit('Нет','no_delete');
$form->display();
echo '</div></div>';
break;
endswitch;
?>