From 336e784ca51d9e2bc35b60cdc0f3f466caabba03 Mon Sep 17 00:00:00 2001 From: gRoussac Date: Thu, 28 Nov 2013 15:32:19 +0100 Subject: [PATCH] [*] CORE : Throw Exception when no theme selected --- classes/exception/PrestaShopException.php | 5 +++-- config/config.inc.php | 4 +++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/classes/exception/PrestaShopException.php b/classes/exception/PrestaShopException.php index 465bf0ddd..7cc56f203 100644 --- a/classes/exception/PrestaShopException.php +++ b/classes/exception/PrestaShopException.php @@ -66,14 +66,15 @@ class PrestaShopExceptionCore extends Exception echo ''.((isset($trace['class'])) ? $trace['class'] : '').((isset($trace['type'])) ? $trace['type'] : '').$trace['function'].''; echo ' - [line '.$current_line.' - '.$relative_file.']'; - if (count($trace['args'])) + if (isset($trace['args']) && count($trace['args'])) echo ' - ['.count($trace['args']).' Arguments]'; else echo ' - [0 Argument]'; if ($relative_file) $this->displayFileDebug($trace['file'], $trace['line'], $id); - $this->displayArgsDebug($trace['args'], $id); + if (isset($trace['args']) && count($trace['args'])) + $this->displayArgsDebug($trace['args'], $id); echo ''; } echo ''; diff --git a/config/config.inc.php b/config/config.inc.php index 763f3a135..2713c2a39 100644 --- a/config/config.inc.php +++ b/config/config.inc.php @@ -93,13 +93,15 @@ $context = Context::getContext(); try { $context->shop = Shop::initialize(); + if (Tools::isEmpty($theme_name = $context->shop->getTheme()) || !file_exists(_PS_ALL_THEMES_DIR_.$theme_name)) + throw new PrestaShopException('No theme selected'); } catch (PrestaShopException $e) { $e->displayMessage(); } -define('_THEME_NAME_', $context->shop->getTheme()); +define('_THEME_NAME_', $theme_name); define('__PS_BASE_URI__', $context->shop->getBaseURI()); /* Include all defines related to base uri and theme name */