Current Path : /var/www/html/clients/nsmk.e-nk.ru/application/maxsite/plugins/modules/ |
Current File : /var/www/html/clients/nsmk.e-nk.ru/application/maxsite/plugins/modules/admin.php |
<?php if (!defined('BASEPATH')) exit('No direct script access allowed'); /** * MaxSite CMS * (c) http://max-3000.com/ */ global $MODULES; $CI = & get_instance(); if ( $post = mso_check_post(array('f_session_id', 'f_submit', 'fmoduless')) ) { mso_checkreferer(); $modules = array(); foreach($MODULES as $mod) { $modules[$mod['id']]['file_name'] = $post['fmoduless'][$mod['id']]['file_name']; $modules[$mod['id']]['php_code'] = $post['fmoduless'][$mod['id']]['php_code']; } mso_add_float_option('modules', $modules, 'modules'); // и в опции echo '<div class="update">' . t('Обновлено!', 'plugins') . '</div>'; } ?> <h1><?= t('Модули', __FILE__) ?></h1> <p class="info"><?= t('Для настройки модуля, выберите файл или введите PHP-код.', __FILE__) ?></p> <?php if (!$MODULES) { echo 'Модули не определены.'; return; } $modules = mso_get_float_option('modules', 'modules', array()); # получим подключаемые файлы $CI->load->helper('directory'); $files_template = directory_map(getinfo('template_dir') . 'modules/', true); // только в modules шаблона $list_files_template = array(); foreach($files_template as $val) { if (!is_dir(getinfo('plugins_dir') . 'modules/modules/' . $val)) $list_files_template['TEMPLATE:' . $val] = 'TEMPLATE:' . $val; } $files_plugin = directory_map(getinfo('plugins_dir') . 'modules/modules/', true); // только в modules плагина $list_files_plugin = array(); foreach($files_plugin as $val) { if (!is_dir(getinfo('plugins_dir') . 'modules/modules/' . $val)) $list_files_plugin['PLUGIN:' . $val] = 'PLUGIN:' . $val; } $list_files = array_merge(array('none'=>'none'), $list_files_template, $list_files_plugin); unset($files_template); unset($list_files_template); unset($files_plugin); unset($list_files_plugin); $CI->load->helper('form'); $form = ''; $url_opt = getinfo('siteurl') . 'admin/plugin_options/modules/'; echo ' <script> function newLink(id, val) { var u = document.getElementById("mod_url_" + id); if (val == "none") { u.innerHTML = "Нет опций"; } else { u.innerHTML = "<a href=\"' . $url_opt . '" + id + "/" + val + "\" target=\"_blank\">Опции</a>"; } } </script> '; # проходимся по $MODULE, потому что он определен modules_set foreach ($MODULES as $mod) { $form .= '<h2>' . $mod['name'] . ' ('. $mod['id'] . ')</h2>'; // 'file_name'=>'', // подключаемый require файл // 'php_code'=>'', // можно произвольный php указать $v = isset($modules[$mod['id']]['file_name']) ? $modules[$mod['id']]['file_name'] : ''; if (!$v or $v == 'none') $form .= '<p id="mod_url_' . $mod['id'] . '">Нет опций</p>'; else $form .= '<p id="mod_url_' . $mod['id'] . '"><a href="' . $url_opt . $mod['id'] . '/' . $v .'" target="_blank">Опции</a></p>'; $form .= NR . '<p><label><strong>' . t('Файл', __FILE__) . '</strong> ' . form_dropdown('fmoduless[' . $mod['id'] . '][file_name]', $list_files, $v, ' style="width: 650px;" onChange="newLink(\'' . $mod['id'] . '\', this.value)"') . '</label></p>'; $v = isset($modules[$mod['id']]['php_code']) ? $modules[$mod['id']]['php_code'] : ''; $form .= NR . '<p><strong>' . t('PHP', __FILE__) . '</strong><br/>' . '<textarea name="fmoduless[' . $mod['id'] . '][php_code]" style="width: 700px;">' . htmlspecialchars($v) . '</textarea></p>'; $form .= '<br>' . NR; } echo '<form action="" method="post">' . mso_form_session('f_session_id'); echo $form; echo '<input type="submit" name="f_submit" value="' . t('Сохранить изменения', 'plugins') . '" style="margin: 25px 0 5px 0;">'; echo '</form>'; ?>