/** * конструктор */ public function __construct(&$currLang) { $this->currLang = CONF_LANGUAGE; foreach (filesys::getChildDirs('lang/') as $value) { file_exists('lang/' . $value . '/lang.dictionarys.selects.php') ? $this->arrLangs[] = $value : null; } empty($currLang) && !empty($_COOKIE['langDictSelects']) ? $currLang =& $_COOKIE['langDictSelects'] : null; $this->setLangDict($currLang); }
* Copyright 2010-2015 (c) SD-Group * All rights reserved * =================================================== * Настройки - Сайт * =================================================== * * @package * * @todo * */ !defined('SDG') ? die('Triple protection!') : null; // инициируем "Наименование страницы" отображаемое в форме $arrNamePage = array(array('name' => MENU_ADMIN_MAIN, 'link' => CONF_ADMIN_FILE), array('name' => MENU_CONFIG, 'link' => false), array('name' => MENU_CONFIG_SITE, 'link' => false)); // сохраняем данные, переданные из формы if (isset($_POST['save'])) { $chpu = !isset($_POST['chpu']) ? 0 : 1; $tChpu = empty($chpu) ? CONF_ENABLE_TRANSLITERATION_CHPU : (!isset($_POST['tChpu']) ? 0 : 1); $tChpuPutToEnd = empty($chpu) || empty($tChpu) ? CONF_TRANSLITERATION_CHPU_ID_PUT_TO_END : (empty($_POST['tChpuPutToEnd']) ? 0 : 1); $tChpuMaxLen = empty($chpu) || empty($tChpu) ? CONF_TRANSLITERATION_CHPU_MAX_LENGHT : (($tChpuMaxLen = (int) $_POST['tChpuMaxLenght']) ? $tChpuMaxLen : 0); $data = "<?php\n\n" . "(!defined('SDG')) ? die ('Triple protection!') : null;\n\n" . 'define("CONF_DEFAULT_TITLE", "' . htmlspecialchars($_POST['title'], ENT_QUOTES, CONF_DEFAULT_CHARSET) . '");' . "\n\n" . 'define("CONF_DEFAULT_DESCRIPTION", "' . $_POST['description'] . '");' . "\n\n" . 'define("CONF_DEFAULT_KEYWORDS", "' . $_POST['keywords'] . '");' . "\n\n" . 'define("CONF_SITE_NAME", "' . htmlspecialchars($_POST['site_name'], ENT_QUOTES, CONF_DEFAULT_CHARSET) . '");' . "\n\n" . 'define("CONF_SITE_NAME_TO_TITLE", "' . (!empty($_POST['site_name_to_title']) ? 1 : 0) . '");' . "\n\n" . 'define("CONF_TITLE_PAGE_SEPERATOR", "' . htmlspecialchars($_POST['title_page_separator'], ENT_QUOTES, CONF_DEFAULT_CHARSET) . '");' . "\n\n" . 'define("CONF_LANGUAGE", "' . htmlspecialchars($_POST['language'], ENT_QUOTES, CONF_DEFAULT_CHARSET) . '");' . "\n\n" . 'define("CONF_SITE_URL", "' . htmlspecialchars(filesys::setPath($_POST['site_url'], ENT_QUOTES, CONF_DEFAULT_CHARSET)) . '");' . "\n\n" . 'define("CONF_SCRIPT_URL", "' . htmlspecialchars(filesys::setPath($_POST['script_url'], ENT_QUOTES, CONF_DEFAULT_CHARSET)) . '");' . "\n\n" . 'define("CONF_USE_VISUAL_EDITOR", "' . (!isset($_POST['visual_editor']) ? 0 : 1) . '");' . "\n\n" . 'define("CONF_USE_REDIRECT_EXTERNAL_LINK", "' . (!isset($_POST['redirect_extLink']) ? 0 : 1) . '");' . "\n\n" . 'define("CONF_ENABLE_CACHING", "' . ($_POST['caching'] = !isset($_POST['caching']) ? 0 : 1) . '");' . "\n\n" . 'define("CONF_DISABLE_AUTO_COUNTERS", "' . ($_POST['disable_auto_counters'] = !isset($_POST['disable_auto_counters']) ? 0 : 1) . '");' . "\n\n" . 'define("CONF_ENABLE_CHPU", "' . $chpu . '");' . "\n\n" . 'define("CONF_ENABLE_TRANSLITERATION_CHPU", "' . $tChpu . '");' . "\n\n" . 'define("CONF_TRANSLITERATION_CHPU_ID_PUT_TO_END", "' . $tChpuPutToEnd . '");' . "\n\n" . 'define("CONF_TRANSLITERATION_CHPU_MAX_LENGHT", "' . htmlspecialchars($tChpuMaxLen, ENT_QUOTES, CONF_DEFAULT_CHARSET) . '");' . "\n\n" . 'define("CONF_CHPU_HTML_DATA_EXT", "' . htmlspecialchars($_POST['tChpuHtmlDataExt'], ENT_QUOTES, CONF_DEFAULT_CHARSET) . '");' . "\n\n" . 'define("CONF_CHPU_XML_DATA_EXT", "' . htmlspecialchars($_POST['tChpuXmlDataExt'], ENT_QUOTES, CONF_DEFAULT_CHARSET) . '");' . "\n"; // сброс кеша сайта CONF_ENABLE_CACHING != $_POST['caching'] || CONF_ENABLE_CHPU != $chpu || CONF_ENABLE_TRANSLITERATION_CHPU != $tChpu || CONF_TRANSLITERATION_CHPU_ID_PUT_TO_END != $tChpuPutToEnd ? caching::dropCache() : null; // сохраняем изменения if (!tools::saveConfig('core/conf/const.config.site.php', $data, CONF_ADMIN_FILE . '?m=config&s=site')) { $arrErrors[] = ERROR_FILES_MISSING_FILE; } } $smarty->assign('language_dirs', filesys::getChildDirs('lang/')); // получаем список доступных дирректорий языков $smarty->assignByRef('errors', $arrErrors);
// Владение языками - обязательные поля $arrLanguage['arrBindFields'] = $resume->arrFieldsXmlData['languages'][1]['arrBindFields']; foreach (array_keys($arrLanguage['arrBindFields']) as $alias) { array_push($arrSearch, 'arrFieldsXmlData[languages][{$smarty.foreach.lang_foreach.iteration}][arrNoBindFields][' . $alias . ']', '$language.arrNoBindFields.' . $alias, 'added[languages][][arrNoBindFields][' . $alias . ']'); array_push($arrRreplace, 'arrFieldsXmlData[languages][{$smarty.foreach.lang_foreach.iteration}][arrBindFields][' . $alias . ']', '$language.arrBindFields.' . $alias, 'added[languages][][arrBindFields][' . $alias . ']'); } // Владение языками - необязательные поля $arrLanguage['arrNoBindFields'] = $resume->arrFieldsXmlData['languages'][1]['arrNoBindFields']; foreach (array_keys($arrLanguage['arrNoBindFields']) as $alias) { array_push($arrSearch, 'arrFieldsXmlData[languages][{$smarty.foreach.lang_foreach.iteration}][arrBindFields][' . $alias . ']', '$language.arrBindFields.' . $alias, 'added[languages][][arrBindFields][' . $alias . ']'); array_push($arrRreplace, 'arrFieldsXmlData[languages][{$smarty.foreach.lang_foreach.iteration}][arrNoBindFields][' . $alias . ']', '$language.arrNoBindFields.' . $alias, 'added[languages][][arrNoBindFields][' . $alias . ']'); } /** * Производим поиск/замену во всех шаблонах скрипта */ foreach (filesys::getChildDirs('templates/site/') as $template) { $formFileName = 'templates/site/' . $template . '/resume.form.tpl'; if (is_file($formFileName)) { file_put_contents($formFileName, str_replace($arrSearch, $arrRreplace, file_get_contents($formFileName))); } $formFileName = 'templates/site/' . $template . '/resume.preview.tpl'; if (is_file($formFileName)) { file_put_contents($formFileName, str_replace($arrSearch, $arrRreplace, file_get_contents($formFileName))); } } file_put_contents('templates/admin/adm.announces.resume.edit.tpl', str_replace($arrSearch, $arrRreplace, file_get_contents('templates/admin/adm.announces.resume.edit.tpl'))); messages::messageChangeSaved(MESSAGE_CHANGE_SAVED, false, CONF_ADMIN_FILE . '?m=announces&s=common&action=confQuestResume'); } else { messages::printDie(ERROR_FILE_NOT_WRITE); } }
$arrData[] = "define('" . strtoupper($constName) . "', '" . (!empty($constValue) ? $constValue : strtoupper($constName)) . "');"; } $data = "<?php\n\n" . "(!defined('SDG')) ? die ('Triple protection!') : null;\n\n" . implode("\n\n", $arrData) . "\n"; if (file_put_contents($langDir . $currLang . '/' . $fileNameLocaliz, $data)) { messages::messageChangeSaved(MESSAGE_CHANGE_SAVED, false, $formUrl); } else { messages::messageChangeSaved(MESSAGE_CHANGE_NOT_SAVED, false, $formUrl); } } $smarty->assignByRef('formUrl', $formUrl); $smarty->assignByRef('modId', $_GET['id']); $smarty->assignByRef('currLang', $currLang); // текущая локализация // получаем список доступных дирректорий языков $arrLangs = array(); foreach (filesys::getChildDirs($langDir) as $value) { $arrLangs[] = $value; } $smarty->assignByRef('langs', $arrLangs); // список доступных локализаций // инициируем "Наименование страницы" отображаемое в форме $arrNamePage[] = array('name' => strtoupper($_GET['id']), 'link' => false); $arrNamePage[] = array('name' => MENU_LANGUAGE_MANAGER, 'link' => false); include_once 'core/mods/payments/' . $_GET['id'] . '/admin.php'; $smarty->assign('ltTemplate', 'adm.mods.payments.language.manager.tpl'); $smarty->assign('defLocalizConst', localiz::getLocalizConst('russian', false, $langDir)); $smarty->assign('currLocalizConst', localiz::getLocalizConst($currLang, false, $langDir)); } else { // инициируем "Наименование страницы" отображаемое в форме $arrNamePage[] = array('name' => MENU_MODS_PAYMENTS, 'link' => false); /**
} elseif (!empty($_COOKIE['adm_currTmplManage']) && is_dir('templates/site/' . $_COOKIE['adm_currTmplManage'])) { $currTemplate =& $_COOKIE['adm_currTmplManage']; } else { $currTemplate = CONF_TEMPLATE; } // устанавливаем кукисы cookies::setCookieSite('adm_currTmplManage', $currTemplate); // передаем текуший шаблон в Smarty $smarty->assignByRef('currTemplate', $currTemplate); // текущий шаблон // формируем данные - Список файлов шаблона foreach (filesys::getFilesInDir("templates/site/{$currTemplate}/") as $fileName) { if (false !== strstr($fileName, '.tpl')) { // записываем данные в массив $listTemplates[] = array('name' => $fileName, 'id' => $id = str_replace('.', '_', $fileName)); } } // формируем данные - Список файлов стилей foreach (filesys::getFilesInDir("templates/site/{$currTemplate}/style/") as $fileName) { if (false !== strstr($fileName, '.css')) { // записываем данные в массив $listCSS[] = array('name' => $fileName, 'id' => $id = str_replace('.', '_', $fileName)); } } // передаем данные в Smarty $smarty->assignByRef('listTemplates', $listTemplates); $smarty->assignByRef('listCSS', $listCSS); // получаем список доступных дирректорий шаблонов $smarty->assign('templates', filesys::getChildDirs('templates/site/')); $smarty->assignByRef('errors', $arrErrors); $smarty->assignByRef('action', $arrActions);
} elseif (file_exists($pathExpertCore . $className . '/' . $className . '.class.php')) { require_once $pathExpertCore . $className . '/' . $className . '.class.php'; } else { spl_autoload_register('smartyAutoload'); } } /** * Конфигурационные файлы */ foreach (filesys::getFilesInDir('core/conf/') as $fileConf) { require_once 'core/conf/' . $fileConf; } /** * Определение доступных локализаций */ foreach (filesys::getChildDirs('lang/') as $langs) { $existLangs[] = $langs; } /** * Очистка данных полученных извне PHP */ secure::clearRequestData(); /** * Определение текущей локализации */ if (!empty($_COOKIE['currLang']) && false !== ($currLang = array_search($_COOKIE['currLang'], $existLangs))) { unset($existLangs[$currLang]); array_unshift($existLangs, $currLang =& $_COOKIE['currLang']); cookies::setCookieSite('currLang', $currLang, 30); } else { unset($existLangs[array_search(CONF_LANGUAGE, $existLangs)]);
/******************************************************** JobExpert v1.0 powered by Script Developers Group (SD-Group) email: info@sd-group.org.ua url: http://sd-group.org.ua/ Copyright 2010-2015 (c) SD-Group All rights reserved ========================================================= Настройки - Smarty ********************************************************/ /** * @package * @todo */ !defined('SDG') ? die('Triple protection!') : null; // инициируем "Наименование страницы" отображаемое в форме $arrNamePage = array(array('name' => MENU_ADMIN_MAIN, 'link' => CONF_ADMIN_FILE), array('name' => MENU_CONFIG, 'link' => false), array('name' => MENU_CONFIG_SMARTY, 'link' => false)); // сохраняем данные, переданные из формы if (isset($_POST['save'])) { // если изменился шаблон, очищаем папку откомпилированных шаблонов //($_POST['template'] !== CONF_TEMPLATE) ? $smarty -> clearCompiledTemplate() : null; $_POST['template'] !== CONF_TEMPLATE ? filesys::removeContentInDir(TEMPLATE_COMPILE_DIR) : null; $data = "<?php\n\n" . "(!defined('SDG')) ? die ('Triple protection!') : null;\n\n" . 'define("TEMPLATE_SMARTY_DIR", \'' . htmlspecialchars(filesys::setPath($_POST['smarty_dir'], ENT_QUOTES, CONF_DEFAULT_CHARSET)) . '\');' . "\n\n" . 'define("TEMPLATE_ROOT_DIR", "' . htmlspecialchars(filesys::setPath($_POST['root_dir'], ENT_QUOTES, CONF_DEFAULT_CHARSET)) . '");' . "\n\n" . 'define("CONF_TEMPLATE", "' . htmlspecialchars($_POST['template'], ENT_QUOTES, CONF_DEFAULT_CHARSET) . '");' . "\n\n" . 'define("TEMPLATE_COMPILE_DIR", "' . htmlspecialchars(filesys::setPath($_POST['compile_dir'], ENT_QUOTES, CONF_DEFAULT_CHARSET)) . '");' . "\n\n" . 'define("TEMPLATE_PATH", "' . htmlspecialchars(filesys::setPath($_POST['root_dir'], ENT_QUOTES, CONF_DEFAULT_CHARSET)) . 'site/' . htmlspecialchars($_POST['template'], ENT_QUOTES, CONF_DEFAULT_CHARSET) . '/");' . "\n\n" . 'define("TEMPLATE_PATH_ADMIN", "' . htmlspecialchars(filesys::setPath($_POST['root_dir'], ENT_QUOTES, CONF_DEFAULT_CHARSET)) . 'admin/");' . "\n\n" . 'define("TEMPLATE_DEBUGGING", "' . (!isset($_POST['debugging']) ? false : true) . '");' . "\n\n" . 'define("TEMPLATE_COMPILE_CHECK", "' . (!isset($_POST['compile_check']) ? false : true) . '");' . "\n\n" . 'define("TEMPLATE_FORCE_COMPILE", "' . (!isset($_POST['force_compile']) ? false : true) . '");' . "\n"; if (!tools::saveConfig('core/conf/const.config.tmpl.php', $data, CONF_ADMIN_FILE . '?m=config&s=tmpl')) { $arrErrors[] = ERROR_FILES_MISSING_FILE; } } $smarty->assign('templateDirs', filesys::getChildDirs(TEMPLATE_ROOT_DIR . 'site/')); // получаем список доступных дирректорий шаблонов $smarty->assignByRef('errors', $arrErrors);
/** * метод получает список существующих модов * (каталоги из каталога mods) * мод "payments" в массив не попадает * @return array */ protected function getModsList() { // получаем список существующих модов $arrMods = filesys::getChildDirs($this->modsPath); // удалем мод "payments" из массива if (($key = array_search('payments', $arrMods)) !== false) { unset($arrMods[$key]); } return $arrMods; }