Merge pull request #483 from kijin/pr/loadfile-improvements

FrontEndFileHandler 개선 및 LESS/SCSS 스타일시트 지원
This commit is contained in:
Kijin Sung 2016-05-05 20:26:19 +09:00
commit dfc72bf565
27 changed files with 1241 additions and 629 deletions

View file

@ -699,6 +699,7 @@ class adminAdminController extends admin
Rhymix\Framework\Config::set('session.delay', $vars->delay_session === 'Y');
Rhymix\Framework\Config::set('session.use_db', $vars->use_db_session === 'Y');
Rhymix\Framework\Config::set('view.minify_scripts', $vars->minify_scripts ?: 'common');
Rhymix\Framework\Config::set('view.concat_scripts', $vars->concat_scripts ?: 'none');
Rhymix\Framework\Config::set('view.gzip', $vars->use_gzip === 'Y');
// Save

View file

@ -530,6 +530,7 @@ class adminAdminView extends admin
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('concat_scripts', Rhymix\Framework\Config::get('view.concat_scripts'));
Context::set('use_gzip', Rhymix\Framework\Config::get('view.gzip'));
$this->setTemplateFile('config_advanced');

View file

@ -81,11 +81,17 @@ $lang->about_server_ports = 'If your web server does not use 80 for HTTP or 443
$lang->use_db_session = 'Use Session DB';
$lang->about_db_session = 'This setting will use PHP session as DB during authentication. For the Websites which do not use web server frequently, you can uncheck this setting to improve response time. However, session DB will make it impossible to get current users, so you cannot use related functions.';
$lang->qmail_compatibility = 'Enable Qmail';
$lang->minify_scripts = 'Auto-minify scripts';
$lang->minify_scripts = 'Minify scripts';
$lang->cmd_minify_all = 'All files';
$lang->cmd_minify_common = 'Common files only';
$lang->cmd_minify_none = 'None';
$lang->about_minify_scripts = 'Automatically minify all CSS and JS scripts in the Core and all modules.';
$lang->concat_scripts = 'Combine scripts';
$lang->cmd_concat_none = 'Do not combine';
$lang->cmd_concat_css_only = 'Combine all CSS';
$lang->cmd_concat_js_only = 'Combine all JS';
$lang->cmd_concat_css_js = 'Combine both CSS and JS';
$lang->about_concat_scripts = 'Automatically combine CSS and JS scripts into as few files as possible. External scripts are not combined.';
$lang->use_gzip = 'gzip Compression';
$lang->delay_session = 'Delay session start';
$lang->about_delay_session = 'To improve performance when using a caching proxy server such as Varnish, do not issue sessions to visitors until they log in.<br>Selecting this option may cause view counts and visitor counts to become inaccurate.';

View file

@ -83,6 +83,12 @@ $lang->cmd_minify_all = '全てのファイルを圧縮';
$lang->cmd_minify_common = '共通のファイルを圧縮';
$lang->cmd_minify_none = '圧縮されません';
$lang->about_minify_scripts = 'コアとすべてのモジュールに含まれたCSS、JSファイルを自動的に圧縮(minify)して配信します。';
$lang->concat_scripts = 'スクリプト自動結合';
$lang->cmd_concat_none = '結合しません';
$lang->cmd_concat_css_only = 'CSSのみ結合';
$lang->cmd_concat_js_only = 'JSのみ結合';
$lang->cmd_concat_css_js = 'CSSやJSの両方を結合';
$lang->about_concat_scripts = 'CSS、JSファイルを一つにまとめて送信されます。外部からロードするスクリプトは、合わせてされません.';
$lang->use_gzip = 'gzip 圧縮';
$lang->delay_session = 'セッションの開始を遅延';
$lang->about_delay_session = 'Varnishなどのプロキシキャッシュサーバ使用時のパフォーマンスを向上させるために、ログインしていないユーザーには、認証セッションを付与しません。<br>このオプションを選択した場合、訪問者数とヒット集計が正確でない場合があります。';

View file

