$fp = fopen($new_file, "w");
    fwrite($fp, "");
    fclose($fp);
    echo $new_file;
    exit;
}
#	Создание файла END
#############################################
#############################################
#	Удаление директории или файла
if (isset($_GET["apps_file_system"]) && !empty($_POST["remove_file"])) {
    $file = trim(htmlspecialchars(strip_tags($_POST["remove_file"])));
    if (substr($file, -1) == "/") {
        echo FunctionSystems::remove_dir($file);
    } else {
        echo FunctionSystems::remove_file($file);
    }
    exit;
}
#	Удаление директории или файла END
#############################################
###################################################
#	Обновление или сохранение файлов
if (!empty($_GET["apps_upload_files"])) {
    // если был запрос на загрузку файлов
    $upload = new uploads($_GET["apps_upload_files"]);
    echo $upload;
    exit;
}
#	Обновление или сохранение END
###################################################
if (!defined('KYLAKSIZOV')) {
    exit("Stop! Forbidden");
}
/*=== Создание или редактирование категорий ===*/
if ($_SERVER["REQUEST_METHOD"] == "POST" && !empty($_POST["category_id"]) && !empty($_POST["new_name_category"])) {
    // принимаем параметры
    $category_id = trim(htmlentities(strip_tags($_POST["category_id"])));
    // @return new or old - новая или старая категория
    $new_name_category = trim(htmlspecialchars(strip_tags($_POST["new_name_category"])));
    $new_url_category = trim(htmlspecialchars(strip_tags($_POST["new_url_category"])));
    $new_description_category = trim(htmlspecialchars(strip_tags($_POST["new_description_category"])));
    $new_keywords_category = trim(htmlspecialchars(strip_tags($_POST["new_keywords_category"])));
    $new_parent_category = trim(htmlspecialchars(strip_tags($_POST["new_parent_category"])));
    if (empty($new_url_category)) {
        // если url для категории не задан вручную, то генерируем автоматически из названия
        $new_url_category = mb_strtolower(FunctionSystems::translit($new_name_category), 'UTF-8');
    }
    if (empty($new_parent_category) || $new_parent_category == "0") {
        $new_parent_category = "";
    }
    $queryArray = array("title" => $new_name_category, "url" => $new_url_category, "description" => $new_description_category, "keywords" => $new_keywords_category, "subcategory" => $new_parent_category);
    ###################################################
    #	Создание категории
    if ($category_id == "new") {
        $result = DB::db_insert(PREFIX_ . "category", $queryArray);
        if ($result !== 0) {
            Systems::answer("Категория создана", true);
        } else {
            Systems::answer("Не удалось создать категорию!", false);
        }
    } else {
#   Генерируем запрос на загрузку и установку модуля
$apps_settings = DB::getSettings(PREFIX, "systems");
$postdata = http_build_query(array('host' => HOME, 'version' => $apps_settings["version"], 'ip' => $_SERVER["REMOTE_ADDR"], 'id_module' => $_GET["id_module"], 'hash' => $_GET["hash"]));
$opts = array('http' => array('method' => 'POST', 'header' => 'Content-type: application/x-www-form-urlencoded', 'content' => $postdata));
$context = stream_context_create($opts);
$server_response = file_get_contents('http://info.apps-system.ru/?install=module', false, $context);
#######################################################
//FunctionSystems::Pre($server_response);
//exit;
# директория загрузки инсталятора
$install_zip = ROOT . "install_module.zip";
if (!copy($server_response, $install_zip)) {
    // если архив не загрузился
    Systems::answer("{$server_response}", false);
    Systems::log('<span class="error_log">Не удалось загрузить модуль</span>');
    FunctionSystems::Error('Не удалось загрузить модуль');
} else {
    $zip = new ZipArchive();
    if ($zip->open($install_zip) === true) {
        //извлекаем новую конфигурацию
        $module = $zip->getFromName('info.xml');
        $info_module = new SimpleXMLElement($module);
        $info = array();
        $info["name"] = $info_module->info->name;
        // имя модуля для modules.store
        $info["dir"] = $info_module->info->dir;
        // имя модуля для modules.store
        $info["version"] = $info_module->info->version;
        // имя модуля для modules.store
        $power_module = Systems::local_store_modules("add", $info["dir"], "1");
        // заносим модуль в modules.local
							<button type="button" class="btn btn-xs btn-primary dropdown-toggle" data-toggle="dropdown">
								<span class="caret"></span>
								<span class="sr-only">Меню с переключением</span>
							</button>
							<ul class="dropdown-menu" role="menu">
								<li><a href="#">Действие</a></li>
								<li><a href="#">Другое действие</a></li>
								<li><a href="#">Что-то иное</a></li>
								<li class="divider"></li>
								<li><a href="#">Отдельная ссылка</a></li>
							</ul>
						</div>
						<input type="checkbox" class="form-control f_r">-->
					</div>
					<hr>
				</div>';
            } else {
                throw new Exception('Не могу найти конфигурацию приложения <b>' . $dir . '</b> по адресу: ' . ADMIN_MODULES . $dir . '/config.ini');
            }
        } catch (Exception $e) {
            FunctionSystems::Error($e->getMessage());
        }
    }
}
#	Воборка каталога с приложениями и их настроек END
###################################################
?>

		
	</div>
