From 8183cc71170ce750ed274cead1489da8b76659df Mon Sep 17 00:00:00 2001 From: Ingo Schommer Date: Fri, 15 Apr 2011 10:34:05 +1200 Subject: [PATCH] BUGFIX Checking file existence in LeftAndMain->init() for TinyMCE's content_css settings to avoid unnecessary clientside loading of files --- admin/code/LeftAndMain.php | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/admin/code/LeftAndMain.php b/admin/code/LeftAndMain.php index 021e1128b..65978204d 100644 --- a/admin/code/LeftAndMain.php +++ b/admin/code/LeftAndMain.php @@ -169,7 +169,8 @@ class LeftAndMain extends Controller { $htmlEditorConfig = HtmlEditorConfig::get_active(); $htmlEditorConfig->setOption('language', i18n::get_tinymce_lang()); if(!$htmlEditorConfig->getOption('content_css')) { - $cssFiles = 'sapphire/admin/css/editor.css'; + $cssFiles = array(); + $cssFiles[] = 'sapphire/admin/css/editor.css'; // Use theme from the site config if(class_exists('SiteConfig') && ($config = SiteConfig::current_site_config()) && $config->Theme) { @@ -180,10 +181,15 @@ class LeftAndMain extends Controller { $theme = false; } - if($theme) $cssFiles .= ',' . THEMES_DIR . "/{$theme}/css/editor.css"; - else if(project()) $cssFiles .= ',' . project() . '/css/editor.css'; + if($theme) $cssFiles[] = THEMES_DIR . "/{$theme}/css/editor.css"; + else if(project()) $cssFiles[] = project() . '/css/editor.css'; + + // Remove files that don't exist + foreach($cssFiles as $k => $cssFile) { + if(!file_exists(BASE_PATH . '/' . $cssFile)) unset($cssFiles[$k]); + } - $htmlEditorConfig->setOption('content_css', $cssFiles); + $htmlEditorConfig->setOption('content_css', implode(',', $cssFiles)); } Requirements::css(SAPPHIRE_ADMIN_DIR . '/css/screen.css');