} elseif ($arrActions['logs']) { // удаление логов if (!empty($_POST['action'])) { if ('deleted' === $_POST['action'] && !empty($_POST['files']) && is_array($_POST['files'])) { foreach ($_POST['files'] as $key => $value) { unlink(CONF_UPDATES_PATH_TO_LOG_FILES . $key); } messages::messageChangeSaved(MESSAGE_CHANGE_SAVED, false, CONF_ADMIN_FILE . '?m=system&s=updates&action=logs'); } } $arrNamePage[] = array('name' => MENU_UPDATES_LOGS, 'link' => false); $logFiles = filesys::getFilesInDir(CONF_UPDATES_PATH_TO_LOG_FILES); $arrData = array(); if (!empty($logFiles) && is_array($logFiles)) { foreach ($logFiles as &$value) { $fData = filesys::getFileSystemData(CONF_UPDATES_PATH_TO_LOG_FILES . $value); if (!empty($fData) && is_array($fData)) { $arrData[$value] = $fData; } } } $smarty->assignByRef('arrData', $arrData); } elseif ($arrActions['backup'] && !empty($_GET['file']) && file_exists(CONF_UPDATES_PATH_TO_FILES . $_GET['file'])) { // массив проверки обновлений. Указывает, где будут производиться изменения // на основании этих данных определятся какие бэкапы нужно делать $arrBackup = array('php' => true, 'sql' => false); $zip = new PclZip(CONF_UPDATES_PATH_TO_FILES . $_GET['file']); // получаем текст из файла обновления if ($update = $zip->extract(PCLZIP_OPT_BY_NAME, 'update.xml', PCLZIP_OPT_EXTRACT_AS_STRING)) { $xml = new SimpleXMLElement($update[0]['content'], LIBXML_NOCDATA); //(property_exists($xml, 'php') || property_exists($xml, 'delfiles')) ? $arrBackup['php'] = true : null;