From 445c95ad461e1a739d6d4d37806f829c5857b435 Mon Sep 17 00:00:00 2001 From: Samuel Georges Date: Wed, 6 May 2015 18:44:48 +1000 Subject: [PATCH] Fixes an issue where using invalid CSS in brand settings completely breaks the backend --- modules/backend/models/BrandSettings.php | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/modules/backend/models/BrandSettings.php b/modules/backend/models/BrandSettings.php index 817e8b30c..dbab84a09 100644 --- a/modules/backend/models/BrandSettings.php +++ b/modules/backend/models/BrandSettings.php @@ -5,6 +5,7 @@ use Lang; use Model; use Cache; use Less_Parser; +use Exception; /** * Backend settings that affect all users @@ -81,8 +82,14 @@ class BrandSettings extends Model return Cache::get(self::CACHE_KEY); } - $customCss = self::compileCss(); - Cache::forever(self::CACHE_KEY, $customCss); + try { + $customCss = self::compileCss(); + Cache::forever(self::CACHE_KEY, $customCss); + } + catch (Exception $ex) { + $customCss = '/* ' . $ex->getMessage() . ' */'; + } + return $customCss; } @@ -108,8 +115,8 @@ class BrandSettings extends Model $parser->ModifyVars($vars); $parser->parse( - File::get(base_path().'/modules/backend/models/brandsettings/custom.less') - . self::get('custom_css') + File::get(base_path().'/modules/backend/models/brandsettings/custom.less') . + self::get('custom_css') ); $css = $parser->getCss();