@ -85,7 +85,13 @@ $lang->minify_scripts = '스크립트 자동 압축';
$lang->cmd_minify_all = '모든 파일을 압축';
$lang->cmd_minify_common = '공통 파일만 압축';
$lang->cmd_minify_none = '압축하지 않음';
$lang->about_minify_scripts = '코어와 모든 모듈에 포함된 CSS, JS 파일들을 자동으로 압축(minify)하여 전송합니다.';
$lang->about_minify_scripts = 'CSS, JS 파일들을 자동으로 압축(minify)하여 전송합니다. 트래픽을 절약할 수 있습니다.';
$lang->concat_scripts = '스크립트 합치기';
$lang->cmd_concat_none = '합치지 않음';
$lang->cmd_concat_css_only = 'CSS만 합침';
$lang->cmd_concat_js_only = 'JS만 합침';
$lang->cmd_concat_css_js = 'CSS와 JS를 모두 합침';
$lang->about_concat_scripts = 'CSS, JS 파일들을 하나로 합쳐서 전송합니다. 외부에서 로딩하는 스크립트는 합쳐지지 않습니다.';
$lang->use_gzip = 'gzip 압축';
$lang->delay_session = '세션 시작 지연';
$lang->about_delay_session = 'Varnish 등의 프록시 캐싱 서버 사용시 성능 개선을 위해, 로그인하지 않은 사용자에게는 인증 세션을 부여하지 않습니다.<br>이 옵션을 선택할 경우 방문자 수 및 조회수 집계가 정확하게 이루어지지 않을 수 있습니다.';

View file

@ -86,6 +86,17 @@
<p class="x_help-block">{$lang->about_minify_scripts}</p>
</div>
</div>
<div class="x_control-group">
<label class="x_control-label">{$lang->concat_scripts}</label>
<div class="x_controls">
<label for="concat_scripts_none" class="x_inline"><input type="radio" name="concat_scripts" id="concat_scripts_none" value="none" checked="checked"|cond="!contains('css', $concat_scripts) && !contains('js', $concat_scripts)" /> {$lang->cmd_concat_none}</label>
<label for="concat_scripts_css_only" class="x_inline"><input type="radio" name="concat_scripts" id="concat_scripts_css_only" value="css" checked="checked"|cond="$concat_scripts=='css'" /> {$lang->cmd_concat_css_only}</label>
<label for="concat_scripts_js_only" class="x_inline"><input type="radio" name="concat_scripts" id="concat_scripts_js_only" value="js" checked="checked"|cond="$concat_scripts=='js'" /> {$lang->cmd_concat_js_only}</label>
<label for="concat_scripts_css_js" class="x_inline"><input type="radio" name="concat_scripts" id="concat_scripts_css_js" value="css,js" checked="checked"|cond="$concat_scripts=='css,js'" /> {$lang->cmd_concat_css_js}</label>
<br />
<p class="x_help-block">{$lang->about_concat_scripts}</p>
</div>
</div>
<div class="x_control-group">
<label class="x_control-label">{$lang->use_gzip}</label>
<div class="x_controls">

View file

@ -159,8 +159,15 @@ class editorController extends editor
$module_srl = $module_info->module_srl;
if($module_srl)
{
$oEditorModel = getModel('editor');
$editor_config = $oEditorModel->getEditorConfig($module_srl);
$editor_config = getModel('editor')->getEditorConfig($module_srl);
}
else
{
$editor_config = getModel('module')->getModuleConfig('editor');
}
if ($editor_config)
{
$content_style = $editor_config->content_style;
if($content_style)
{
@ -184,11 +191,16 @@ class editorController extends editor
}
}
}
$content_font = $editor_config->content_font;
$content_font_size = $editor_config->content_font_size;
$content_line_height = $editor_config->content_line_height;
$content_paragraph_spacing = $editor_config->content_paragraph_spacing;
$content_word_break = $editor_config->content_word_break;
Context::set('default_font_config', array(
'default_font_family' => $editor_config->content_font ?: 'inherit',
'default_font_size' => $editor_config->content_font_size ?: '13px',
'default_line_height' => $editor_config->content_line_height ?: '160%',
'default_paragraph_spacing' => $editor_config->content_paragraph_spacing ?: '0',
'default_word_break' => $editor_config->content_word_break ?: 'normal',
));
/*
$buff = array();
$buff[] = '<style> .xe_content {';
if ($content_font)
@ -215,6 +227,17 @@ class editorController extends editor
$buff[] = '.xe_content p { margin: 0 0 ' . ($content_paragraph_spacing ?: 0) . ' 0; }';
$buff[] = '</style>';
Context::addHtmlHeader(implode(' ', $buff));
*/
}
else
{
Context::set('default_font_config', array(
'default_font_family' => 'inherit',
'default_font_size' => '13px',
'default_line_height' => '160%',
'default_paragraph_spacing' => '0',
'default_word_break' => 'normal',
));
}
$content = $this->transComponent($content);