<?
switch($act):
default:
echo '<div class="mainname">'.Lang::__('Приложения').'</div>';
echo '<div class="mainpost">';
echo '<div class="subpost"><img src="../icons/application/application.png"> <a href="index.php?do=application&act=application">'.Lang::__('Управление приложениями').'</a></div>';
echo '</div>';
echo engine::home(array(Lang::__('Назад'),'index.php')); //Переадресация
break;
case 'application':
echo '<div class="mainname"><b>'.Lang::__('Установленные приложения').'</b></div>';
echo '<div class="subpost"><a class="Button_secondary" href="index.php?do=application&act=add_application"><img src="../icons/application/add.png"> '.Lang::__('Добавить приложение').'</a></div>';
echo '<div class="mainpost">';
$app = $db->query("SELECT * FROM `application` ORDER BY `posi` ASC");
while( $apps = $db->get_array( $app ) )
{
echo '<div class="row"><img src="../icons/module/'.$apps['icon'].'"> ';
if($apps['official'] == 3)
{
echo '<span class="purple Badgesh">ОФИЦИАЛЬНЫЕ</span> ';
}
echo '<b>'.$apps['name'].'</b>';
echo '<span class="time">';
if($apps['app_on'] == 2)
{
echo '<span style="color:red;"><img title="'.Lang::__('Модуль отключен').'" src="../icons/application/off_app.png"></span> ';
}
if($apps['official'] == 3)
{
//Уведомляет о том что модуль разработат создателем Системы SHCMS Engine
echo '<img title="Подтверждение о том что модуль разработан Создателем Шамсик Сердеров aka (Shamsik)" src="../icons/application/tick.png">';
}elseif($apps['official'] == 0) {
//Удаляет неадминистрирвоанные приложение
echo '<a href="index.php?do=application&act=delete_application&id_delete='.$apps['id'].'"><img title="Удаляем приложение" src="../icons/application/delete.png"></a> ';
}
echo ' <a href="index.php?do=application&act=down&id='.$apps['id'].'"><img title="Вниз перенести" src="/engine/template/icons/down.png"></a>
<a href="index.php?do=application&act=up&id='.$apps['id'].'"><img title="Поднять на вверх" src="/engine/template/icons/up.png"></a>
<a href="index.php?do=application&act=editor&id_editor='.$apps['id'].'"><img src="../icons/application/pencil.png"></a>
</span>';
echo '<div style="color: #969a9d;" class="desc">'.$apps['text'].'</div>';
echo '</div>';
}
echo '</div>';
echo engine::home(array(Lang::__('Назад'),'index.php?do=application')); //Переадресация
break;
case 'up':
$id = intval($_GET['id']);
$menu = $db->get_array($db->query("SELECT * FROM `application` WHERE `id` = '{$id}'"));
$db->query("UPDATE `application` SET `posi` = '".($menu['posi'])."' WHERE `posi` = '".($menu['posi']-1)."' LIMIT 1");
$db->query("UPDATE `application` SET `posi` = '".($menu['posi']-1)."' WHERE `id` = '".$id."' LIMIT 1");
header('Location: index.php?do=application&act=application');
break;
case'down':
$id = intval($_GET['id']);
$menu = $db->get_array($db->query("SELECT * FROM `application` WHERE `id` = '{$id}'"));
$db->query("UPDATE `application` SET `posi` = '".($menu['posi'])."' WHERE `posi` = '".($menu['posi']+1)."' LIMIT 1");
$db->query("UPDATE `application` SET `posi` = '".($menu['posi']+1)."' WHERE `id` = '".$id."' LIMIT 1");
header('Location: index.php?do=application&act=application');
break;
case 'add_application':
$add_app = $db->get_array($db->query("SELECT * FROM `application` ORDER BY `posi` DESC"));
//Выводится названия приложение
echo '<div class="mainname">'.Lang::__('Добавить приложение').'</div>';
echo '<div class="mainpost">';
//Если нажата кнопка то делаем следующие .....
if(isset($_POST['submit'])) {
//Обработка название
$name = htmlspecialchars($_POST['name']); // Преобразуем специальные символы в HTML
//Если название пусто но вставляем пустое значение
if(empty($name)) {
$name = 'Без названия'; //Если пустое название выводит
}
//Обработка текста
$text = htmlspecialchars($_POST['text'] , ENT_QUOTES);// Преобразуем специальные символы в HTML
$text = $db->safesql($text);
$action = $db->safesql(intval($_POST['action'])); //Целочисленное значение
$version = htmlspecialchars($_POST['version']);// Преобразуем специальные символы в HTML
$author = htmlspecialchars($_POST['author']);// Преобразуем специальные символы в HTML
$dir = $_POST['dir']; //Папка где будет находится сам модуль
$icon = $_POST['icon'];
//Если путь не введен то выводим ошибку
if(empty($dir)) {
echo engine::error(Lang::__('Введите путь к модулю')); // Текст
echo '</div>'; // Закрытие div
echo engine::home(array(Lang::__('Назад'),'index.php?do=application&act=editor&id_editor='.$id.'')); //Переадресация
exit;//Дальше доступ закрываем
}
//Обновляем необходимые таблицы в базе данных
$edit = $db->query("INSERT INTO `application` SET `posi` = '".($add_app['posi']+1)."',`icon` = '".$icon."',`name` = '".$db->safesql($name)."', `text` = '".$db->safesql($text)."', `version` = '".$version."',`author` = '".$author."',`dir` = '".$dir."',`app_on` = '".intval($action)."'");
//Если все правильно выводит функцию ниже
if($edit == true) {
echo engine::success(Lang::__('Параметры приняты!'));
header('Location: index.php?do=application&act=application');
}else {
//А если жи есть ошибки выводит функцию ниже
echo engine::error(Lang::__('Параметры не приняты!'));
header('Location: index.php?do=application&act=add_application');
}
}
//Сама форма
$form = new form('index.php?do=application&act=add_application');
$form->input(Lang::__('Имя приложения:'),'name','text');
$form->text('<div style="color: #969a9d;" class="desc">'.Lang::__('Имя приложения не должно оставаться пустым').'</div>');//Описание
$form->textarea(Lang::__('Описание приложения:'),'text');
$form->select(Lang::__('Включить?'),'action',array(Lang::__('Да') => 1, Lang::__('Нет') => 2),2);
$form->input(Lang::__('Версия приложения:'),'version','text');
$form->input(Lang::__('Автор приложения:'),'author','text');
$form->text(Lang::__('Выбираем иконку:<br/>'));
$icons_menu = opendir('../icons/module');
while ($icon_menu = readdir($icons_menu)) {
if (($icon_menu!= 'Thumbs.db' and $icon_menu!= '.' and $icon_menu!= '..')) {
$form->input3('<img src="../icons/module/'.$icon_menu.'"> ','icon','radio',$icon_menu);
}
}
closedir($icons_menu);
$form->text('<br/><br/>');
$form->input(Lang::__('Директория приложения:'),'dir','text');
$form->text('<div style="color: #969a9d;" class="desc">'.Lang::__('Эта директория должна существовать в /modules/').'</div>');//Описание
$form->text('</div><div class="submit">');
$form->submit(Lang::__('Добавить'),'submit');
$form->text('или <span class="cancel"><a href="index.php?do=application&act=application">'.Lang::__('Отменить').'</a></span></div>'); //Если хотите отменить
$form->display();
echo '</div>';
break;
//Удаление приложений
case 'delete_application':
$id_delete = intval($_GET['id_delete']);
$app = $db->get_array($db->query("SELECT * FROM `application` WHERE `id` = '".intval($id_delete)."'"));
if($id_delete == true and $app['official'] != 3) {
$db->query("DELETE FROM `application` WHERE `id` = '".intval($id_delete)."'");
header('Location: index.php?do=application&act=application');
}else {
header('Location: index.php?do=application&act=application');
}
break;
//Редактирование приложений
case 'editor':
//Выводим $id в нумерном значение
$id = (int) $_GET['id_editor'];
//Выводим все данные из базы по определенному $id
$app = $db->get_array($db->query("SELECT * FROM `application` WHERE `id` = '".$id."'"));
//Выводится названия приложение
echo '<div class="mainname">'.Lang::__('Редактирование').' - '.$app['name'].'</div>';
echo '<div class="mainpost">';
//Если нажата кнопка то делаем следующие .....
if(isset($_POST['submit'])) {
//Обработка название
$name = htmlspecialchars($_POST['name']); // Преобразуем специальные символы в HTML
//Если название пусто но вставляем пустое значение
if(empty($name)) {
$name = 'Без названия'; //Если пустое название выводит
}
//Обработка текста
$text = htmlspecialchars($_POST['text'] , ENT_QUOTES);// Преобразуем специальные символы в HTML
$text = $db->safesql($text);
$action = $db->safesql(intval($_POST['action'])); //Целочисленное значение
$version = htmlspecialchars($_POST['version']);// Преобразуем специальные символы в HTML
$author = htmlspecialchars($_POST['author']);// Преобразуем специальные символы в HTML
$dir = $_POST['dir']; //Папка где будет находится сам модуль
$icon = $_POST['icon'];
//Если путь не введен то выводим ошибку
if(!$dir) {
echo engine::error(Lang::__('Введите путь к модулю')); // Текст
echo '</div>'; // Закрытие div
echo engine::home(array(Lang::__('Назад'),'index.php?do=application&act=editor&id_editor='.$id.'')); //Переадресация
exit;//Дальше доступ закрываем
}
//Обновляем необходимые таблицы в базе данных
$edit = $db->query("UPDATE `application` SET `icon` = '".$icon."',`name` = '".$db->safesql($name)."', `text` = '".$db->safesql($text)."', `version` = '".$version."',`author` = '".$author."',`dir` = '".$dir."',`app_on` = '".intval($action)."' WHERE `id` = '".$id."'");
//Если все правильно выводит функцию ниже
if($edit == true) {
echo engine::success(Lang::__('Параметры приняты!'));
header('Location: index.php?do=application&act=editor&id_editor='.$id.'');
}else {
//А если жи есть ошибки выводит функцию ниже
echo engine::error(Lang::__('Параметры не приняты!'));
header('Location: index.php?do=application&act=editor&id_editor='.$id.'');
}
}
//Сама форма
$form = new form('index.php?do=application&act=editor&id_editor='.$id.'');
$form->input(Lang::__('Имя приложения:'),'name','text',$app['name']);
$form->text('<div style="color: #969a9d;" class="desc">'.Lang::__('Имя приложения не должно оставаться пустым').'</div>');//Описание
$form->textarea(Lang::__('Описание приложения:'),'text',$app['text']);
$form->select(Lang::__('Включить?'),'action',array(Lang::__('Да') => 1, Lang::__('Нет') => 2),$app['app_on']);
$form->input(Lang::__('Версия приложения:'),'version','text',$app['version']);
$form->input(Lang::__('Автор приложения:'),'author','text',$app['author']);
$form->text(Lang::__('Выбираем иконку:<br/>'));
$icons_menu = opendir('../icons/module');
while ($icon_menu = readdir($icons_menu)) {
if (($icon_menu!= 'Thumbs.db' and $icon_menu!= '.' and $icon_menu!= '..')) {
$form->input3('<img src="../icons/module/'.$icon_menu.'"> ','icon','radio',$icon_menu,$app['icon'] == $icon_menu ? "checked='checked'" : NULL);
}
}
closedir($icons_menu);
$form->text('<br/><br/>');
$form->input(Lang::__('Директория приложения:'),'dir','text',$app['dir']);
$form->text('<div style="color: #969a9d;" class="desc">'.Lang::__('Эта директория должна существовать в /modules/').'</div>');//Описание
$form->text('</div><div class="submit">');
$form->submit(Lang::__('Применить'),'submit');
$form->text('или <span class="cancel"><a href="index.php?do=application&act=application">'.Lang::__('Отменить').'</a></span></div>'); //Если хотите отменить
$form->display();
echo '</div>';
break;
endswitch;
?>