diff options
Diffstat (limited to 'framework/Web/Services')
-rw-r--r-- | framework/Web/Services/TPageService.php | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/framework/Web/Services/TPageService.php b/framework/Web/Services/TPageService.php index 0d8f28b9..239cf870 100644 --- a/framework/Web/Services/TPageService.php +++ b/framework/Web/Services/TPageService.php @@ -442,10 +442,15 @@ class TPageService extends TService }
else
$className='TPage';
- //allow the page constructor to change application settings before template is loaded
+
$this->_page=new $className();
- $this->_properties['Template']=$this->getTemplateManager()->getTemplateByFileName($path.self::PAGE_FILE_EXT);
- $this->_page->initializeProperties($this->_properties);
+
+ // initialize page properties with those set in configurations
+ foreach($this->_properties as $name=>$value)
+ $this->_page->setSubProperty($name,$value);
+
+ // set page template
+ $this->_page->setTemplate($this->getTemplateManager()->getTemplateByFileName($path.self::PAGE_FILE_EXT));
}
else
throw new THttpException(404,'pageservice_page_unknown',$this->_pagePath);
|