public static function smarty() { $instance = self::getInstance(); $conf = self::conf(); if (!isset($instance->smarty) || $instance->smarty === null) { include_once $conf->root_dir . '/system/lib/Smarty/libs/Smarty.class.php'; $smartyConnection = new \smarty(); $smartyConnection->template_dir = $conf->root_dir . '/temp/templates/'; $smartyConnection->compile_dir = $conf->root_dir . '/temp/templates_c/'; $smartyConnection->config_dir = $conf->root_dir . '/temp/configs/'; $smartyConnection->cache_dir = $conf->root_dir . '/temp/cache/'; $smartyConnection->debugging = $conf->smarty_debug; $smartyConnection->caching = TRUE; $smartyConnection->cache_lifetime = 30; $smartyConnection->plugins_dir = $conf->root_dir . '/system/lib/Smarty/libs/plugins'; $smartyConnection->compile_check = TRUE; $smartyConnection->force_compile = TRUE; $smartyConnection->registerObject('db', self::db()); $smartyConnection->registerResource('template', array('smarty_resource_template_source', 'smarty_resource_template_timestamp', 'smarty_resource_template_secure', 'smarty_resource_template_trusted')); $smartyConnection->registerResource('data', array('smarty_resource_data_source', 'smarty_resource_data_timestamp', 'smarty_resource_data_secure', 'smarty_resource_data_trusted')); return $instance->smarty = $smartyConnection; } else { return $instance->smarty; } }