Reorganize general configuration in admin module

This commit is contained in:
Kijin Sung 2016-02-04 14:43:18 +09:00
parent f7191123fd
commit 673cd48db0
15 changed files with 587 additions and 667 deletions

View file

@ -61,30 +61,6 @@ class adminAdminView extends admin
$this->makeGnbUrl();
// Retrieve the list of installed modules
$db_info = Context::getDBInfo();
Context::set('time_zone_list', $GLOBALS['time_zone']);
Context::set('time_zone', $GLOBALS['_time_zone']);
Context::set('use_rewrite', $db_info->use_rewrite == 'Y' ? 'Y' : 'N');
Context::set('use_sso', $db_info->use_sso == 'Y' ? 'Y' : 'N');
Context::set('use_html5', $db_info->use_html5 == 'Y' ? 'Y' : 'N');
Context::set('use_spaceremover', $db_info->use_spaceremover ? $db_info->use_spaceremover : 'Y'); //not use
Context::set('qmail_compatibility', $db_info->qmail_compatibility == 'Y' ? 'Y' : 'N');
Context::set('minify_scripts', $db_info->minify_scripts ?: 'common');
Context::set('delay_session', $db_info->delay_session == 'Y' ? 'Y' : 'N');
Context::set('use_db_session', $db_info->use_db_session == 'N' ? 'N' : 'Y');
Context::set('use_mobile_view', $db_info->use_mobile_view == 'Y' ? 'Y' : 'N');
Context::set('use_ssl', $db_info->use_ssl ? $db_info->use_ssl : "none");
if($db_info->http_port)
{
Context::set('http_port', $db_info->http_port);
}
if($db_info->https_port)
{
Context::set('https_port', $db_info->https_port);
}
$this->checkEasyinstall();
}
@ -403,77 +379,120 @@ class adminAdminView extends admin
}
/**
* Display Configuration(settings) page
* Display General Settings page
* @return void
*/
function dispAdminConfigGeneral()
{
Context::loadLang('modules/install/lang');
$db_info = Context::getDBInfo();
Context::set('selected_lang', $db_info->lang_type);
if(strpos($db_info->default_url, 'xn--') !== FALSE)
{
$db_info->default_url = Context::decodeIdna($db_info->default_url);
}
Context::set('default_url', $db_info->default_url);
Context::set('langs', Context::loadLangSupported());
// site lock
Context::set('IP', $_SERVER['REMOTE_ADDR']);
if(!$db_info->sitelock_title) $db_info->sitelock_title = 'Maintenance in progress...';
if(!in_array('127.0.0.1', $db_info->sitelock_whitelist)) $db_info->sitelock_whitelist[] = '127.0.0.1';
if(!in_array($_SERVER['REMOTE_ADDR'], $db_info->sitelock_whitelist)) $db_info->sitelock_whitelist[] = $_SERVER['REMOTE_ADDR'];
$db_info->sitelock_whitelist = array_unique($db_info->sitelock_whitelist);
Context::set('remote_addr', $_SERVER['REMOTE_ADDR']);
Context::set('use_sitelock', $db_info->use_sitelock);
Context::set('sitelock_title', $db_info->sitelock_title);
Context::set('sitelock_message', htmlspecialchars($db_info->sitelock_message, ENT_COMPAT | ENT_HTML401, 'UTF-8', false));
$whitelist = implode("\r\n", $db_info->sitelock_whitelist);
Context::set('sitelock_whitelist', $whitelist);
if($db_info->admin_ip_list) $admin_ip_list = implode("\r\n", $db_info->admin_ip_list);
else $admin_ip_list = '';
Context::set('admin_ip_list', $admin_ip_list);
Context::set('lang_selected', Context::loadLangSelected());
// Default and enabled languages
Context::set('supported_lang', Rhymix\Framework\Lang::getSupportedList());
Context::set('default_lang', Rhymix\Framework\Config::get('locale.default_lang'));
Context::set('enabled_lang', Rhymix\Framework\Config::get('locale.enabled_lang'));
// Site title and HTML footer
$oModuleModel = getModel('module');
$config = $oModuleModel->getModuleConfig('module');
Context::set('site_title', escape($config->siteTitle));
Context::set('html_footer', escape($config->htmlFooter));
// Index module
$columnList = array('modules.mid', 'modules.browser_title', 'sites.index_module_srl');
$start_module = $oModuleModel->getSiteInfo(0, $columnList);
Context::set('start_module', $start_module);
// Thumbnail settings
$oDocumentModel = getModel('document');
$config = $oDocumentModel->getDocumentConfig();
Context::set('thumbnail_type', $config->thumbnail_type ?: 'crop');
// Default time zone
Context::set('timezones', Rhymix\Framework\DateTime::getTimezoneList());
Context::set('selected_timezone', Rhymix\Framework\Config::get('locale.default_timezone'));
// Mobile view
Context::set('use_mobile_view', $db_info->use_mobile_view == 'Y' ? 'Y' : 'N');
// Favicon and mobicon
$oAdminModel = getAdminModel('admin');
$favicon_url = $oAdminModel->getFaviconUrl();
$mobicon_url = $oAdminModel->getMobileIconUrl();
Context::set('favicon_url', $favicon_url.'?'.$_SERVER['REQUEST_TIME']);
Context::set('mobicon_url', $mobicon_url.'?'.$_SERVER['REQUEST_TIME']);
$oDocumentModel = getModel('document');
$config = $oDocumentModel->getDocumentConfig();
Context::set('thumbnail_type', $config->thumbnail_type);
$oModuleModel = getModel('module');
$config = $oModuleModel->getModuleConfig('module');
Context::set('siteTitle', $config->siteTitle);
Context::set('htmlFooter', htmlspecialchars($config->htmlFooter));
// embed filter
$oEmbedFilter = EmbedFilter::getInstance();
context::set('embed_white_object', implode(PHP_EOL, $oEmbedFilter->whiteUrlList));
context::set('embed_white_iframe', implode(PHP_EOL, $oEmbedFilter->whiteIframeUrlList));
$columnList = array('modules.mid', 'modules.browser_title', 'sites.index_module_srl');
$start_module = $oModuleModel->getSiteInfo(0, $columnList);
Context::set('start_module', $start_module);
Context::set('pwd', $pwd);
$this->setTemplateFile('config_general');
$security = new Security();
$security->encodeHTML('news..', 'released_version', 'download_link', 'selected_lang', 'module_list..', 'module_list..author..', 'addon_list..', 'addon_list..author..', 'start_module.');
}
/**
* Display Security Settings page
* @return void
*/
function dispAdminConfigSecurity()
{
// Load embed filter.
$oEmbedFilter = EmbedFilter::getInstance();
context::set('embedfilter_iframe', implode(PHP_EOL, $oEmbedFilter->whiteIframeUrlList));
context::set('embedfilter_object', implode(PHP_EOL, $oEmbedFilter->whiteUrlList));
$this->setTemplateFile('config_security');
}
/**
* Display Advanced Settings page
* @return void
*/
function dispAdminConfigAdvanced()
{
// Default URL
$default_url = Rhymix\Framework\Config::get('url.default');
if(strpos($default_url, 'xn--') !== FALSE)
{
$default_url = Context::decodeIdna($default_url);
}
Context::set('default_url', $default_url);
// SSL and ports
Context::set('use_ssl', Rhymix\Framework\Config::get('url.ssl') ?: 'none');
Context::set('http_port', Rhymix\Framework\Config::get('url.http_port'));
Context::set('https_port', Rhymix\Framework\Config::get('url.https_port'));
// Other settings
Context::set('use_mobile_view', Rhymix\Framework\Config::get('use_mobile_view'));
Context::set('use_rewrite', Rhymix\Framework\Config::get('use_rewrite'));
Context::set('use_sso', Rhymix\Framework\Config::get('use_sso'));
Context::set('delay_session', Rhymix\Framework\Config::get('session.delay'));
Context::set('use_db_session', Rhymix\Framework\Config::get('session.use_db'));
Context::set('minify_scripts', Rhymix\Framework\Config::get('view.minify_scripts'));
Context::set('use_gzip', Rhymix\Framework\Config::get('view.gzip'));
// Admin IP access control
$allowed_ip = Rhymix\Framework\Config::get('admin.allow');
Context::set('admin_allowed_ip', implode(PHP_EOL, $allowed_ip));
$denied_ip = Rhymix\Framework\Config::get('admin.deny');
Context::set('admin_denied_ip', implode(PHP_EOL, $denied_ip));
Context::set('remote_addr', RX_CLIENT_IP);
$this->setTemplateFile('config_advanced');
}
/**
* Display Sitelock Settings page
* @return void
*/
function dispAdminConfigSitelock()
{
Context::set('sitelock_locked', Rhymix\Framework\Config::get('lock.locked'));
Context::set('sitelock_title', escape(Rhymix\Framework\Config::get('lock.title')));
Context::set('sitelock_message', escape(Rhymix\Framework\Config::get('lock.message')));
$allowed_ip = Rhymix\Framework\Config::get('lock.allow');
if (!in_array('127.0.0.1', $allowed_ip)) $allowed_ip[] = '127.0.0.1';
if (!in_array(RX_CLIENT_IP, $allowed_ip)) $allowed_ip[] = RX_CLIENT_IP;
Context::set('sitelock_allowed_ip', implode(PHP_EOL, $allowed_ip));
Context::set('remote_addr', RX_CLIENT_IP);
$this->setTemplateFile('config_sitelock');
}
/**
* Display FTP Configuration(settings) page
* @return void
@ -491,7 +510,7 @@ class adminAdminView extends admin
//$security = new Security();
//$security->encodeHTML('ftp_info..');
}
/**
* Display Admin Menu Configuration(settings) page
* @return void