'template_engine' => 'internal',
);
- public $smarty3_ldelim = '{{';
- public $smarty3_rdelim = '}}';
+ private $ldelim = array(
+ 'internal' => '',
+ 'smarty3' => '{{'
+ );
+ private $rdelim = array(
+ 'internal' => '',
+ 'smarty3' => '}}'
+ );
private $scheme;
private $hostname;
// replacing $stylesheet until later, we need to replace it now
// with another variable name
if($this->theme['template_engine'] === 'smarty3')
- $stylesheet = $this->smarty3_ldelim . '$stylesheet' . $this->smarty3_rdelim;
+ $stylesheet = $this->get_template_ldelim('smarty3') . '$stylesheet' . $this->get_template_rdelim('smarty3');
else
$stylesheet = '$stylesheet';
return $this->cached_profile_image[$avatar_image];
}
+ function get_template_engine() {
+ return $this->theme['template_engine'];
+ }
+
+ function set_template_engine($engine = 'internal') {
+
+ $this->theme['template_engine'] = 'internal';
+
+ switch($engine) {
+ case 'smarty3':
+ if(is_writable('view/smarty3/'))
+ $this->theme['template_engine'] = 'smarty3';
+ break;
+ default:
+ break;
+ }
+ }
+
+ function get_template_ldelim($engine = 'internal') {
+ return $this->ldelim[$engine];
+ }
+
+ function get_template_rdelim($engine = 'internal') {
+ return $this->rdelim[$engine];
+ }
}
}
$retval = $func();
if($retval) {
//send the administrator an e-mail
-
- $engine = get_app()->get_template_engine();
- get_app()->set_template_engine();
-
$email_tpl = get_intltext_template("update_fail_eml.tpl");
$email_msg = replace_macros($email_tpl, array(
'$sitename' => $a->config['sitename'],
'$update' => $x,
'$error' => sprintf( t('Update %s failed. See error logs.'), $x)
));
-
- get_app()->set_template_engine($engine);
-
$subject=sprintf(t('Update Error at %s'), $a->get_baseurl());
require_once('include/email.php');
$subject = email_header_encode($subject,'UTF-8');
* load/reload current theme info
*/
- set_template_engine($a); // reset the template engine to the default in case the user's theme doesn't specify one
+ $a->set_template_engine(); // reset the template engine to the default in case the user's theme doesn't specify one
$theme_info_file = "view/theme/".current_theme()."/theme.php";
if (file_exists($theme_info_file)){
}
function set_template_engine(&$a, $engine = 'internal') {
+// This function is no longer necessary, but keep it as a wrapper to the class method
+// to avoid breaking themes again unnecessarily
- $a->theme['template_engine'] = 'internal';
-
- if(is_writable('view/smarty3/')) {
- switch($engine) {
- case 'smarty3':
- $a->theme['template_engine'] = 'smarty3';
- break;
- default:
- break;
- }
- }
+ $a->set_template_engine($engine);
}
-function get_template_engine($a) {
- return $a->theme['template_engine'];
-}
\ No newline at end of file