</div>
 $date = trim(htmlspecialchars(strip_tags($_POST["date"])));
 $news_min = trim($_POST["news_min"]);
 $news_max = trim($_POST["news_max"]);
 $news_id = trim(htmlspecialchars(strip_tags($_POST["news_id"])));
 // достаём инфу о категории
 //$category = DB::select(PREFIX_."category", "WHERE `id`='".$cat_id."' LIMIT 1");
 $category = DB::run("SELECT * FROM " . PREFIX_ . "category WHERE id = ? LIMIT 1", array($cat_id))->fetch();
 if (empty($date)) {
     $date = array("date" => date("d-m-Y", time()), "time" => time());
 } else {
     $date = array("date" => $date, "time" => time());
 }
 $date = serialize($date);
 if (empty($url_news)) {
     // если url новости не задан вручную, то генерируем автоматически из названия новости
     $url_news = mb_strtolower(FunctionSystems::translit($title), 'UTF-8');
 }
 if (trim($_POST["status"]) == "on") {
     $status = "1";
 } else {
     $status = "0";
 }
 if (empty($category["subcategory"])) {
     $cat_url = $category["url"] . "/";
 } else {
     $cat_url = $category["subcategory"] . $category["url"] . "/";
 }
 $queryArray = array("title" => $title, "url" => $url_news, "description" => $description, "keywords" => $keywords, "news_min" => $news_min, "news_max" => $news_max, "cat_id" => $cat_id, "cat_name" => $category["title"], "cat_url" => $cat_url, "time" => $date, "status" => $status);
 ###################################################
 #	Создание новости
 if ($news_action == "new") {
 function AddScript($where, $link_script)
 {
     try {
         if ($where == "system") {
             echo '<script src="' . HOME . 'admin/systems/template/js/' . $link_script . '"></script>';
         } else {
             if ($where == "applications") {
                 echo '<script src="' . HOME . 'admin/applications/' . $link_script . '"></script>';
             } else {
                 if ($where == "modules") {
                     echo '<script src="' . HOME . 'admin/modules/' . $link_script . '"></script>';
                 } else {
                     if ($where == "plagins") {
                         echo '<script src="' . HOME . 'admin/plagins/' . $link_script . '"></script>';
                     } else {
                         throw new Exception("Параметр where: ({$where}) в методе " . __METHOD__ . " отсутствует или имеет неверное значение");
                     }
                 }
             }
         }
     } catch (Exception $e) {
         FunctionSystems::Error($e->getMessage());
     }
 }
    exit("Stop! Forbidden");
}
// UPDATE SYSTEMS
if (!isset($_COOKIE["Auth"])) {
    exit;
}
require_once "systems/api_start.php";
if (!empty($_POST["update"]) && isset($_COOKIE["new_version_system"])) {
    $relize = file_get_contents("http://info.apps-system.ru/?update=" . $_COOKIE["new_version_system"] . "&referer=" . HOME);
    # директория загрузки инсталятора
    $install_zip = ROOT . "update.zip";
    if (!copy($relize, $install_zip)) {
        // если архив не загрузился
        Systems::answer("Не удалось загрузить обновление", false);
        Systems::log('<span class="error_log">Не удалось загрузить обновление системы</span>');
        FunctionSystems::Error('Не удалось загрузить обновление системы');
    } else {
        $zip = new ZipArchive();
        if ($zip->open($install_zip) === true) {
            //извлекаем новую конфигурацию
            $update = $zip->getFromName('update.xml');
            $system = new SimpleXMLElement($update);
            $version = $system->info->version;
            // версия новой системы
            settype($version, "string");
            // делаем строкой
            $update_db = array("version" => $version, "time" => time());
            //$db = New DB();
            DB::updateSettings(PREFIX, $update_db, "systems");
            // обновляем настройки в базе
            $zip->extractTo(ROOT);
Exemple #8
0
 * ==========================================
 * Admin Component -> SYSTEMS -> info
 * ==========================================
 * @copyright Copyright (C) 2016
 * @author Kylaksizov <*****@*****.**>
 * @link http://kylaksizov.ru/
 * @version 0.0.1
 * ------------------------------------------
 * mission: отображение информации о системе
 * ==========================================
 * Distributed under an MIT license: http://apps-system.ru/LICENSE
 */
if (!defined('KYLAKSIZOV')) {
    exit("Stop! Forbidden");
}
$func = new FunctionSystems();
//$db = New DB();
$settings = DB::getSettings(PREFIX, "systems");
$time = $func->getTime($settings["time"], "d") . " дней";
if ($time == "0 дней") {
    $time = $func->getTime($settings["time"], "h") . " часа";
    if ($time == "0 часов") {
        $time = $func->getTime($settings["time"], "m") . " минут";
    }
}
?>

<div class="row">
	<div class="col-xs-12 pad_no">
		<h1><i class="ico_title ico_m_info_big"></i>Информация о системе</h1>
	</div>