first try to implement theming support, which currently does not work at all
This commit is contained in:
parent
97bba97049
commit
a11432db93
53 changed files with 33 additions and 2 deletions
|
@ -63,6 +63,15 @@ $sidebarTopMessage = '';
|
||||||
*/
|
*/
|
||||||
$sidebarBottomMessage = '';
|
$sidebarBottomMessage = '';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The HTML theme to use. With themes, you can give your semanticscuttle
|
||||||
|
* installation a new look.
|
||||||
|
*
|
||||||
|
* Themes are the folders in data/templates/
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
$theme = 'default';
|
||||||
|
|
||||||
|
|
||||||
/***************************************************
|
/***************************************************
|
||||||
|
|
|
@ -76,6 +76,9 @@ class SemanticScuttle_Model_Template
|
||||||
* Sets variables and includes the template file,
|
* Sets variables and includes the template file,
|
||||||
* causing it to be rendered.
|
* causing it to be rendered.
|
||||||
*
|
*
|
||||||
|
* Does not take care of themes and so.
|
||||||
|
* The include path must be set so the correct theme is used.
|
||||||
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public function parse()
|
public function parse()
|
||||||
|
|
|
@ -38,6 +38,14 @@ class SemanticScuttle_Service_Template extends SemanticScuttle_Service
|
||||||
*/
|
*/
|
||||||
protected $basedir;
|
protected $basedir;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The template theme to use.
|
||||||
|
* Set in constructor from $GLOBALS['theme']
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
protected $theme;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -64,6 +72,8 @@ class SemanticScuttle_Service_Template extends SemanticScuttle_Service
|
||||||
protected function __construct()
|
protected function __construct()
|
||||||
{
|
{
|
||||||
$this->basedir = $GLOBALS['TEMPLATES_DIR'];
|
$this->basedir = $GLOBALS['TEMPLATES_DIR'];
|
||||||
|
$this->theme = $GLOBALS['theme'];
|
||||||
|
//FIXME: verify the theme exists
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -77,16 +87,25 @@ class SemanticScuttle_Service_Template extends SemanticScuttle_Service
|
||||||
*
|
*
|
||||||
* @return SemanticScuttle_Model_Template Template object
|
* @return SemanticScuttle_Model_Template Template object
|
||||||
*/
|
*/
|
||||||
function loadTemplate($template, $vars = null)
|
public function loadTemplate($template, $vars = null)
|
||||||
{
|
{
|
||||||
if (substr($template, -4) != '.php') {
|
if (substr($template, -4) != '.php') {
|
||||||
$template .= '.php';
|
$template .= '.php';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$oldIncPath = get_include_path();
|
||||||
|
set_include_path(
|
||||||
|
$this->basedir . $this->theme
|
||||||
|
. PATH_SEPARATOR . $this->basedir . 'default'
|
||||||
|
);
|
||||||
|
|
||||||
$tpl = new SemanticScuttle_Model_Template(
|
$tpl = new SemanticScuttle_Model_Template(
|
||||||
$this->basedir .'/'. $template, $vars, $this
|
$template, $vars, $this
|
||||||
);
|
);
|
||||||
$tpl->parse();
|
$tpl->parse();
|
||||||
|
|
||||||
|
set_include_path($oldIncPath);
|
||||||
|
|
||||||
return $tpl;
|
return $tpl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue