From 4951193444d795716f6f6c2d904ea89df8f39db8 Mon Sep 17 00:00:00 2001 From: andrey Date: Tue, 5 Feb 2002 16:46:05 +0000 Subject: [PATCH] Fix plugin directory access. --- Smarty.class.php | 12 ++++++------ Smarty_Compiler.class.php | 5 +++-- TODO | 3 --- libs/Smarty.class.php | 12 ++++++------ libs/Smarty_Compiler.class.php | 5 +++-- libs/plugins/function.html_select_date.php | 4 ++-- libs/plugins/function.html_select_time.php | 4 ++-- libs/plugins/modifier.date_format.php | 1 + plugins/function.html_select_date.php | 4 ++-- plugins/function.html_select_time.php | 4 ++-- plugins/modifier.date_format.php | 1 + 11 files changed, 28 insertions(+), 27 deletions(-) diff --git a/Smarty.class.php b/Smarty.class.php index 32e0372f..3472ae20 100644 --- a/Smarty.class.php +++ b/Smarty.class.php @@ -47,8 +47,6 @@ if (!defined('SMARTY_DIR')) { define('SMARTY_DIR', ''); } -//require_once SMARTY_DIR.'Smarty.addons.php'; - define('SMARTY_PHP_PASSTHRU', 0); define('SMARTY_PHP_QUOTE', 1); define('SMARTY_PHP_REMOVE', 2); @@ -543,7 +541,7 @@ class Smarty if ($this->_conf_obj === null) { /* Prepare the configuration object. */ if (!class_exists('Config_File')) - include_once SMARTY_DIR.'Config_File.class.php'; + require_once SMARTY_DIR.'Config_File.class.php'; $this->_conf_obj = new Config_File($this->config_dir); $this->_conf_obj->read_hidden = false; } else @@ -983,7 +981,7 @@ function _generate_debug_output() { \*======================================================================*/ function _compile_template($tpl_file, $template_source, &$template_compiled) { - include_once SMARTY_DIR.$this->compiler_class . '.class.php'; + require_once SMARTY_DIR.$this->compiler_class . '.class.php'; $smarty_compiler = new $this->compiler_class; @@ -1555,7 +1553,8 @@ function _run_insert_handler($args) } } - $plugin_file = $this->plugins_dir . + $plugin_file = SMARTY_DIR . + $this->plugins_dir . '/' . $type . '.' . @@ -1652,7 +1651,8 @@ function _run_insert_handler($args) return; } - $plugin_file = $this->plugins_dir . + $plugin_file = SMARTY_DIR . + $this->plugins_dir . '/resource.' . $type . '.php'; diff --git a/Smarty_Compiler.class.php b/Smarty_Compiler.class.php index e1c8730f..ff824bd8 100644 --- a/Smarty_Compiler.class.php +++ b/Smarty_Compiler.class.php @@ -340,7 +340,8 @@ class Smarty_Compiler extends Smarty { $found = false; $have_function = true; - $plugin_file = $this->plugins_dir . + $plugin_file = SMARTY_DIR . + $this->plugins_dir . '/compiler.' . $tag_command . '.php'; @@ -1233,7 +1234,7 @@ class Smarty_Compiler extends Smarty { \*======================================================================*/ function _load_filters() { - $plugins_dir = $this->plugins_dir; + $plugins_dir = SMARTY_DIR . $this->plugins_dir; $handle = opendir($plugins_dir); while ($entry = readdir($handle)) { $parts = explode('.', $entry, 3); diff --git a/TODO b/TODO index 608ba508..d4b75fc7 100644 --- a/TODO +++ b/TODO @@ -1,9 +1,6 @@ -* Ability to load multiple sections in one {config_load ...} * handle asp style tags in $php_handler * correctly capture nested php tag syntax in templates: "; ?> -* think about passing default structures to includes, i.e. {include - default=$foo}, then using $bar in included template, instead of $foo.bar * support implementations of prefiltes, mods, and others as class methods. * possibly implement default modifiers that apply to variables upon display * think about possibility of supporting something like {$data[foo].$key[bar]} diff --git a/libs/Smarty.class.php b/libs/Smarty.class.php index 32e0372f..3472ae20 100644 --- a/libs/Smarty.class.php +++ b/libs/Smarty.class.php @@ -47,8 +47,6 @@ if (!defined('SMARTY_DIR')) { define('SMARTY_DIR', ''); } -//require_once SMARTY_DIR.'Smarty.addons.php'; - define('SMARTY_PHP_PASSTHRU', 0); define('SMARTY_PHP_QUOTE', 1); define('SMARTY_PHP_REMOVE', 2); @@ -543,7 +541,7 @@ class Smarty if ($this->_conf_obj === null) { /* Prepare the configuration object. */ if (!class_exists('Config_File')) - include_once SMARTY_DIR.'Config_File.class.php'; + require_once SMARTY_DIR.'Config_File.class.php'; $this->_conf_obj = new Config_File($this->config_dir); $this->_conf_obj->read_hidden = false; } else @@ -983,7 +981,7 @@ function _generate_debug_output() { \*======================================================================*/ function _compile_template($tpl_file, $template_source, &$template_compiled) { - include_once SMARTY_DIR.$this->compiler_class . '.class.php'; + require_once SMARTY_DIR.$this->compiler_class . '.class.php'; $smarty_compiler = new $this->compiler_class; @@ -1555,7 +1553,8 @@ function _run_insert_handler($args) } } - $plugin_file = $this->plugins_dir . + $plugin_file = SMARTY_DIR . + $this->plugins_dir . '/' . $type . '.' . @@ -1652,7 +1651,8 @@ function _run_insert_handler($args) return; } - $plugin_file = $this->plugins_dir . + $plugin_file = SMARTY_DIR . + $this->plugins_dir . '/resource.' . $type . '.php'; diff --git a/libs/Smarty_Compiler.class.php b/libs/Smarty_Compiler.class.php index e1c8730f..ff824bd8 100644 --- a/libs/Smarty_Compiler.class.php +++ b/libs/Smarty_Compiler.class.php @@ -340,7 +340,8 @@ class Smarty_Compiler extends Smarty { $found = false; $have_function = true; - $plugin_file = $this->plugins_dir . + $plugin_file = SMARTY_DIR . + $this->plugins_dir . '/compiler.' . $tag_command . '.php'; @@ -1233,7 +1234,7 @@ class Smarty_Compiler extends Smarty { \*======================================================================*/ function _load_filters() { - $plugins_dir = $this->plugins_dir; + $plugins_dir = SMARTY_DIR . $this->plugins_dir; $handle = opendir($plugins_dir); while ($entry = readdir($handle)) { $parts = explode('.', $entry, 3); diff --git a/libs/plugins/function.html_select_date.php b/libs/plugins/function.html_select_date.php index da2ac20e..46113a2c 100644 --- a/libs/plugins/function.html_select_date.php +++ b/libs/plugins/function.html_select_date.php @@ -8,8 +8,8 @@ * Purpose: Prints the dropdowns for date selection. * ------------------------------------------------------------- */ -include_once dirname(__FILE__) . '/.make_timestamp.php'; -include_once dirname(__FILE__) . '/function.html_options.php'; +require_once SMARTY_DIR . 'plugins/.make_timestamp.php'; +require_once SMARTY_DIR . 'plugins/function.html_options.php'; function smarty_function_html_select_date($params, &$smarty) { /* Default values. */ diff --git a/libs/plugins/function.html_select_time.php b/libs/plugins/function.html_select_time.php index cbefef40..98f44905 100644 --- a/libs/plugins/function.html_select_time.php +++ b/libs/plugins/function.html_select_time.php @@ -8,8 +8,8 @@ * Purpose: Prints the dropdowns for time selection * ------------------------------------------------------------- */ -include_once dirname(__FILE__) . '/.make_timestamp.php'; -include_once dirname(__FILE__) . '/function.html_options.php'; +require_once SMARTY_DIR . 'plugins/.make_timestamp.php'; +require_once SMARTY_DIR . 'plugins/function.html_options.php'; function smarty_function_html_select_time($params, &$smarty) { /* Default values. */ diff --git a/libs/plugins/modifier.date_format.php b/libs/plugins/modifier.date_format.php index b3ae8115..4f332bcf 100644 --- a/libs/plugins/modifier.date_format.php +++ b/libs/plugins/modifier.date_format.php @@ -8,6 +8,7 @@ * Purpose: format datestamps via strftime * ------------------------------------------------------------- */ +require_once SMARTY_DIR . 'plugins/.make_timestamp.php'; function smarty_modifier_date_format($string, $format="%b %e, %Y") { return strftime($format, smarty_make_timestamp($string)); diff --git a/plugins/function.html_select_date.php b/plugins/function.html_select_date.php index da2ac20e..46113a2c 100644 --- a/plugins/function.html_select_date.php +++ b/plugins/function.html_select_date.php @@ -8,8 +8,8 @@ * Purpose: Prints the dropdowns for date selection. * ------------------------------------------------------------- */ -include_once dirname(__FILE__) . '/.make_timestamp.php'; -include_once dirname(__FILE__) . '/function.html_options.php'; +require_once SMARTY_DIR . 'plugins/.make_timestamp.php'; +require_once SMARTY_DIR . 'plugins/function.html_options.php'; function smarty_function_html_select_date($params, &$smarty) { /* Default values. */ diff --git a/plugins/function.html_select_time.php b/plugins/function.html_select_time.php index cbefef40..98f44905 100644 --- a/plugins/function.html_select_time.php +++ b/plugins/function.html_select_time.php @@ -8,8 +8,8 @@ * Purpose: Prints the dropdowns for time selection * ------------------------------------------------------------- */ -include_once dirname(__FILE__) . '/.make_timestamp.php'; -include_once dirname(__FILE__) . '/function.html_options.php'; +require_once SMARTY_DIR . 'plugins/.make_timestamp.php'; +require_once SMARTY_DIR . 'plugins/function.html_options.php'; function smarty_function_html_select_time($params, &$smarty) { /* Default values. */ diff --git a/plugins/modifier.date_format.php b/plugins/modifier.date_format.php index b3ae8115..4f332bcf 100644 --- a/plugins/modifier.date_format.php +++ b/plugins/modifier.date_format.php @@ -8,6 +8,7 @@ * Purpose: format datestamps via strftime * ------------------------------------------------------------- */ +require_once SMARTY_DIR . 'plugins/.make_timestamp.php'; function smarty_modifier_date_format($string, $format="%b %e, %Y") { return strftime($format, smarty_make_timestamp($string));