From 9ca0e83cc39d67c240ea89a2395d3bdb170fb4f7 Mon Sep 17 00:00:00 2001 From: xue <> Date: Tue, 17 Jul 2007 11:54:59 +0000 Subject: Added THead requirement check --- framework/Web/UI/TClientScriptManager.php | 10 ++++++++++ framework/Web/UI/TPage.php | 3 +++ 2 files changed, 13 insertions(+) (limited to 'framework/Web/UI') diff --git a/framework/Web/UI/TClientScriptManager.php b/framework/Web/UI/TClientScriptManager.php index efb8ec17..5f924397 100644 --- a/framework/Web/UI/TClientScriptManager.php +++ b/framework/Web/UI/TClientScriptManager.php @@ -86,6 +86,16 @@ class TClientScriptManager extends TApplicationComponent $this->_page=$owner; } + /** + * @return boolean whether THead is required in order to render CSS and js within head + * @since 3.1.1 + */ + public function getRequiresHead() + { + return count($this->_styleSheetFiles) || count($this->_styleSheets) + || count($this->_headScriptFiles) || count($this->_headScripts); + } + /** * Registers Prado javascript by library name. See "Web/Javascripts/source/packages.php" * for library names. diff --git a/framework/Web/UI/TPage.php b/framework/Web/UI/TPage.php index 1a9f45c6..f368bc60 100644 --- a/framework/Web/UI/TPage.php +++ b/framework/Web/UI/TPage.php @@ -659,6 +659,9 @@ class TPage extends TTemplateControl foreach($this->_styleSheet->getJavaScriptFiles() as $url) $cs->registerHeadScriptFile($url,$url); } + + if($cs->getRequiresHead() && $this->getHead()===null) + throw new TConfigurationException('page_head_required'); } /** -- cgit v1.2.3