From 08b043e08ce03656288d6ca7f18ba14515d378c4 Mon Sep 17 00:00:00 2001 From: sebastian <sebastian@cfc7b370-4200-0410-a6e3-cb6bdb053afe> Date: Wed, 23 Feb 2005 12:42:48 +0000 Subject: [PATCH] *** empty log message *** --- .../modules/htmlUI/var/html/Smarty/BUGS | 7 - .../htmlUI/var/html/Smarty/COPYING.lib | 458 -- .../modules/htmlUI/var/html/Smarty/ChangeLog | 6908 ----------------- .../modules/htmlUI/var/html/Smarty/FAQ | 284 - .../modules/htmlUI/var/html/Smarty/INSTALL | 29 - .../modules/htmlUI/var/html/Smarty/NEWS | 865 --- .../modules/htmlUI/var/html/Smarty/README | 80 - .../htmlUI/var/html/Smarty/RELEASE_NOTES | 423 - .../modules/htmlUI/var/html/Smarty/TODO | 10 - .../var/html/Smarty/demo/configs/test.conf | 5 - .../htmlUI/var/html/Smarty/demo/index.php | 25 - .../var/html/Smarty/demo/templates/footer.tpl | 2 - .../var/html/Smarty/demo/templates/header.tpl | 6 - .../var/html/Smarty/demo/templates/index.tpl | 83 - .../html/Smarty/libs/Config_File.class.php | 389 - .../var/html/Smarty/libs/Smarty.class.php | 1938 ----- .../Smarty/libs/Smarty_Compiler.class.php | 2258 ------ .../htmlUI/var/html/Smarty/libs/debug.tpl | 64 - .../core.assemble_plugin_filepath.php | 67 - .../core.assign_smarty_interface.php | 43 - .../internals/core.create_dir_structure.php | 79 - .../internals/core.display_debug_console.php | 61 - .../libs/internals/core.get_include_path.php | 44 - .../libs/internals/core.get_microtime.php | 23 - .../libs/internals/core.get_php_resource.php | 80 - .../Smarty/libs/internals/core.is_secure.php | 56 - .../Smarty/libs/internals/core.is_trusted.php | 47 - .../libs/internals/core.load_plugins.php | 125 - .../internals/core.load_resource_plugin.php | 74 - .../internals/core.process_cached_inserts.php | 71 - .../core.process_compiled_include.php | 32 - .../libs/internals/core.read_cache_file.php | 111 - .../Smarty/libs/internals/core.rm_auto.php | 71 - .../html/Smarty/libs/internals/core.rmdir.php | 55 - .../internals/core.run_insert_handler.php | 71 - .../internals/core.smarty_include_php.php | 50 - .../libs/internals/core.write_cache_file.php | 95 - .../internals/core.write_compiled_include.php | 79 - .../core.write_compiled_resource.php | 35 - .../Smarty/libs/internals/core.write_file.php | 54 - .../Smarty/libs/plugins/block.textformat.php | 102 - .../Smarty/libs/plugins/compiler.assign.php | 38 - .../plugins/function.assign_debug_info.php | 39 - .../libs/plugins/function.config_load.php | 140 - .../Smarty/libs/plugins/function.counter.php | 79 - .../Smarty/libs/plugins/function.cycle.php | 102 - .../Smarty/libs/plugins/function.debug.php | 35 - .../Smarty/libs/plugins/function.eval.php | 48 - .../Smarty/libs/plugins/function.fetch.php | 220 - .../libs/plugins/function.html_checkboxes.php | 143 - .../libs/plugins/function.html_image.php | 142 - .../libs/plugins/function.html_options.php | 121 - .../libs/plugins/function.html_radios.php | 145 - .../plugins/function.html_select_date.php | 316 - .../plugins/function.html_select_time.php | 192 - .../libs/plugins/function.html_table.php | 137 - .../Smarty/libs/plugins/function.mailto.php | 143 - .../Smarty/libs/plugins/function.math.php | 82 - .../Smarty/libs/plugins/function.popup.php | 110 - .../libs/plugins/function.popup_init.php | 39 - .../libs/plugins/modifier.capitalize.php | 42 - .../html/Smarty/libs/plugins/modifier.cat.php | 33 - .../plugins/modifier.count_characters.php | 31 - .../plugins/modifier.count_paragraphs.php | 28 - .../libs/plugins/modifier.count_sentences.php | 28 - .../libs/plugins/modifier.count_words.php | 32 - .../libs/plugins/modifier.date_format.php | 48 - .../libs/plugins/modifier.debug_print_var.php | 56 - .../Smarty/libs/plugins/modifier.default.php | 31 - .../Smarty/libs/plugins/modifier.escape.php | 89 - .../Smarty/libs/plugins/modifier.indent.php | 27 - .../Smarty/libs/plugins/modifier.lower.php | 25 - .../Smarty/libs/plugins/modifier.nl2br.php | 35 - .../libs/plugins/modifier.regex_replace.php | 29 - .../Smarty/libs/plugins/modifier.replace.php | 29 - .../Smarty/libs/plugins/modifier.spacify.php | 29 - .../libs/plugins/modifier.string_format.php | 28 - .../Smarty/libs/plugins/modifier.strip.php | 33 - .../libs/plugins/modifier.strip_tags.php | 31 - .../Smarty/libs/plugins/modifier.truncate.php | 43 - .../Smarty/libs/plugins/modifier.upper.php | 25 - .../Smarty/libs/plugins/modifier.wordwrap.php | 28 - .../libs/plugins/outputfilter.localizer.php | 29 - .../plugins/outputfilter.trimwhitespace.php | 75 - .../plugins/postfilter.template_marker.php | 21 - .../plugins/shared.escape_special_chars.php | 30 - .../libs/plugins/shared.make_timestamp.php | 43 - .../var/html/Smarty/misc/smarty_icon.README | 6 - .../var/html/Smarty/misc/smarty_icon.gif | Bin 1102 -> 0 bytes .../htmlUI/var/html/Smarty/unit_test/README | 32 - .../var/html/Smarty/unit_test/config.php | 5 - .../configs/globals_double_quotes.conf | 1 - .../configs/globals_single_quotes.conf | 1 - .../Smarty/unit_test/smarty_unit_test.php | 10 - .../Smarty/unit_test/smarty_unit_test_gui.php | 10 - .../Smarty/unit_test/templates/assign_var.tpl | 1 - .../Smarty/unit_test/templates/constant.tpl | 1 - .../html/Smarty/unit_test/templates/index.tpl | 1 - .../Smarty/unit_test/templates/parse_math.tpl | 12 - .../unit_test/templates/parse_obj_meth.tpl | 8 - .../var/html/Smarty/unit_test/test_cases.php | 450 -- .../htmlUI/var/html/templates/ScratchPad.tpl | 72 - .../var/html/templates/editMetaData.tpl | 120 - .../examples/smarty-dynamic-fancygroup.tpl | 28 - .../examples/smarty-dynamic-green.tpl | 9 - .../templates/examples/smarty-dynamic.tpl | 134 - .../html/templates/fileBrowse/fileBrowse.tpl | 10 - .../var/html/templates/fileBrowse/objects.tpl | 58 - .../var/html/templates/fileBrowse/path.tpl | 12 - .../html/templates/fileBrowse/permissions.tpl | 68 - .../var/html/templates/fileBrowse/tree.tpl | 24 - .../htmlUI/var/html/templates/filedata.tpl | 15 - .../htmlUI/var/html/templates/footer.tpl | 6 - .../htmlUI/var/html/templates/header.tpl | 13 - .../htmlUI/var/html/templates/login.tpl | 19 - .../htmlUI/var/html/templates/main.tpl | 7 - .../htmlUI/var/html/templates/masterpanel.tpl | 48 - .../htmlUI/var/html/templates/menu_top.tpl | 12 - .../var/html/templates/popup/_close.tpl | 3 - .../html/templates/popup/_reload_parent.tpl | 4 - .../htmlUI/var/html/templates/popup/login.tpl | 20 - .../var/html/templates/popup/logout.tpl | 20 - .../var/html/templates/popup/signover.tpl | 20 - .../var/html/templates/script/basics.js.tpl | 58 - .../var/html/templates/script/clock.js.tpl | 167 - .../var/html/templates/script/search.js.tpl | 46 - .../htmlUI/var/html/templates/search.tpl | 46 - .../htmlUI/var/html/templates/statusbar.tpl | 30 - .../htmlUI/var/html/templates/styles.css | 160 - .../var/html/templates/sub/dynForm_plain.tpl | 56 - .../html/templates/sub/dynForm_sections.tpl | 79 - .../var/html/templates/sub/form_error.tpl | 1 - .../var/html/templates/sub/form_required.tpl | 10 - .../html/templates/sub/form_requirednote.tpl | 1 - .../htmlUI/var/html/templates/sub/x.tpl | 3 - .../htmlUI/var/html/templates/subjects.tpl | 88 - .../htmlUI/var/html/templates/systemPrefs.tpl | 6 - .../htmlUI/var/html/templates/uploadform.tpl | 9 - .../htmlUI/var/html/templates/userinfo.tpl | 11 - .../modules/htmlUI/var/html/templates_c/dummy | 0 140 files changed, 20639 deletions(-) delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/BUGS delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/COPYING.lib delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/ChangeLog delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/FAQ delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/INSTALL delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/NEWS delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/README delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/RELEASE_NOTES delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/TODO delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/demo/configs/test.conf delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/demo/index.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/demo/templates/footer.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/demo/templates/header.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/demo/templates/index.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/Config_File.class.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/Smarty.class.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/Smarty_Compiler.class.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/debug.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.assemble_plugin_filepath.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.assign_smarty_interface.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.create_dir_structure.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.display_debug_console.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.get_include_path.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.get_microtime.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.get_php_resource.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.is_secure.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.is_trusted.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.load_plugins.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.load_resource_plugin.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.process_cached_inserts.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.process_compiled_include.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.read_cache_file.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.rm_auto.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.rmdir.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.run_insert_handler.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.smarty_include_php.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_cache_file.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_compiled_include.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_compiled_resource.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_file.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/block.textformat.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/compiler.assign.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.assign_debug_info.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.config_load.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.counter.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.cycle.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.debug.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.eval.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.fetch.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_checkboxes.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_image.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_options.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_radios.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_select_date.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_select_time.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_table.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.mailto.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.math.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.popup.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.popup_init.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.capitalize.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.cat.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_characters.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_paragraphs.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_sentences.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_words.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.date_format.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.debug_print_var.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.default.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.escape.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.indent.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.lower.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.nl2br.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.regex_replace.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.replace.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.spacify.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.string_format.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.strip.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.strip_tags.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.truncate.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.upper.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.wordwrap.php delete mode 100755 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/outputfilter.localizer.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/outputfilter.trimwhitespace.php delete mode 100755 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/postfilter.template_marker.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/shared.escape_special_chars.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/shared.make_timestamp.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/misc/smarty_icon.README delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/misc/smarty_icon.gif delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/unit_test/README delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/unit_test/config.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/unit_test/configs/globals_double_quotes.conf delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/unit_test/configs/globals_single_quotes.conf delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/unit_test/smarty_unit_test.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/unit_test/smarty_unit_test_gui.php delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/assign_var.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/constant.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/index.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/parse_math.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/parse_obj_meth.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/Smarty/unit_test/test_cases.php delete mode 100755 livesupport/modules/htmlUI/var/html/templates/ScratchPad.tpl delete mode 100755 livesupport/modules/htmlUI/var/html/templates/editMetaData.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/examples/smarty-dynamic-fancygroup.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/examples/smarty-dynamic-green.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/examples/smarty-dynamic.tpl delete mode 100755 livesupport/modules/htmlUI/var/html/templates/fileBrowse/fileBrowse.tpl delete mode 100755 livesupport/modules/htmlUI/var/html/templates/fileBrowse/objects.tpl delete mode 100755 livesupport/modules/htmlUI/var/html/templates/fileBrowse/path.tpl delete mode 100755 livesupport/modules/htmlUI/var/html/templates/fileBrowse/permissions.tpl delete mode 100755 livesupport/modules/htmlUI/var/html/templates/fileBrowse/tree.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/filedata.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/footer.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/header.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/login.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/main.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/masterpanel.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/menu_top.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/popup/_close.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/popup/_reload_parent.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/popup/login.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/popup/logout.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/popup/signover.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/script/basics.js.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/script/clock.js.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/script/search.js.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/search.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/statusbar.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/styles.css delete mode 100644 livesupport/modules/htmlUI/var/html/templates/sub/dynForm_plain.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/sub/dynForm_sections.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/sub/form_error.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/sub/form_required.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/sub/form_requirednote.tpl delete mode 100755 livesupport/modules/htmlUI/var/html/templates/sub/x.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/subjects.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/systemPrefs.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/uploadform.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates/userinfo.tpl delete mode 100644 livesupport/modules/htmlUI/var/html/templates_c/dummy diff --git a/livesupport/modules/htmlUI/var/html/Smarty/BUGS b/livesupport/modules/htmlUI/var/html/Smarty/BUGS deleted file mode 100644 index 9f1a80f31..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/BUGS +++ /dev/null @@ -1,7 +0,0 @@ -Smarty is supported only in PHP 4.0.6 or later. - -Smarty versions previous to 2.0 require the PEAR libraries. Be sure to include -the path to the PEAR libraries in your php include_path. Config_file.class.php -uses the PEAR library for its error handling routines. PEAR comes with the PHP -distribution. Unix users check /usr/local/lib/php, windows users check -C:/php/pear. diff --git a/livesupport/modules/htmlUI/var/html/Smarty/COPYING.lib b/livesupport/modules/htmlUI/var/html/Smarty/COPYING.lib deleted file mode 100644 index 3b204400c..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/COPYING.lib +++ /dev/null @@ -1,458 +0,0 @@ - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations below. - - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. - - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. - - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. - - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. - - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. - - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. - - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. - - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it becomes -a de-facto standard. To achieve this, non-free programs must be -allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. - - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. - - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. - - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control compilation -and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. - - c) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. - - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply, -and the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License may add -an explicit geographical distribution limitation excluding those countries, -so that distribution is permitted only in or among countries not thus -excluded. In such case, this License incorporates the limitation as if -written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. - - END OF TERMS AND CONDITIONS diff --git a/livesupport/modules/htmlUI/var/html/Smarty/ChangeLog b/livesupport/modules/htmlUI/var/html/Smarty/ChangeLog deleted file mode 100644 index d4ce4d935..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/ChangeLog +++ /dev/null @@ -1,6908 +0,0 @@ -2004-10-02 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS: - fixed nocache-handling with nested includes. there was a logical error - in the replacement of internal nocache-tags to dynamic content that - lead to false results with deeply nested includes or with - nocache-blocks inside nocache-blocks. - - many thanks to Lars Jankowfsky for providing big help on reproducing - and tracking down this bug! - -2004-10-01 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - - better header for compiled includes (more in line with compiled - templates) - - - reuse cache_serials if a file is compiled more than once in one - process (force_compile) - - - don't print nocache-delimiters wenn already inside - process_cached_inserts() - -2004-09-29 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - switched from @count() to !empty() . this was pointed out a few times - by a few people with buggy error-handlers - - * libs/Smarty_Compiler.class.php: - added some property declarations - -2004-09-28 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - bumped up version number to reflect incompatibility in tempfiles of - 'core' vs. 'internals' - -2004-09-24 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.html_select_date.php: - fixed $start_year when no value for the year in $time is given. - -2004-09-21 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.html_table.php: - fixed handling of "inner"-attribute - - * libs/Smarty_Compiler.class.php: - fixed handling of object derefence inside backticks - -2004-09-20 Monte Ohrt <monte@ispi.net> - - * libs/debug.tpl: - add <head></head> tags - -2004-09-18 boots <jayboots@yahoo.com> - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/plugins/function.config_load.php - libs/plugins/function.debug.php - libs/plugins/function.fetch.php - libs/plugins/function.html_image.php: - Fixed \\r\\n line endings mistakenly introduced in last commit. d'oh. - -2004-09-16 boots <jayboots@yahoo.com> - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.assemble_plugin_filepath.php - libs/core/core.assign_smarty_interface.php - libs/core/core.create_dir_structure.php - libs/core/core.display_debug_console.php - libs/core/core.get_include_path.php - libs/core/core.get_microtime.php - libs/core/core.get_php_resource.php - libs/core/core.is_secure.php - libs/core/core.is_trusted.php - libs/core/core.load_plugins.php - libs/core/core.load_resource_plugin.php - libs/core/core.process_cached_inserts.php - libs/core/core.process_compiled_include.php - libs/core/core.read_cache_file.php - libs/core/core.rm_auto.php - libs/core/core.rmdir.php - libs/core/core.run_insert_handler.php - libs/core/core.smarty_include_php.php - libs/core/core.write_cache_file.php - libs/core/core.write_compiled_include.php - libs/core/core.write_compiled_resource.php - libs/core/core.write_file.php - libs/plugins/function.config_load.php - libs/plugins/function.debug.php - libs/plugins/function.fetch.php - libs/plugins/function.html_image.php: - Moved /libs/core to /libs/internals and created new constant, - SMARTY_CORE_DIR which defaults to SMARTY_DIR/internals. This should help - CVS and rsynch users butupgrades will require changes and this may affect - 3rd party plugins that use the /core dir. - -2004-09-15 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php: - moved $this->_num_const_regexp out of $this->_var_regexp and added it - to the places that affect $this->_var_regexp - - this should fix some problems parsing plugin-names endings with digits - -2004-09-14 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - update files to 2.6.6-dev - -2004-09-13 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS: - fixed typo - -2004-09-13 Monte Ohrt <monte@ispi.net> - - * (Smarty_2_6_5) - NEWS: - update NEWS file with parsing correction note - -2004-09-11 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.debug.php: - removed notice from {debug} - thanks to Peter Billen for pointing this one out! - -2004-09-11 Monte Ohrt <monte@ispi.net> - - * libs/Smarty_Compiler.class.php: - fix more object calling syntax issues - -2004-09-10 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - added $smarty->security_settings['ALLOW_CONSTANTS'] - including test-cases for them - -2004-09-09 Monte Ohrt <monte@ispi.net> - - * libs/Smarty_Compiler.class.php: - break down regex to digestable chunks, fix multiple param problem with - method calls, - add object method testing to unit_test cases - - * libs/Smarty_Compiler.class.php: - update code comment with more examples - - * libs/Smarty_Compiler.class.php: - allow objects in arbitrary param positions - - * libs/Smarty_Compiler.class.php: - fix object parameter regex, allow one level of object indirection - - * libs/Smarty_Compiler.class.php: - fix compile problem with numeric constants and math operator matching - -2004-09-07 Monte Ohrt <monte@ispi.net> - - * libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - update files to 2.6.5-dev - - * (Smarty_2_6_4) - NEWS: - update NEWS file with 2.6.4 header - -2004-08-31 Monte Ohrt <monte@ispi.net> - - * libs/Smarty_Compiler.class.php: - fix preg_quote - - * libs/Smarty_Compiler.class.php: - fix math in object params, clean up some regex on the way, change - preg_ delimiters to ~ to avoid character clashes with ! and % - -2004-08-30 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/Smarty_Compiler.class.php: - add $smarty.ldelim and $smarty.rdelim to smarty special var - -2004-08-29 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/core/core.write_file.php: - tempnam() seems to be borken on many installation. - - now we try tempnam first and if that fails we generate our own - temp-filename with uniqid() - -2004-08-23 Monte Ohrt <monte@ispi.net> - - * libs/plugins/modifier.capitalize.php: - dont use constant, use static var instead - - * libs/plugins/modifier.capitalize.php: - implement optional param to capitalize for digit behavior - - * libs/plugins/modifier.capitalize.php: - another commit to capitalize, taking special chars into account - -2004-08-23 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - cleaned up attribute-handling in Smarty_Compiler::_compile_foreach_start() - -2004-08-23 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/plugins/function.html_select_date.php - libs/plugins/modifier.capitalize.php: - fix capitalize modifier to not rely on buggy ucwords() func - -2004-08-20 Monte Ohrt <monte@ispi.net> - - * libs/plugins/function.html_select_date.php: - update version - - * NEWS - libs/plugins/function.html_select_date.php: - make time param work with negative timestamps, force year range to include - given date unless explicitly set - -2004-08-19 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/plugins/function.fetch.php: - fix bug with fetch, passing user/pass in url did not work - -2004-08-13 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - fixed handling of {foreachelse} and {sectionelse} that got borked with - the latest commit (v 1.330) - -2004-08-12 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php: - fixed occasional wrong error messages on mismatched tags when - {else}, {elseif}, {foreachelse} or {sectionelse} is involved - - thanks to Ooypunk for pointing me on this - -2004-08-12 Nuno Lopes <nunoplopes@sapo.pt> - - * docs/.cvsignore - docs/Makefile.in - docs/configure.in: - enable russian PDF builds - -2004-07-30 Nuno Lopes <nunoplopes@sapo.pt> - - * docs/configure.in: - typo - - * docs/Makefile.in - docs/README - docs/configure.in: - add make test_xml - this is usefull to detect XML problems - -2004-07-29 Nuno Lopes <nunoplopes@sapo.pt> - - * docs/configure.in: - avoid warnings in head - - * docs/.cvsignore - docs/Makefile.in - docs/README - docs/configure.in: - build pdf files - just type make pdf - -2004-07-27 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php: - fixed handling of methods arguments. - - thanks to Manfred Wischin for finding this one and providing the - conceptual fix. - -2004-07-23 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.html_checkboxes.php - libs/plugins/function.html_radios.php: - there was little flaw in smarty_function_html_radios() and - smarty_function_html_checkboxes(): - - the newly introduced assign-attribute was still added to the - tag-output as an extra-attribute. - - fixed. - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.load_plugins.php - libs/core/core.load_resource_plugin.php - libs/plugins/function.html_checkboxes.php - libs/plugins/function.html_image.php - libs/plugins/function.html_options.php - libs/plugins/function.html_radios.php - libs/plugins/function.html_select_date.php - libs/plugins/function.html_select_time.php - libs/plugins/modifier.date_format.php: - backed out renaming of _get_plugin_filepath() to get_plugin_filepath() - - we'll stick to _get_plugin_filepath() and look for a more viable - solution to be exposed to plugin-writers. - -2004-07-20 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php - libs/core/core.is_trusted.php - libs/plugins/compiler.assign.php: - Some fixes on PhpDocumentor comments. Thanks go to Ruben Vermeersch. - -2004-07-16 andreas halter <phpcvs@andreashalter.ch> - - * docs/de/bookinfo.xml - docs/de/getting-started.xml - docs/de/language-defs.ent - docs/de/language-snippets.ent - docs/de/preface.xml: - - updated for 2.6.3 - - updates for new build system - - added missing files - - corrections from users - - revcheck comments for all files - - big up to didou and nuno, brilliant work - - make test: ok - - make: ok - -2004-07-16 Nuno Lopes <nunoplopes@sapo.pt> - - * docs/de/getting-started.xml: - fix the revision tracking tag - the revision number might not be right. just check it, please - -2004-07-16 andreas halter <phpcvs@andreashalter.ch> - - * docs/de/getting-started.xml: - - updated version (incl revcheck comment) for revcheck testing - -2004-07-14 Monte Ohrt <monte@ispi.net> - - * libs/Smarty.class.php: - replace " with ' where literal strings are quoted (ever so slight speedup) - -2004-07-12 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/modifier.date_format.php: - changed call from $smarty->_get_plugin_filepath() to - $smarty->get_plugin_filepath() - - * libs/plugins/function.html_checkboxes.php - libs/plugins/function.html_image.php - libs/plugins/function.html_options.php - libs/plugins/function.html_radios.php - libs/plugins/function.html_select_date.php - libs/plugins/function.html_select_time.php: - renamed calls to $smarty->_get_plugin_filepath() to - $smarty->get_plugin_filepath() - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.load_plugins.php - libs/core/core.load_resource_plugin.php: - renamed Smarty::_get_plugin_filepath() to Smarty::get_plugin_filepath() - - * NEWS - libs/Smarty.class.php - libs/core/core.write_compiled_include.php - libs/core/core.write_compiled_resource.php - libs/core/core.write_file.php: - removed touch() call. changing the timestamp of the compiled-template - to the source template's may be irritating for certain - source-code-caches. now a newly compiled template gets the current - time as timestamp. - -2004-07-02 gerald croes <gerald@phpside.org> - - * docs/fr/getting-started.xml - docs/fr/preface.xml: - Fixed missing tags to be able to make doc again - - * docs/fr/preface.xml: - added the "is a good thing [TM]" as in en docs - - * docs/fr/getting-started.xml: - added ctags, updated screen => programm listing. - added the technical note founded on the en doc - -2004-07-02 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/plugins/function.html_checkboxes.php - libs/plugins/function.html_radios.php - libs/plugins/function.mailto.php: - add assign attribute to html_checkboxes and html_radios - -2004-07-01 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php: - removed use of get_include_filepath() inside - get_auto_filename(). thanks go to c960657 - - * NEWS - libs/Smarty_Compiler.class.php: - enhanced error-reporting for {foreach} - - * NEWS - libs/Smarty_Compiler.class.php: - fixed handling of digits inside tagnames. this problem slipped into - the regexps by adding support for numeric contants next to string - constants as variables. - -2004-06-27 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php: - fixed escaping of backslashes in Smarty_Compiler::_quote_replace() - -2004-06-23 Monte Ohrt <monte@ispi.net> - - * libs/plugins/modifier.date_format.php: - display date_format %e, %T and %D as expected for windows - -2004-06-17 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - changed version-number to 2.6.4-dev - -2004-06-16 Monte Ohrt <monte@ispi.net> - - * (Smarty_2_6_3) - NEWS: - update NEWS file with version number - -2004-06-09 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/plugins/modifier.escape.php: - added escapement of '</' to javascript escaping - -2004-06-08 gerald croes <gerald@phpside.org> - - * docs/fr/translation.xml: - Add other translators. - -2004-06-08 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - made the correct value of "use_sub_dirs" available to the compiler. - (not worth a NEWS-entry, i think) - -2004-06-01 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.fetch.php: - fix: proper initialistaion of $content. - thanks to Dmitry Koteroff for pointing this out. - -2004-05-29 Mehdi Achour <didou@keliglia.com> - - * docs/fr/translation.xml: - oups :) - - * docs/fr/translation.xml: - added translation file - -2004-05-28 Nuno Lopes <nunoplopes@sapo.pt> - - * docs/Makefile.in: - clean also file-entities.php - -2004-05-28 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/function.mailto.php: - added obfuscation of protocol-string in {mailto} when using - hex-encoding (thanks to bharat) - -2004-05-26 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php: - enhanced auto-generated filenames for templates_c and cache - - incremented Smarty::_version because the tempfiles' structure changed - a little - -2004-05-23 Mehdi Achour <didou@keliglia.com> - - * docs/fr/bookinfo.xml - docs/fr/getting-started.xml - docs/fr/preface.xml: - WS and added revcheck - -2004-05-21 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - fixed typo in error-messages - - * docs/de/language-snippets.ent - docs/fr/language-snippets.ent: - added empty language-snippets.ent to fix "make web" - -2004-05-12 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/plugins/modifier.escape.php: - add 'nonstd' escape modifier - -2004-05-07 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/plugins/block.textformat.php: - update textformat to not output wrap chars after last para - -2004-05-06 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/core/core.write_file.php: - use tempnam() instead of unqid() to create better temporary files in - smarty_core_write_file(). - - (thanks to xces for finding this race-condition and his work on - fixing it) - -2004-05-04 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - added check if for file_exists() to Smarty::_read_file() - -2004-04-30 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/plugins/modifier.escape.php: - add 'mail' attribute to escape modifier - -2004-04-20 Mehdi Achour <didou@keliglia.com> - - * docs/manual.xml.in: - added the language-snippets.ent file and started using entities for notes - under en/programmers/api-functions - -2004-04-18 Mehdi Achour <didou@keliglia.com> - - * docs/de/getting-started.xml - docs/fr/getting-started.xml: - new global entity for zend and php-accelerator - - * docs/fr/bookinfo.xml - docs/fr/getting-started.xml - docs/fr/preface.xml: - added myself as translator and added vim comments and xml tags - -2004-04-16 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS: - added entry for numeric constants - - * libs/Smarty_Compiler.class.php: - removed unused 2nd param in call to _parse_var() - - * libs/Smarty_Compiler.class.php: - added explanation for $this->_num_const_regexp - - * NEWS - libs/plugins/modifier.escape.php: - added escape type "decentity" to smarty_modifier_escape() - - * libs/Smarty_Compiler.class.php: - enabled numerical constants be parsed as statements. - (like {10} or {10|@range:12} ) - - * libs/Smarty_Compiler.class.php: - removed unused $smarty_compiler->_dvar_num_var_regexp - - * libs/Smarty.class.php: - reverted Stuff - - * libs/debug.tpl - libs/core/core.assemble_plugin_filepath.php - libs/core/core.read_cache_file.php - libs/core/core.write_file.php - libs/plugins/function.eval.php - libs/plugins/function.popup.php - libs/plugins/modifier.escape.php - libs/plugins/shared.make_timestamp.php: - reverted stuff - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/debug.tpl - libs/core/core.assemble_plugin_filepath.php - libs/core/core.read_cache_file.php - libs/core/core.write_file.php - libs/plugins/function.eval.php - libs/plugins/function.popup.php - libs/plugins/modifier.escape.php - libs/plugins/shared.make_timestamp.php: - Smarty_Compiler.class.php - -2004-04-15 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/core/core.write_compiled_include.php: - made smarty_core_write_compiled_include() php5-aware - - if someone knows a better way than patching the source with the - tokenizer, please stand up! - -2004-04-14 Nuno Lopes <nunoplopes@sapo.pt> - - * docs/Makefile.in: - remove file-entities.ent also - - * docs/.cvsignore - docs/Makefile.in - docs/README: - allow make revcheck - -2004-04-13 Nuno Lopes <nunoplopes@sapo.pt> - - * docs/configure.in: - do not need inipath - -2004-04-13 Mehdi Achour <didou@keliglia.com> - - * docs/TODO: - done - - * docs/configure.in - docs/manual.xml.in: - now the files entites are generated dynamically - -2004-04-12 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Config_File.class.php - libs/Smarty.class.php: - removed unused functionality to load a subset of lines from a file in - Smarty::_read_file() - - additionally removed a warning that is emitted since php-4.3.5 when - fread() is called on an empty file (with filesize()==0). thanks to - Andreas Streichardt who pointed this out. - - * NEWS - libs/core/core.is_secure.php: - smarty_core_is_secure() only checks the file for readability now, not - the directory where is in. - - * libs/Smarty.class.php: - removed unused security_setting 'ALLOW_CONSTANTS' - -2004-04-07 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.assign_debug_info.php - libs/plugins/function.cycle.php - libs/plugins/function.mailto.php: - removed trailing spaces - - * libs/Smarty.class.php: - removed unused $smarty->_error_msg - -2004-04-04 Nuno Lopes <nunoplopes@sapo.pt> - - * docs/configure.in: - fixing my crap - put build_date back on-line - -2004-04-03 Nuno Lopes <nunoplopes@sapo.pt> - - * docs/Makefile.in - docs/configure.in - docs/manual.xml.in: - trying to fix ru problems - -2004-03-30 Monte Ohrt <monte@ispi.net> - - * libs/core/core.display_debug_console.php: - fix problem with debug_tpl path and security - - * NEWS - libs/core/core.display_debug_console.php: - fix problem displaying debug console when $default_resource_type is not - "file:" - -2004-03-29 Mehdi Achour <didou@keliglia.com> - - * docs/TODO: - and finally, add a TODO here - - * docs/de/bookinfo.xml - docs/de/manual.sgml - docs/fr/bookinfo.xml - docs/fr/manual.xml: - translate bookinfo.xml and put back the translators - -2004-03-28 Mehdi Achour <didou@keliglia.com> - - * docs/manual.xml.in: - add global.ent and define some general entities - - * docs/de/bookinfo.xml - docs/de/getting-started.xml - docs/de/language-defs.ent - docs/de/preface.xml: - add new de files - - * docs/de/appendixes.sgml - docs/de/designers.sgml - docs/de/getting-started.sgml - docs/de/html-common.dsl - docs/de/preface.sgml - docs/de/programmers.sgml: - drop old de files - - * docs/fr/bookinfo.xml - docs/fr/getting-started.xml - docs/fr/manual.xml - docs/fr/preface.xml: - add ommited files - - * docs/fr/language-defs.ent: - split the french dir - - * docs/fr/appendixes.sgml - docs/fr/designers.sgml - docs/fr/getting-started.sgml - docs/fr/html-common.dsl - docs/fr/manual.sgml - docs/fr/preface.sgml - docs/fr/programmers.sgml: - drop old french files - - * docs/manual.xml.in: - let's put the new build system - -2004-03-26 Mehdi Achour <didou@keliglia.com> - - * docs/de/common.dsl - docs/de/html.dsl - docs/fr/common.dsl - docs/fr/html.dsl - docs/fr/php.dsl: - not needed anymore - -2004-03-24 Nuno Lopes <nunoplopes@sapo.pt> - - * docs/Makefile.in: - updated stylesheets - highlight PHP automatically - - * docs/Makefile.in - docs/html.dsl: - remove unneeded file - -2004-03-23 Nuno Lopes <nunoplopes@sapo.pt> - - * docs/version.ent.in: - remove this also - - * docs/getting-started.sgml: - remove this one too - - * docs/appendixes.sgml - docs/common.dsl - docs/designers.sgml - docs/html-common.dsl - docs/manual.sgml - docs/php.dsl - docs/preface.sgml - docs/programmers.sgml: - removing uneeded files - - * docs/.cvsignore: - commiting missing files for docbook - - * docs/.cvsignore - docs/Makefile.in - docs/configure.in - docs/manual.xml.in: - bundling docbook 4 - now make and make web works - -2004-03-23 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/function.config_load.php: - unrolled call to the is_compiled()-check to be able to supply the - correct resource_base_path for config_load. this avoids errors when - config-files are accessed where security is enabled. - - thanks to shuther for pointing out this bug. - -2004-03-20 Nuno Lopes <nunoplopes@sapo.pt> - - * docs/manual.xml.in: - fix build date - -2004-03-18 Messju Mohr <messju@lammfellpuschen.de> - - * libs/core/core.is_secure.php: - removed merging of $smarty->template_dir into $smarty->secure_dir - - the resource_base_path is considerd secure instead. this change should - have absolutely no impact on smarty's security's behaviour - -2004-03-18 Nuno Lopes <nunoplopes@sapo.pt> - - * docs/configure.in: - correcting non-existent var - - * docs/.cvsignore - docs/Makefile.in - docs/configure.in - docs/manual.xml.in - docs/version.ent.in: - generate build date - - * docs/.cvsignore - docs/Makefile.in - docs/README - docs/configure.in - docs/manual.xml.in: - new build/test system - -2004-03-18 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - moved setting of a default resource_base_path from - Smarty::_parse_resource_name() to Smarty::_fetch_resource_info() - - this shouldn't affect anything, since all calls to - _parse_resource_name() that are not done from within - _fetch_resource_info() all pass their own resource_base_path - -2004-03-17 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php: - removed '.' from the list of default resource_base_paths in - _parse_resource_name() - - this should only affect _parse_resource_name() for templates, not for - php-resources and not for config_files. the latter pass two their own - resource_base_path. - -2004-03-16 Mehdi Achour <didou@keliglia.com> - - * docs/appendixes.sgml - docs/getting-started.sgml - docs/preface.sgml: - adding editor comments - - * docs/appendixes.sgml - docs/getting-started.sgml: - cleaning words spacing, killing tabulations, using roles for - programlisting.. - -2004-03-15 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - simplified Smarty::clear_all_cache(); - -2004-03-12 boots <jayboots@yahoo.com> - - * docs/programmers.sgml: - Updated is_cached prototype to indicate proper return type. (thanks to - Geoffrey Hoffman) - -2004-03-11 Messju Mohr <messju@lammfellpuschen.de> - - * libs/core/core.assemble_plugin_filepath.php: - fixed little bug that prevented plugins filepaths that are found in - php's include_path (and not in one of the plugins_dirs) from being - cached in the internal plugins-filepath-cache - -2004-03-01 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: - update include_php docs:wq - :q - - * docs/appendixes.sgml: - update componentized template example to something useful - -2004-02-24 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php: - _parse_resource_name() returned true on non-existant absolute - paths. This caused a warning on _fetch_resource_info() when used in - conjunction with template_exists(). It should be fixed now without - negative effects. - -2004-02-24 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: - one more typo - - * docs/designers.sgml: - fix typo - -2004-02-24 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/core/core.is_secure.php: - smarty_resource_*_secure got &$smarty passed errornously as 3rd - parameter and not as 2nd. this is fixed. - -2004-02-23 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS: - fix handling of integer values like width and delay im - smarty_function_popup() - - * libs/plugins/function.popup.php: - fixed handling of integer-attributes - - * libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - updated version to 2.6.3-dev - -2004-02-22 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.html_select_date.php: - removed notice on html_select_date with the month_empty-attribute - - * libs/plugins/function.mailto.php: - removed 2 notices of undefined vars (thanks Cit) - -2004-02-17 Monte Ohrt <monte@ispi.net> - - * NEWS: - add header - - * (Smarty_2_6_2) - libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - change some info in headers, remove fluff - -2004-02-13 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/function.html_select_date.php: - correctly handle partially empty dates (like "2004--" or "-12-"). - - * docs/programmers.sgml: - learned something about <note> and sgml and applied this to the - use.sub.dirs-section :) - - * docs/designers.sgml: - changed attribute-name "checked" to "selected" in the docs for - html_radios and html_checkboxes. "checked" is deprecated for ages - AFAIK and selected is recommended for consistency with {html_options} - - * docs/programmers.sgml: - added note about use_sub_dirs and Smarty-2.6.2 . - fixed markup for section about clear_compiled_tpl() . - -2004-02-12 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Config_File.class.php: - YES and NO should not be booleanized inside triple-quotes in a - config-file. this behaviour changed by accident in 2.6.1 and is now - reverted to pre-2.6.1 behaviour - -2004-02-10 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Config_File.class.php: - fixed slurping of a the next line following a triple-quoted value in a - config-file - -2004-02-07 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Config_File.class.php: - avoid @-operator for handling empty lines in Config_File.class.php - - * libs/Smarty_Compiler.class.php: - removed two notices from Smarty_Compiler::_parse_is_expr() - (thanks shuther!) - - * NEWS - libs/Smarty.class.php: - changed default for use_sub_dirs to false - - * libs/plugins/function.mailto.php: - removed notice of undefined variable. (thanks shuther!) - -2004-01-29 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - added file and line-number-information to error-messages regarding - assigned objects an an error messages regarding modifiers with - security. - -2004-01-27 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - removed use of temporary var $_params in compiled code of block-plugins - - * NEWS - libs/plugins/function.popup.php: - fixed quoting of values in smarty_function_popup() - -2004-01-25 Messju Mohr <messju@lammfellpuschen.de> - - * docs/programmers.sgml: - documented parameters of Smarty::clear_compiled_tpl() - - * libs/Smarty_Compiler.class.php: - Smarty_Compiler::_syntax_error() uses Smarty::_trigger_fatal_error() now - instead of the trigger_error()-function - - * libs/Smarty.class.php: - Smarty::_trigger_fatal_error() uses Smarty::trigger_error() now, - instead of the native trigger_error()-function - - * libs/Smarty_Compiler.class.php: - unrecognized custom-functions trigger an error at compile now, not at - display-time. - -2004-01-23 Monte Ohrt <monte@ispi.net> - - * docs/getting-started.sgml: - reword a paragraph - -2004-01-22 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.config_load.php: - removed emission of unnecessary notices for unavailable config-files - in config_load() - - * NEWS - libs/Config_File.class.php: - fixed handling of hidden sections in Config_File - -2004-01-21 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/function.config_load.php: - added handling of resources for {config_load} - -2004-01-19 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/function.html_table.php: - fixed bug when using arrays with tr_attr and td_attr in {html_table} - -2004-01-16 Monte Ohrt <monte@ispi.net> - - * NEWS: - add unit testing - - * NEWS - libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - update version numbers, add initial unit test directory - - * (Smarty_2_6_1) - libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - update version numbers for 2.6.1 release - -2004-01-16 Messju Mohr <messju@lammfellpuschen.de> - - * (Smarty_2_6_1) - NEWS - docs/programmers.sgml - libs/Smarty.class.php: - renamed $smarty->tpl_rror_reporting to $smarty->error_reporting - "tpl_" is a bit redundant here (it's a TemPLate-engine overall :) - -2004-01-15 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.html_image.php: - forgot to remove duplicate is_secure()-check - - * NEWS - libs/plugins/function.html_image.php: - fix: $smarty->security is now correctly handled - - minor optimizations: - core/core.is_secure.php is only included when needed - $dpi_default is only determined when needed - -2004-01-14 Messju Mohr <messju@lammfellpuschen.de> - - * docs/appendixes.sgml - docs/programmers.sgml: - removed suggestions to use extract() from the manual - - * docs/designers.sgml: - fixed typo - -2004-01-12 Messju Mohr <messju@lammfellpuschen.de> - - * docs/designers.sgml: - mention SCRIPT_NAME below {$smarty} reserved variable because it got - lost in the docs for $smarty->global_assign - - * docs/designers.sgml: - added docs for {$smarty.version} special variable - - * docs/programmers.sgml: - removed docs for $global_assign - - * docs/programmers.sgml: - added docs for tpl_error_reporting - - * docs/designers.sgml: - added docs for year_empty-, month_empty- and day_emtpy-attributes of - html_select_date. maybe an example is needed to better explain empty - values in YYY-MM-DD. - -2004-01-10 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - fixed handling of {php}-tags - -2004-01-10 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: - fix html_checkboxes examples - -2004-01-08 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/core/core.assemble_plugin_filepath.php: - added caching of requested paths to smarty_core_assemble_plugin_filepath() - - * NEWS: - fix handling of comments inside {php}- and {literal}-blocks - - * libs/Smarty_Compiler.class.php: - fixed handling of comments inside {php} and {literal} - -2004-01-06 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Config_File.class.php: - fixed bug handling triple-quotes in config-files - - * libs/Config_File.class.php: - fixed bugs with triple-quotes in config-files - thanks BRDude for finding them testing! - -2004-01-02 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - removed unnecessary param in call to _fetch_resource_info() - -2003-12-30 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - oops! removed tabs. - -2003-12-27 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php: - made $SCRIPT_NAME available again - changes default for request_use_auto_global to prefer autoglobals - - * libs/Smarty.class.php: - removed tabs and trailing spaces - - * NEWS - libs/Smarty_Compiler.class.php: - readded default_modifiers. who removed that? - -2003-12-23 Monte Ohrt <monte@ispi.net> - - * NEWS: - add portuguese docs - -2003-12-22 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: - fix counter example - -2003-12-19 Monte Ohrt <monte@ispi.net> - - * libs/Smarty.class.php: - add debug console persistance feature - -2003-12-19 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/block.textformat.php - libs/plugins/function.html_table.php - libs/plugins/function.popup.php: - removed extract(). enhanced parameter parsing. - - * libs/plugins/function.counter.php - libs/plugins/function.fetch.php - libs/plugins/function.popup_init.php - libs/plugins/modifier.capitalize.php - libs/plugins/modifier.cat.php - libs/plugins/modifier.date_format.php - libs/plugins/modifier.debug_print_var.php - libs/plugins/modifier.escape.php - libs/plugins/modifier.indent.php - libs/plugins/modifier.lower.php - libs/plugins/modifier.nl2br.php - libs/plugins/modifier.strip.php - libs/plugins/modifier.upper.php - libs/plugins/modifier.wordwrap.php - libs/plugins/outputfilter.trimwhitespace.php - libs/plugins/shared.escape_special_chars.php: - removed tabs. fixed indentiation. - - * libs/plugins/modifier.truncate.php: - removed tabs - - * libs/plugins/function.counter.php - libs/plugins/function.cycle.php: - removed extract() from parameter-parsing - -2003-12-17 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.html_select_date.php: - fix plugin-name in error message - - * libs/plugins/function.html_select_time.php: - remove extract-call from {html_select_time} - - * NEWS - libs/plugins/function.html_select_date.php: - allow single-digit days and months without smarty_make_timestamp() - this makes dates like "1968-11-6" work correctly since no strtotime() - is involved - - add warning when unknown parameter is passed - -2003-12-16 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php: - fix headers sent erroneously with cache_modified_check and fetch() - -2003-12-12 Monte Ohrt <monte@ispi.net> - - * libs/plugins/function.config_load.php: - move set_path() call below the conditional bracket - - * NEWS - libs/plugins/function.config_load.php: - fix config_load filepath bug - -2003-12-12 boots <jayboots@yahoo.com> - - * docs/designers.sgml: - Updated language.function.if with additional annotation and to fix error - that broke docs build process - -2003-12-11 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - little optimization for "is odd" and "is even" - -2003-12-11 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/Smarty_Compiler.class.php: - fix 'is even by' and 'is odd by' logic - -2003-12-11 Messju Mohr <messju@lammfellpuschen.de> - - * docs/designers.sgml: - update example-output of {mailto} - - * libs/plugins/function.mailto.php: - removed extract-call -> cleaner parameter-handling - - * libs/plugins/function.mailto.php: - fixed indentiation - - * TODO: - removed two done topics - -2003-12-11 boots <jayboots@yahoo.com> - - * docs/designers.sgml: - Updated language.function.if to describe qualifiers (thanks andre) - -2003-12-10 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/function.html_select_date.php: - added day_empty, month_empty, year_empty and all_empty attributes - to pass an undefined date use {html_select_date time="--" ...} - - * libs/plugins/function.html_select_date.php: - removed extract()-call - - * libs/plugins/function.html_select_date.php: - fixed indetiation - -2003-12-10 boots <jayboots@yahoo.com> - - * NEWS - docs/designers.sgml: - Added table to language.function.if to describe qualifiers - -2003-12-09 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.html_checkboxes.php - libs/plugins/function.html_options.php: - strict comparason didn't work in all cases. use type-casting now. - - * NEWS - libs/plugins/function.html_checkboxes.php - libs/plugins/function.html_options.php: - fix bug when comparing array-keys to "selected" in html_options and - html_checkboxes - - in_array() uses "strict" comparason now. - - * libs/plugins/function.html_checkboxes.php - libs/plugins/function.html_options.php - libs/plugins/function.html_radios.php: - removed tabs, fixed indentiation - -2003-12-08 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php: - add better checks for correctly nested tags when compiling - -2003-12-04 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php - libs/plugins/function.html_image.php: - fix: check $smarty->request_use_auto_globals at the last occurences of - HTTP_*_VARS - -2003-12-03 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php: - remove $global_assign property from Smarty and $global_assign-handling - from the constructor. the only visible change is, that $SCRIPT_NAME is - not available in the tempates anymore. $smarty.server.SCRIPT_NAME has - to be used from now. - -2003-12-03 boots <jayboots@yahoo.com> - - * docs/designers.sgml: - Fixed example for count_characters - -2003-12-01 boots <jayboots@yahoo.com> - - * docs/designers.sgml: - Added section "Escaping Smarty Parsing" under Basic Syntax. - -2003-12-01 Messju Mohr <messju@lammfellpuschen.de> - - * libs/core/core.create_dir_structure.php: - thought again about my latest commit and backed it out. - - * libs/core/core.create_dir_structure.php: - fix root-dir-handling on windows filepath - -2003-11-29 boots <jayboots@yahoo.com> - - * libs/plugins/function.config_load.php: - really make the fixes the last patch was supposed to do - - * libs/plugins/function.config_load.php: - removed tabs and killed trailing white-space - - * libs/plugins/function.config_load.php: - changed $smarty->_syntax_error to $smarty->trigger_error - -2003-11-27 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/modifier.debug_print_var.php: - remove warning in debug_print_var on php-resources - - * README: - fix version number - -2003-11-26 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - raise max_level for $smarty.config... to 3 to allow arrays of config-vars - -2003-11-25 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - changed version-tag to indicate incompatibility to older compiled - templates - -2003-11-24 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/compiler.assign.php - libs/plugins/function.assign.php: - move function.assign.php to compiler.assign.php - - * libs/core/core.get_include_path.php: - silence occasional warnings of open_basedir- and - safe_mode-restrictions in core.get_include_path.php - -2003-11-23 Messju Mohr <messju@lammfellpuschen.de> - - * libs/core/core.write_compiled_resource.php - libs/core/core.write_file.php: - avoid touch()-ing of recently unlinked files by touch()-ing the - tempfile before rename instead of touch()-ing the resulting file after - rename. - - * NEWS - libs/Smarty.class.php: - add property $tpl_error_reporting - -2003-11-22 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.assign.php: - remove use of extract() in smarty_function_assign() - - * NEWS - libs/Smarty.class.php: - remove property $undefined. "null" is used literally instead - -2003-11-21 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - remove two E_NOTICES - -2003-11-20 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - change version to 2.6.1-dev - -2003-11-19 Monte Ohrt <monte@ispi.net> - - * (Smarty_2_6_0) - NEWS: - update NEWS file - - * (Smarty_2_6_0) - docs/designers.sgml - libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - change version numbers to 2.6.0 - -2003-11-19 Messju Mohr <messju@lammfellpuschen.de> - - * docs/designers.sgml - docs/de/designers.sgml - docs/fr/designers.sgml: - fix examples of escape-modifier (in docs, docs/de and docs/fr !) - -2003-11-18 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - move Smarty::quote_replace() to Smarty_Compiler::_quote_replace() - - * libs/Smarty.class.php: - removed extract-calls from _include()- and _eval()-wrappers - variables passed with {include_php} have to accessed as members of $params - now - -2003-11-17 Messju Mohr <messju@lammfellpuschen.de> - - * docs/designers.sgml: - fixed typo - -2003-11-13 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Config_File.class.php: - fix occasional notice - -2003-11-13 andreas halter <phpcvs@andreashalter.ch> - - * docs/de/designers.sgml: - - added cat modifier, thanks messju :-) - -2003-11-13 Monte Ohrt <monte@ispi.net> - - * (Smarty_2_6_0-RC3) - NEWS - libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - commit RC3 tags - -2003-11-13 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php: - fix handling of $var.key inside [] - - * libs/Smarty.class.php: - fix unnecessary loading of core.load_resource_plugin.php - - * (Smarty_2_6_0-RC3) - docs/fr/designers.sgml: - fixed example of html_table - -2003-11-11 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/core/core.process_cached_inserts.php: - fix handling of assign inside {insert}-tags - -2003-11-06 Messju Mohr <messju@lammfellpuschen.de> - - * libs/core/core.read_cache_file.php: - added $exp_time-parameter - - * docs/programmers.sgml: - added $exp_time to cache_handler_func-example - - * libs/Smarty.class.php - libs/core/core.write_cache_file.php: - added $exp_time-parameter of clear_cache() and clear_all_cache() to - cache_handler_func. - -2003-11-05 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Config_File.class.php: - fix handling if [...] inside triple-quotes in config-files - -2003-11-04 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - fixed little bug in _parse_resource_name() (jlgunter, messju) - -2003-11-03 andreas halter <phpcvs@andreashalter.ch> - - * docs/designers.sgml - docs/de/designers.sgml - docs/fr/designers.sgml: - - changed Smarty.php.class occurences to Smarty.class.php - -2003-10-29 boots <jayboots@yahoo.com> - - * docs/appendixes.sgml - docs/designers.sgml - docs/manual.sgml - docs/programmers.sgml - docs/de/appendixes.sgml - docs/de/designers.sgml - docs/de/programmers.sgml - docs/fr/appendixes.sgml - docs/fr/designers.sgml - docs/fr/getting-started.sgml - docs/fr/manual.sgml - docs/fr/preface.sgml - docs/fr/programmers.sgml: - Fixes to documentation syntax so that all content can be processed used - xsltproc docbook-xsl tools. In particular, fixes unescaped entities, - broken tags, unquoted attributes. - -2003-10-27 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php: - fix handling of simple-math-operators inside modifiers - -2003-10-25 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - removed unused property _output_type - removed unused param $tag_attrs of _parse_var_props() - cleaned up alignment of class-properties - -2003-10-23 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - removed notice in php-tag handling in Smarty_Compiler::_compile_file() - - * libs/Smarty_Compiler.class.php: - removed two occasional E_NOTICES from - Smarty_Compiler::_compile_include_php_tag() - - * NEWS - libs/core/core.create_dir_structure.php: - fix handling of trailing-slashes in open_basedir in - smarty_core_create_dir_structure() - -2003-10-20 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - elements inside `` are bracketed now inside the compiled-tpl. this - fixes some issues with simple-math inside backticks. - -2003-10-16 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: - update overlib docs, no working examples - -2003-10-12 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php - libs/core/core.is_secure.php: - move check for template_dir in secure_dir-array into core.is_secure.php - - this makes template_exists() work correctly with security=true even if - template_dir is not inside the secure_dir-array - -2003-10-11 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/shared.make_timestamp.php: - tightened check for YYYYMMDDHHMMSS-format. thanks konstantin for - pointing this out. - - removed a few tabs. - - * libs/Smarty_Compiler.class.php: - fix precedence of simple-math-operators before modifiers. - thanks dominik! - - * libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.assemble_plugin_filepath.php - libs/core/core.assign_smarty_interface.php - libs/core/core.create_dir_structure.php - libs/core/core.display_debug_console.php - libs/core/core.get_include_path.php - libs/core/core.get_microtime.php - libs/core/core.get_php_resource.php - libs/core/core.is_secure.php - libs/core/core.is_trusted.php - libs/core/core.load_plugins.php - libs/core/core.load_resource_plugin.php - libs/core/core.process_cached_inserts.php - libs/core/core.process_compiled_include.php - libs/core/core.read_cache_file.php - libs/core/core.rm_auto.php - libs/core/core.rmdir.php - libs/core/core.run_insert_handler.php - libs/core/core.smarty_include_php.php - libs/core/core.write_compiled_include.php - libs/core/core.write_compiled_resource.php - libs/core/core.write_file.php: - removed tabs from the main and the core/*.php files - -2003-10-08 Monte Ohrt <monte@ispi.net> - - * (Smarty_2_6_0-RC2) - NEWS - libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - update version numbers to RC2 - -2003-09-18 Messju Mohr <messju@lammfellpuschen.de> - - * docs/designers.sgml - docs/de/designers.sgml: - fixed description of cycle's advance-attribute - -2003-09-16 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php: - apply modifiers only once to section-loop and foreach-from attributes - -2003-09-15 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.write_cache_paths_file.php: - backed out _smarty_cached_paths-file-handling - - * libs/Smarty.class.php - libs/core/core.rm_auto.php: - fixed clear_compiled_tpl with explicit $tpl_file given - fixed return value of smarty_core_rm_auto() + Smarty::_unlink() - - * libs/Smarty.class.php: - little fix in _get_auto_filename() - -2003-09-14 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php - libs/core/core.assemble_auto_filename.php: - removed auto-filenames from path-cache. merged assemble_auto_filename - back into Smarty::_get_auto_filename() - -2003-09-12 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - fixed quoting of modifier parameters - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.get_php_resource.php - libs/core/core.load_plugins.php - libs/core/core.load_resource_plugin.php: - remove Smarty::_plugin_implementation_exists() - use php's native - is_callable() - -2003-09-11 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - silenced two notices acces HTTP_SERVER_VARS - -2003-09-10 andreas halter <phpcvs@andreashalter.ch> - - * docs/de/designers.sgml - docs/de/getting-started.sgml - docs/de/programmers.sgml: - - minor fixes (2 rep), slight wording changes - - jade transform problem fixed - -2003-09-08 andreas halter <phpcvs@andreashalter.ch> - - * docs/de/designers.sgml - docs/de/getting-started.sgml - docs/de/manual.sgml - docs/de/preface.sgml - docs/de/programmers.sgml: - all updated for 2.6.0 release, translated everything from 2_5_0 branch to - 20030908 - -2003-09-04 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - proper checking for files in _fetch_resource_info() - -2003-09-02 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php: - ignore {strip}/{/strip) inside {strip}-blocks - - * libs/plugins/function.mailto.php: - fixed 2 notices in smarty_function_mailto() - -2003-09-01 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - re-include cache_paths on multiple calls to fetch() to avoid - inconsistencies - at multiple calls to fetch() in one script - - * libs/Smarty_Compiler.class.php: - fixed handling of \r in {strip} - renamed $_trailing_lf to $_additional_newline - - * libs/Smarty_Compiler.class.php: - the weekly fix for {strip} :) - - * docs/designers.sgml: - fixed example for simple math. - -2003-08-29 Messju Mohr <messju@lammfellpuschen.de> - - * libs/core/core.assign_smarty_interface.php - libs/core/core.display_debug_console.php - libs/plugins/function.assign.php - libs/plugins/function.html_options.php - libs/plugins/function.html_table.php: - fixed PHPDocumentor-comments (thanks Konstantin) - - * libs/core/core.rmdir.php: - made rmdir a bit more optimistic. especially it now removes - directories correctly that where created accidently by "safe_mode=On - && $use_sub_dirs=true" - -2003-08-27 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php: - fixed removal of leading/trailing newlines in {strip}-blocks - -2003-08-25 Messju Mohr <messju@lammfellpuschen.de> - - * INSTALL: - added note emphasizing the introduction of "libs/" with 2.5.0 - - * NEWS - libs/plugins/modifier.escape.php: - fixed proper escaping of " and ' with escape:javascript - -2003-08-22 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/core/core.assemble_plugin_filepath.php: - fixed bug in traversal of $smarty->plugins_dir-array in - smarty_core_assemble_plugin_filepath(). the first matching plugin in - the path should be used, not the last one. - - * libs/core/core.read_cache_file.php: - discard $_cache_info when the cache should be regenerated - -2003-08-20 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php - libs/plugins/block.strip.php: - reverted {strip} from a block-plugin back into the compiler - - * docs/programmers.sgml: - fixed examples for register_function() and register_block() - - * libs/Smarty.class.php: - made template_exists() quiet when the template does not exist (thanks - to konstatin for pointing this out) - -2003-08-18 Monte Ohrt <monte@ispi.net> - - * docs/getting-started.sgml: - fix example title - - * docs/README - docs/getting-started.sgml: - change installation wording confusion - -2003-08-18 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php - libs/core/core.read_cache_file.php: - fixed unnecessary load of source in template_exists() and the - compile-check of smarty_core_read_cache_file() - - * libs/Smarty_Compiler.class.php: - allow section-, array- and object-dereference in $smarty-references - -2003-08-15 Messju Mohr <messju@lammfellpuschen.de> - - * docs/designers.sgml: - added parameter-descriptions for count_characters (thanks Konstantin - A. Pelepelin) - - fixed docs for {html_checkboxes} - -2003-08-14 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php - libs/core/core.read_cache_file.php: - fixed timestamp-check of config-files in smarty_core_read_cache_file() - - * libs/Smarty.class.php: - fixed typecasting for arrays in _parse_resource_name() - - * NEWS - libs/plugins/function.config_load.php: - fixes in config_load: - - handling of section-attribute - - reusing the same config-file multiple times - - serialization of config-data for php<4.2.0 (no var_export) - - many thanks to atu for pointing this out and for testing - -2003-08-13 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php - libs/core/core.smarty_include_php.php: - fixed problem with vars as attributes in {include_php} - -2003-08-13 Monte Ohrt <monte@ispi.net> - - * docs/README: - commit README file for documentation compiling - -2003-08-13 Messju Mohr <messju@lammfellpuschen.de> - - * libs/debug.tpl - libs/plugins/modifier.debug_print_var.php: - removed '\r' from debug_print_vars' output - properly escape vars in javascript-version of debug.tpl - -2003-08-11 Monte Ohrt <monte@ispi.net> - - * (Smarty_2_6_0_RC1) - NEWS - docs/designers.sgml - docs/html.dsl - docs/php.dsl - libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - get ready for 2.6.0-RC1 release - -2003-08-10 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php: - fixed status-header for cache_modified_check under cgi-sapi - -2003-08-09 Messju Mohr <messju@lammfellpuschen.de> - - * libs/core/core.is_secure.php - libs/core/core.is_trusted.php: - synced secure_dir-checking with trusted_dir-checking - - * libs/core/core.is_secure.php: - tightenend path checking in smarty_core_is_secure() - -2003-08-08 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - fix: proper nesting of $smarty->_cache_including flag in cascaded - cached/not-cached/fetched/inserted/foo-templates - - * libs/debug.tpl: - better escaping for $_debug_tpls[templates].filenames - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - removed redundant $smarty from Smarty::_smarty_include() - - * libs/debug.tpl: - proper escaping of filenames in debug-console (thanks to prossel). - -2003-08-07 Messju Mohr <messju@lammfellpuschen.de> - - * docs/programmers.sgml: - added docs for block-methods of registered objects - - * docs/programmers.sgml: - fixed typo in example for registered objects - - * docs/designers.sgml: - fixed exampls of html_image and html_checkboxes - - * libs/plugins/function.debug.php: - fixed {debug} and removed tabs in function.debug.php - - * docs/programmers.sgml: - fixed example for register_object - - * docs/designers.sgml - docs/programmers.sgml: - updated docs for capture, html_table, html_image and register_object - -2003-08-07 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml - docs/programmers.sgml: - add math and default_resource_type to docs - - * docs/getting-started.sgml: - add core to example, add tech note - -2003-08-07 Messju Mohr <messju@lammfellpuschen.de> - - * docs/manual.sgml - docs/fr/manual.sgml: - upd copyright in the docs - -2003-08-07 Monte Ohrt <monte@ispi.net> - - * docs/getting-started.sgml: - added core directory to install instructions - -2003-08-07 Messju Mohr <messju@lammfellpuschen.de> - - * docs/designers.sgml - docs/programmers.sgml: - added docs for php-functions as modifiers - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - better caching of attributes for $cacheable=false-plugins - - * docs/programmers.sgml: - added section "caching.cacheable" to the docs, explaining the usage of - the $cacheable-flag of the register_(block|compiler|function)-functions - - * libs/Smarty_Compiler.class.php: - fixed output of custom-functions with cached attributes - - * docs/programmers.sgml: - docs update on callbacks to the register_*-functions - -2003-08-06 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.process_compiled_include.php: - added optional parameter $cache_attrs to register_function() and - register_block(). $cache_attrs is an array containing attribute- names - that should be cached on calls to functions that have $cacheable set - to false. - - * libs/Smarty.class.php: - fixed bug in _run_mod_handler - - * libs/Smarty_Compiler.class.php: - fixed bug with autoload-handling of modifiers. thanks �ndre. - -2003-08-05 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - updated copyright notice - - * libs/Smarty.class.php - libs/core/core.load_plugins.php: - fixed bug that occurred when using the same not-cacheable plugin in - multiple includes - - * docs/programmers.sgml: - docs-update for plugins.writing - -2003-08-04 Messju Mohr <messju@lammfellpuschen.de> - - * docs/designers.sgml - docs/programmers.sgml: - updated docs for register_block_function(), block-functions, - $request_use_auto_globals and html_checkboxes - -2003-07-31 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - enabled registration of class-methods as callbacks for the - register_*-functions - - use: array('classname', 'method_name')) as callback - -2003-07-29 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - modifiers are resolved at compile-time now. _run_mod_handler() is - still used for modifiers with map_array=true (== no preceeding '@') - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.smarty_include.php: - moved _smarty_include() back into Smarty.class.php - - * libs/Smarty.class.php - libs/core/core.load_plugins.php: - prevent unnecessary calls to _read_file() in _is_compiled() - converted method-call to internal function-call in - smarty_core_load_plugins() - -2003-07-28 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - quote smarty-header properly to prevent resource-names from escaping from - the comment - -2003-07-25 Messju Mohr <messju@lammfellpuschen.de> - - * libs/core/core.create_dir_structure.php: - weakend race-condition and removed bogus error-message caused by that - in smarty_core_create_dir_structure(). - -2003-07-23 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php - libs/core/core.display_debug_console.php - libs/core/core.fetch_resource_info.php - libs/core/core.get_php_resource.php - libs/core/core.parse_resource_name.php - libs/core/core.process_cached_inserts.php - libs/core/core.read_cache_file.php - libs/core/core.run_insert_handler.php - libs/core/core.smarty_include.php - libs/core/core.smarty_include_php.php - libs/plugins/function.eval.php: - moved _fetch_resource_info and _parse_resource_name back into - Smarty.class.php - renamed smarty_include and smarty_eval wrappers to _include and _eval - -2003-07-17 Messju Mohr <messju@lammfellpuschen.de> - - * libs/core/core.process_compiled_include.php - libs/core/core.read_cache_file.php: - improved checking of compiled_include against cached-template with - non-cached-chunks - - * libs/core/core.write_compiled_include.php: - fixed too short open-tag - - * libs/plugins/function.eval.php: - fixed assign parameter for eval (must have gotton lost on its way to 2.5.0) - cleaned up indentiation - -2003-07-03 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - resurrected $foo->$bar syntax - - * libs/Smarty_Compiler.class.php: - i'm so stupid. kick me. - - * libs/Smarty_Compiler.class.php: - fixed initialisation of $this->_plugins in compile_block_tag() - -2003-07-03 Monte Ohrt <monte@ispi.net> - - * libs/Config_File.class.php: - add preg_quote delimiter - -2003-07-03 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - applied fix for {$var1->p1|modifier:$var2->p2}-syntax - thanks Dominik - -2003-07-02 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - fixed duplicate generation of arg-list in _compile_block_tag() - - * libs/Smarty_Compiler.class.php: - fixed off-by-one-error in nocache-tag-handling - -2003-06-30 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - backed out errornously committed support for $foo->$bar - - * libs/core/core.write_file.php: - fixed indentiation, silenced occasional warning - - * libs/plugins/function.html_image.php: - match first character of file-attribute against "/" instead of - DIRECTORY_SEPARATOR since it is a url-path and not a file-path. - - * libs/Smarty_Compiler.class.php - libs/core/core.write_file.php - libs/plugins/function.html_image.php: - libs/plugins/function.html_image.php - - * libs/Smarty_Compiler.class.php: - re-fixed cacheable_state-handling - - * libs/core/core.display_debug_console.php - libs/core/core.process_cached_inserts.php - libs/core/core.process_compiled_include.php - libs/core/core.run_insert_handler.php: - extincting $this out of smarty_core_*-functions - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - fixed handling of nocache-state - -2003-06-29 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php - libs/core/core.smarty_include.php - libs/core/core.smarty_include_php.php - libs/plugins/function.eval.php: - removed $this from smarty_include and smarty_include_php - added cleaner handling of $this to {eval} - - * libs/core/core.load_resource_plugin.php: - fixed inlude_once-call - - * docs/de/designers.sgml - docs/fr/designers.sgml: - fixed examples of html_radios and html_checkboxes in german and french docs - -2003-06-25 Monte Ohrt <monte@ispi.net> - - * libs/core/core.assemble_auto_filename.php - libs/core/core.write_cache_paths_file.php: - fix typo, fix write_cache_paths logic - - * libs/Smarty.class.php - libs/core/core.assemble_auto_filename.php: - fix SMARTY_COMPILE_DIR_SEP problem, make local var - -2003-06-24 Monte Ohrt <monte@ispi.net> - - * libs/Smarty.class.php - libs/core/core.assemble_auto_filename.php - libs/core/core.write_cache_paths_file.php: - fixed cache_paths bug, simplified filename assembly logic - -2003-06-24 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.html_image.php: - added parsing of forgotton param "basedir" - - * libs/Smarty_Compiler.class.php: - fixed $smarty.get-reference - - * libs/plugins/block.textformat.php: - removed warning - - * libs/Smarty_Compiler.class.php: - fixed value of _cacheable_state on compiler-startup - -2003-06-23 Monte Ohrt <monte@ispi.net> - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.write_cache_paths_file.php: - make cache_path per resource, fix a couple directory path issues - -2003-06-23 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - removed warning when compiling empty template - - * libs/core/core.write_compiled_include.php: - fixed bug in write_compiled_include - - * libs/core/core.assemble_plugin_filepath.php: - fixed warning - -2003-06-22 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.eval.php: - fixed propagation of $this into evald code in smarty_function_eval() - - * libs/core/core.write_cache_paths_file.php - libs/core/core.write_compiled_include.php: - fix in compiled-include-handling - - * libs/core/core.assemble_auto_filename.php - libs/core/core.assemble_plugin_filepath.php - libs/core/core.assign_smarty_interface.php - libs/core/core.create_dir_structure.php - libs/core/core.fetch_resource_info.php - libs/core/core.get_include_path.php - libs/core/core.get_microtime.php - libs/core/core.get_php_resource.php - libs/core/core.is_secure.php - libs/core/core.is_trusted.php - libs/core/core.load_plugins.php - libs/core/core.load_resource_plugin.php - libs/core/core.parse_resource_name.php - libs/core/core.read_cache_file.php - libs/core/core.rm_auto.php - libs/core/core.rmdir.php - libs/core/core.write_cache_file.php - libs/core/core.write_cache_paths_file.php - libs/core/core.write_compiled_include.php - libs/core/core.write_compiled_resource.php - libs/core/core.write_file.php - libs/plugins/modifier.date_format.php: - started moving from $this to $smarty in core.*.php - -2003-06-21 Monte Ohrt <monte@ispi.net> - - * libs/core/core.create_dir_structure.php - libs/core/core.write_file.php - libs/plugins/function.config_load.php: - fix more dir paths - - * NEWS - libs/Smarty.class.php - libs/core/core.assemble_auto_filename.php - libs/core/core.assemble_plugin_filepath.php - libs/core/core.fetch_resource_info.php - libs/core/core.get_php_resource.php - libs/core/core.parse_resource_name.php - libs/core/core.process_cached_inserts.php - libs/core/core.read_cache_file.php - libs/core/core.rm_auto.php - libs/core/core.rmdir.php - libs/core/core.run_insert_handler.php - libs/core/core.smarty_include.php - libs/core/core.smarty_include_php.php - libs/core/core.write_cache_file.php - libs/core/core.write_cache_paths_file.php - libs/core/core.write_compiled_include.php - libs/core/core.write_compiled_resource.php - libs/core/core.write_file.php - libs/plugins/function.config_load.php - libs/plugins/function.fetch.php - libs/plugins/function.html_image.php: - fix filepaths to core files to use DIRECTORY_SEPARATOR - -2003-06-21 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - fixed {plugin|modifier} syntax - - * libs/Smarty.class.php - libs/core/core.write_compiled_include.php: - fixed compiled include handling - -2003-06-21 Monte Ohrt <monte@ispi.net> - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.assemble_auto_filename.php - libs/core/core.assemble_plugin_filepath.php - libs/core/core.write_cache_paths_file.php: - added filepath caching - -2003-06-20 Monte Ohrt <monte@ispi.net> - - * libs/Smarty_Compiler.class.php: - update more varnames - - * libs/Smarty.class.php - libs/core/core.display_debug_console.php - libs/core/core.fetch_file_info.php - libs/core/core.fetch_resource_info.php - libs/core/core.get_php_resource.php - libs/core/core.parse_file_path.php - libs/core/core.parse_resource_name.php - libs/core/core.process_cached_inserts.php - libs/core/core.read_cache_file.php - libs/core/core.run_insert_handler.php - libs/core/core.smarty_include.php - libs/core/core.smarty_include_php.php - libs/core/core.write_compiled_resource.php - libs/core/core.write_compiled_template.php - libs/plugins/function.config_load.php: - refactored var naming to better reflect "resource" instead of "file" where - appropriate - -2003-06-19 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - updated version-number to 2.5.0-cvs - - * libs/core/core.write_cache_file.php: - omit is-cache_dir-writable-check if a cache_handler_function is in use - - * libs/core/core.smarty_include_php.php: - fixed comments in smarty_include_php - -2003-06-19 Monte Ohrt <monte@ispi.net> - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.display_debug_console.php - libs/core/core.smarty_include.php - libs/plugins/function.eval.php: - split up _compile_template to _compile_file and _compile_source, fix eval - function - VS: ---------------------------------------------------------------------- - - * libs/plugins/function.config_load.php: - fix logic for _is_compiled() - -2003-06-19 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php: - added optional assign-attribute to {capture}-tag - - * NEWS - libs/Smarty.class.php: - added $cacheable-parameter to register_compiler_function() - -2003-06-18 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.load_plugins.php - libs/core/core.process_compiled_include.php - libs/core/core.read_cache_file.php - libs/core/core.write_cache_file.php - libs/core/core.write_compiled_include.php: - added $cacheable-parameter to register_function() and register_block() - - * libs/Smarty.class.php: - append '.php' to all compiled templates regardless of the settings of - $use_sub_dirs - - * libs/Smarty.class.php - libs/core/core.read_cache_file.php: - fixed $file_path-parameters passed to smarty_core_fetch_file_info() - -2003-06-17 Monte Ohrt <monte@ispi.net> - - * NEWS: - fix name - - * libs/Smarty_Compiler.class.php: - change varnames to follow coding methods - - * NEWS - libs/Smarty_Compiler.class.php: - add math patch to core - -2003-06-17 Messju Mohr <messju@lammfellpuschen.de> - - * libs/core/core.smarty_include.php: - switched _process_template() to _is_compiled()-logic - -2003-06-17 Monte Ohrt <monte@ispi.net> - - * libs/Smarty.class.php: - fix _is_compiled logic - - * NEWS: - update news file - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - fix _run_mod_handler routine - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.display_debug_console.php - libs/core/core.fetch_file_info.php - libs/core/core.parse_file_path.php - libs/core/core.write_compiled_template.php - libs/plugins/function.config_load.php: - fix path problems, rename some varibles from "template" to "file" - -2003-06-16 Monte Ohrt <monte@ispi.net> - - * libs/core/core.fetch_file_info.php - libs/core/core.fetch_template_info.php: - rename file, commit - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.parse_file_path.php - libs/core/core.read_cache_file.php - libs/plugins/block.strip.php - libs/plugins/block.textformat.php - libs/plugins/compiler.config_load.php - libs/plugins/function.config_load.php - libs/plugins/function.eval.php - libs/plugins/function.fetch.php - libs/plugins/function.html_image.php: - fix config_load, compile fetched arrays to compile_dir, switch display - back to runtime. clean up var names and function names, split up compile - testing and compiling to separate funcs, rename some template_* functions - to - file_* functions and update logic so they can be used for file resources - other than templates. - -2003-06-16 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - fixed little bug in _compile_custom_tag() - -2003-06-16 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/core/core.assign_smarty_interface.php - libs/core/core.create_dir_structure.php - libs/core/core.display_debug_console.php - libs/core/core.fetch_template_info.php - libs/core/core.get_include_path.php - libs/core/core.get_microtime.php - libs/core/core.get_php_resource.php - libs/core/core.is_secure.php - libs/core/core.is_trusted.php - libs/core/core.load_plugins.php - libs/core/core.load_resource_plugin.php - libs/core/core.parse_file_path.php - libs/core/core.process_cached_inserts.php - libs/core/core.read_cache_file.php - libs/core/core.rm_auto.php - libs/core/core.rmdir.php - libs/core/core.run_insert_handler.php - libs/core/core.smarty_include.php - libs/core/core.smarty_include_php.php - libs/core/core.write_cache_file.php - libs/core/core.write_compiled_template.php - libs/core/core.write_file.php - libs/plugins/core.assign_smarty_interface.php - libs/plugins/core.create_dir_structure.php - libs/plugins/core.display_debug_console.php - libs/plugins/core.fetch_template_info.php - libs/plugins/core.get_include_path.php - libs/plugins/core.get_microtime.php - libs/plugins/core.get_php_resource.php - libs/plugins/core.is_secure.php - libs/plugins/core.is_trusted.php - libs/plugins/core.load_plugins.php - libs/plugins/core.load_resource_plugin.php - libs/plugins/core.parse_file_path.php - libs/plugins/core.process_cached_inserts.php - libs/plugins/core.read_cache_file.php - libs/plugins/core.rm_auto.php - libs/plugins/core.rmdir.php - libs/plugins/core.run_insert_handler.php - libs/plugins/core.smarty_include.php - libs/plugins/core.smarty_include_php.php - libs/plugins/core.write_cache_file.php - libs/plugins/core.write_compiled_template.php - libs/plugins/core.write_file.php: - move core files into their own directory under SMARTY_DIR, - remove abstraction function _execute_core_function - - * libs/Smarty_Compiler.class.php: - fix newline handling for template for all template tags - -2003-06-11 Monte Ohrt <monte@ispi.net> - - * libs/plugins/compiler.config_load.php: - add compiler function to cvs repository - -2003-06-11 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - added config-option "request_use_auto_globals" to make auto-globals be - used as request vars instead of HTTP_*_VARS - -2003-06-11 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/plugins/function.config_load.php: - make config vars compile statically - -2003-06-11 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php: - backed out newlines patch - - * NEWS - libs/Smarty_Compiler.class.php: - removed newlines in compiled templates after closing tags - -2003-06-10 Messju Mohr <messju@lammfellpuschen.de> - - * docs/de/designers.sgml: - fixed german note on html_image and disk-access - -2003-06-10 Monte Ohrt <monte@ispi.net> - - * libs/plugins/core.parse_file_path.php: - fix bug with resource_type resolving - -2003-06-09 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: - replace example with more practical one - -2003-06-08 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - added block-methods for registered objects - -2003-06-07 Messju Mohr <messju@lammfellpuschen.de> - - * docs/programmers.sgml: - fixed bug in documentation for $smarty->default_modifiers - -2003-06-06 Monte Ohrt <monte@ispi.net> - - * libs/plugins/core.parse_file_path.php: - fix problem with new default_resource_type changes - - * NEWS: - update NEWS file info - - * NEWS - libs/Smarty.class.php - libs/plugins/core.parse_file_path.php: - add default_resource_type, ignore 1 char resource names - - * NEWS - libs/Config_File.class.php: - fix bug where config file starts with hidden section - -2003-06-04 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/Smarty.class.php: - -** empty log message *** - -2003-06-03 Monte Ohrt <monte@ispi.net> - - * libs/plugins/function.html_image.php: - fix example in code comments - -2003-06-03 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/function.counter.php: - fixed behaviour of start=... for {counter} - -2003-06-02 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/function.counter.php: - fixed assign for {counter} - -2003-05-30 Monte Ohrt <monte@ispi.net> - - * libs/plugins/core.write_cache_file.php - libs/plugins/core.write_compiled_template.php: - add discrete error checking pertaining to $cache_dir - and $compile_dir, their existance and writability - -2003-05-28 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/function.html_table.php: - added params vdir, hdir and inner to html_table to allow looping over - the data in various directions - -2003-05-28 Monte Ohrt <monte@ispi.net> - - * libs/plugins/core.compile_template.php - libs/plugins/core.display_debug_console.php: - fix problem with security and debug.tpl file - -2003-05-23 Monte Ohrt <monte@ispi.net> - - * NEWS: - upd NEWS file - - * libs/Smarty_Compiler.class.php: - allow spaces in literal tags - -2003-05-22 Monte Ohrt <monte@ispi.net> - - * docs/fr/programmers.sgml: - fix special chars - -2003-05-19 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/Smarty_Compiler.class.php: - speed up compiled templates, hardcode plugin filepaths instead of - recalculate at runtime - -2003-05-19 Messju Mohr <messju@lammfellpuschen.de> - - * docs/designers.sgml: - fixed example of {html_image} - - * docs/designers.sgml: - fixed typo - -2003-05-12 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php - libs/plugins/core.read_cache_file.php - libs/plugins/core.smarty_include.php - libs/plugins/function.config_load.php: - fixed multiple redundant occurrences for 'config' and 'template' in - $smarty->_cache_info - -2003-05-10 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/core.create_dir_structure.php: - refurbished create_dir_structure to use '/' internally - - * libs/plugins/core.create_dir_structure.php: - fixed windows absolute-paths in smarty_core_create_dir_structure() - - * libs/plugins/core.create_dir_structure.php: - fixed error-message - -2003-05-09 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - fixed warning due to missing param to _execute_core_function() - - * libs/Smarty_Compiler.class.php: - fixed quoting in _compile_include_php - - * libs/Smarty_Compiler.class.php: - fixed quoting of "file"-parameter in _compile_include_tag() - -2003-05-08 Monte Ohrt <monte@ispi.net> - - * docs/programmers.sgml: - fix typo - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/plugins/core.compile_template.php - libs/plugins/core.create_dir_structure.php - libs/plugins/core.fetch_template_info.php - libs/plugins/core.get_include_path.php - libs/plugins/core.get_microtime.php - libs/plugins/core.get_php_resource.php - libs/plugins/core.is_secure.php - libs/plugins/core.is_trusted.php - libs/plugins/core.load_plugins.php - libs/plugins/core.load_resource_plugin.php - libs/plugins/core.parse_file_path.php - libs/plugins/core.process_cached_inserts.php - libs/plugins/core.read_cache_file.php - libs/plugins/core.rm_auto.php - libs/plugins/core.rmdir.php - libs/plugins/core.run_insert_handler.php - libs/plugins/core.smarty_include.php - libs/plugins/core.smarty_include_php.php - libs/plugins/core.write_cache_file.php - libs/plugins/core.write_compiled_template.php - libs/plugins/core.write_file.php - libs/plugins/function.config_load.php - libs/plugins/function.fetch.php - libs/plugins/function.html_image.php: - abstract more private functions to plugin directory - - * libs/Config_File.class.php: - only add DIRECTORY_SEPARATOR if it isn't already present - - * libs/Config_File.class.php: - fix directory separator code, use DIRECTORY_SEPARATOR - -2003-05-08 Messju Mohr <messju@lammfellpuschen.de> - - * docs/designers.sgml: - fixed example of html_checkboxes - - * NEWS - libs/Smarty.class.php: - fixed bug in _create_dir_structure() when used with - open_basedir-restriction and relative paths - - * docs/designers.sgml: - fixed example for html_radios - -2003-05-07 Monte Ohrt <monte@ispi.net> - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php - libs/plugins/core.assign_smarty_interface.php - libs/plugins/core.display_debug_console.php - libs/plugins/function.display_debug_console.php: - abstracted display_debug_console and assign_smarty_interface to plugin dir - as a test - - * libs/Smarty.class.php - libs/plugins/function.display_debug_console.php: - correct misc varnames, abstract debug console display to plugin function - - * libs/plugins/modifier.escape.php: - fix typo - -2003-05-05 Monte Ohrt <monte@ispi.net> - - * libs/Smarty_Compiler.class.php: - add % to math - - * libs/Smarty.class.php: - clean up comments, formatting - - * NEWS - libs/Smarty.class.php: - keep DIR_SEP for 3rd party compatability - - * NEWS - libs/Smarty.class.php: - remove DIR_SEP, use DIRECTORY_SEPARATOR exclusively - - * libs/Smarty_Compiler.class.php: - remove ++ and -- math operators on template vars - -2003-05-04 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty_Compiler.class.php: - removed unused parameter $quote from Smarty_Compiler::_parse_attrs() - - * libs/plugins/function.html_image.php: - fixed DIR_SEP in html_image-plugin - -2003-05-04 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/Smarty.class.php: - rename DIR_SEP to SMARTY_DIR_SEP to avoid varname collisions - -2003-05-04 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/function.html_image.php: - changed "link" to "href" in html_image. "link" is still working but - deprecated - html_image always renders an alt-tag now (default alt="") - cleaned up indentiation of function.html_image.php - -2003-05-03 Monte Ohrt <monte@ispi.net> - - * libs/debug.tpl: - fix typo - -2003-05-02 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/function.counter.php: - fixed assign attribute for multiple counters - -2003-05-02 Monte Ohrt <monte@ispi.net> - - * libs/Smarty_Compiler.class.php: - allow math on negative number - - * NEWS - libs/Smarty_Compiler.class.php: - added simple math operators to variables - -2003-05-02 Messju Mohr <messju@lammfellpuschen.de> - - * docs/designers.sgml: - fixed typos - -2003-04-30 Monte Ohrt <monte@ispi.net> - - * docs/fr/appendixes.sgml - docs/fr/common.dsl - docs/fr/designers.sgml - docs/fr/getting-started.sgml - docs/fr/html-common.dsl - docs/fr/html.dsl - docs/fr/manual.sgml - docs/fr/php.dsl - docs/fr/preface.sgml - docs/fr/programmers.sgml: - add frech docs to cvs repository - -2003-04-29 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - reverted patch for case-insensitive tag-names - -2003-04-28 Messju Mohr <messju@lammfellpuschen.de> - - * docs/programmers.sgml: - reverted back to humerous redundancy in the docs :). although we all - know we are here to generate template-based output, and not to have - fun ;-) - - * docs/getting-started.sgml: - fixed default user and group for max os x installation - - * libs/Smarty.class.php: - made $function[2] and $function[3] options for register_resource - - * libs/Smarty.class.php: - fixed issue with object-callback when fetching a php-resource - - * NEWS - libs/Smarty.class.php: - enabled array(&$obj. 'source', 'timestamp', 'secure', 'trusted') as - callback for register_resource() - - enabled array(&$obj, 'method') as callback for - $default_template_handler_func - -2003-04-27 Messju Mohr <messju@lammfellpuschen.de> - - * docs/designers.sgml - docs/programmers.sgml: - fixed some typos, thank to mehdi - - * libs/plugins/function.counter.php: - prevent assign from overruling print-attribute in function.counter.php - - * libs/plugins/function.counter.php: - fixed problem with counter and assign - - * libs/Smarty.class.php: - fixed notice in _load_plugins() - - * NEWS - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - made plugin-names case-insensitive. this affects - compiler/block/custom-functions and modifers. - -2003-04-26 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/Smarty_Compiler.class.php: - remove unnecessary close/open tags from compiled templates - -2003-04-26 Messju Mohr <messju@lammfellpuschen.de> - - * docs/designers.sgml: - added documentation for foreach.property.* - -2003-04-24 Messju Mohr <messju@lammfellpuschen.de> - - * docs/designers.sgml: - fixed example table_attr and tr_attr in html_table-example - -2003-04-21 Greg Beaver <greg@chiaraquartet.net> - - * libs/Smarty.class.php: - fixed small bug in doc comments - -2003-04-21 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/function.html_image.php: - fixed errornous creation of '//' in image_path in html_image - -2003-04-21 Monte Ohrt <monte@ispi.net> - - * libs/plugins/modifier.debug_print_var.php: - fix htmlspecialchars() conflict - - * NEWS - libs/plugins/modifier.debug_print_var.php: - fix escapement of special chars in key values of debug console - - * NEWS - libs/plugins/function.config_load.php: - fixed debug timing logic for config_load - - * docs/designers.sgml: - fix example text - - -2003-04-20 Greg Beaver <cellog@users.sourceforge.net> - * plugins/* - Smarty.class.php - Smarty_Compiler.class.php - Config_File.class.php: - updated all doc comments to phpDocumentor format (whew!) - -2003-04-06 Messju Mohr <messju@lammfellpuschen.de> - - * libs/plugins/function.math.php: - allowed "_" in the name of variable-parameters to {math}-function - -2003-04-04 Monte Ohrt <monte@ispi.net> - - * NEWS - docs/designers.sgml - libs/Smarty_Compiler.class.php: - change backtic syntax from $`foo` to `$foo` - - * NEWS - libs/Smarty_Compiler.class.php: - recognize $foo[][] syntax in embedded quotes without backticks - -2003-04-03 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php: - name=123 is passed as an integer (not a string) to plugins now - -2003-04-01 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - added CVS $Id: ChangeLog,v 1.5 2005/02/10 14:03:50 sebastian Exp $ - -2003-03-31 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - added missing compile_id inside Smarty_Compiler - - * libs/Smarty_Compiler.class.php: - fixed flaw when generating an error for missing postfilter - -2003-03-31 Monte Ohrt <monte@ispi.net> - - * docs/getting-started.sgml - docs/programmers.sgml: - fix typos - -2003-03-27 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/modifier.debug_print_var.php: - $length is now propagated to sub-values in debug_print_var - -2003-03-26 Monte Ohrt <monte@ispi.net> - - * NEWS: - update header - - * RELEASE_NOTES: - commit changes to release notes - - * (Smarty_2_5_0_RC2) - libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - committing RC2 - -2003-03-24 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php: - made clear_cache() ignore compile_id when clearing cache_groups - - * libs/plugins/function.popup.php: - made onmouseout XHTML-compatible in function.popup.php - -2003-03-21 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php: - applied new var-names to fetch() - - * NEWS - libs/Smarty.class.php: - renamed $localvars to $_localvars in cache-file-handling-functions, - added _get_auto_id()-function - -2003-03-21 Monte Ohrt <monte@ispi.net> - - * libs/plugins/function.mailto.php - libs/plugins/function.popup.php: - update functions for XHTML compatability - -2003-03-21 Messju Mohr <messju@lammfellpuschen.de> - - * libs/Smarty.class.php: - fixed wrong $auto_id in _read_cache_file() - - * NEWS - libs/Smarty.class.php: - swapped compile_id and cache_id in read_cache_file and write_cache_file - - * libs/Smarty.class.php: - reverted patch for ignoring compile-id back to -r1.364, due to problems - - * NEWS - libs/plugins/function.html_checkboxes.php - libs/plugins/function.html_radios.php: - html_radios and html_checkboxes accept "selected" instead of "checked" - optionally now - - * NEWS - libs/Smarty.class.php: - swapped compile_id and cache_id for cache-file-handling again - -2003-03-20 Monte Ohrt <monte@ispi.net> - - * libs/Smarty_Compiler.class.php: - fix notice when no parameter is passed to default - -2003-03-20 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php: - removed notice of undefined var in _rm_auto() - -2003-03-19 Monte Ohrt <monte@ispi.net> - - * libs/plugins/function.html_checkboxes.php - libs/plugins/function.html_radios.php - libs/plugins/function.html_table.php: - fix a few error messages, follow consistancy format plugin_name: errormsg - - * libs/plugins/function.html_radios.php: - update error messages - - * NEWS - libs/plugins/function.html_radios.php: - add a warning when an array is passed as the 'checked' value of html_radios - -2003-03-19 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty_Compiler.class.php: - fixed errormessage in _compile_smarty_ref() - - * NEWS - docs/designers.sgml: - updated docs for html_image - -2003-03-18 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/Smarty.class.php: - cleaned up calls to readdir() - - * libs/plugins/function.html_options.php: - fixed label for optgroup in html_options - -2003-03-18 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/Smarty_Compiler.class.php: - fix (newly introduced) bug with passing multiple modifiers to a parameter - -2003-03-18 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - docs/designers.sgml: - updated docs for html_checkboxes, html_options and html_radios - - * libs/plugins/function.html_options.php: - fixed wrong default-"name" in function.html_options.php - - * NEWS - libs/plugins/function.html_checkboxes.php - libs/plugins/function.html_radios.php: - renamed "checkbox" and "radios" to "options" in {html_checkboxes} and - {html_radios} - - * libs/plugins/outputfilter.trimwhitespace.php: - tried to optimize re-replacement in outputfilter.trimwhitespace.php a - little - - * libs/plugins/outputfilter.trimwhitespace.php: - fixed greedy str_replace in outputfilter.trimwhitespace.php - - * NEWS - libs/plugins/function.html_checkboxes.php - libs/plugins/function.html_options.php - libs/plugins/function.html_radios.php: - html_options, html_checkboxes and html_radios now pass-thru all unknown - paramters - -2003-03-17 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/function.html_options.php: - html_options passthru all unknown paramters now - -2003-03-17 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/plugins/function.html_image.php: - Fix link bug in html_image function, also make output XHTML compatible - - * libs/Smarty_Compiler.class.php: - fix issue of embedded var and escaped double quotes - -2003-03-15 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/Smarty_Compiler.class.php: - back out "@" logic, apply only to default modifier special case - - * libs/Smarty_Compiler.class.php: - fix @ logic, only use upon an echo - - * NEWS - libs/Smarty_Compiler.class.php: - append "@" to template var echoes to supress possible notices - - * NEWS - libs/Smarty_Compiler.class.php: - append "@" to _run_mod_handler to supress warnings - -2003-03-14 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/Smarty_Compiler.class.php: - fix problem with escaped double quotes - - * NEWS - libs/plugins/function.html_radios.php: - fixed html_options to not return an array - -2003-03-12 Messju Mohr <messju@lammfellpuschen.de> - - * NEWS - libs/plugins/modifier.truncate.php: - fixed length in modifier.truncate.php - - * NEWS - libs/plugins/outputfilter.trimwhitespace.php: - fixed handling of '$'-signs in trimwhitespace outputfilter (messju) - -2003-03-12 Monte Ohrt <monte@ispi.net> - - * docs/programmers.sgml: - update technical explanation of assign_by_ref and append_by_ref - -2003-03-11 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/Smarty.class.php: - fix config file recompiling code - -2003-03-07 Monte Ohrt <monte@ispi.net> - - * libs/plugins/function.html_image.php: - change E_USER_ERROR to E_USER_NOTICE - - * libs/plugins/function.html_image.php: - suppress warning in html_image - - * NEWS - libs/plugins/function.html_image.php: - update changes to html_image - -2003-03-06 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml - docs/de/appendixes.sgml - docs/de/common.dsl - docs/de/designers.sgml - docs/de/getting-started.sgml - docs/de/html-common.dsl - docs/de/html.dsl - docs/de/manual.sgml - docs/de/preface.sgml - docs/de/programmers.sgml: - add german docs to dist - - * NEWS: - update news file - - * libs/plugins/function.html_image.php: - fix width/height parameter index - - * NEWS - libs/Smarty.class.php: - get rid of unsetting name and script attributes to insert tags - -2003-03-05 Monte Ohrt <monte@ispi.net> - - * NEWS - RELEASE_NOTES: - update NEWS file - - * libs/plugins/modifier.string_format.php: - fix argument order, erroneously swapped a while back - - * (Smarty_2_5_0_RC1) - NEWS - README - RELEASE_NOTES - libs/Config_File.class.php - libs/Smarty.class.php - libs/Smarty_Compiler.class.php: - commit final changes for 2.5.0-RC1 - -2003-03-04 Monte Ohrt <monte@ispi.net> - - * docs/programmers.sgml: - remove $show_info_header and $show_info_include property vars from docs - -2003-03-03 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/plugins/function.popup.php: - fixed PHP notice - -2003-02-28 Monte Ohrt <monte@ispi.net> - - * libs/Smarty_Compiler.class.php: - simplify smarty.const.foo and smarty.const.$foo logic - - * libs/Smarty_Compiler.class.php: - only allow $foo syntax in embedded quotes, unless escaped with backticks - then allow any dollar var - - * NEWS - libs/Smarty_Compiler.class.php: - fix "once" var compiling to work with new attr compiling methods for - include_php - - * FAQ - NEWS - README - docs/designers.sgml - docs/getting-started.sgml - libs/Smarty_Compiler.class.php - libs/plugins/function.html_checkboxes.php - libs/plugins/function.html_image.php - libs/plugins/function.html_options.php - libs/plugins/function.html_radios.php - libs/plugins/function.html_select_date.php - libs/plugins/function.html_select_time.php - libs/plugins/function.html_table.php: - fix $smarty.const.foo compiling, clean up double quoted strings, - allow full dollar var syntax in quotes again - -2003-02-27 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml - docs/programmers.sgml - libs/Smarty_Compiler.class.php: - update docs, fix smarty var compiling, allow any $smarty.*.$foo syntax, - add $`foobar` for embedded variables - - * libs/plugins/function.html_image.php: - update functionality - -2003-02-26 Monte Ohrt <monte@ispi.net> - - * NEWS - libs/plugins/modifier.nl2br.php: - add nl2br modifier - - * libs/plugins/function.html_image.php: - add link parameter - -2003-02-24 Monte Ohrt <monte@ispi.net> - - * libs/Smarty.class.php - libs/plugins/function.html_image.php: - fix rename problem in windows, unlink first - - * libs/plugins/function.html_checkboxes.php - libs/plugins/function.html_image.php - libs/plugins/function.html_options.php - libs/plugins/function.html_radios.php - libs/plugins/shared.escape_special_chars.php: - update functions with separate escape_special_chars routine - - * NEWS - libs/plugins/function.html_checkboxes.php - libs/plugins/function.html_radios.php: - commit checkboxes, update radios - - * NEWS - libs/Smarty.class.php - libs/plugins/function.html_image.php: - fix bug with get_registered_object - - * NEWS - libs/plugins/modifier.cat.php: - added cat modifier to distribution - - * NEWS - libs/Smarty_Compiler.class.php: - added << >> <> support to IF statements - - * libs/plugins/function.html_radios.php: - apply patch to initial html_radios function - - * NEWS - libs/Smarty.class.php: - fix _assign_smarty_interface to not overwrite keys other than 'request' - - * NEWS - libs/plugins/function.html_radios.php: - added html_radios to distribution - - * NEWS - libs/plugins/modifier.string_format.php: - fixed arg order of string_format - - * NEWS - libs/Smarty.class.php: - use tmp file for file writes, avoid race condition - - * NEWS - libs/Smarty_Compiler.class.php: - add $smarty.config.foo var, handle embedded smarty var correctly - - * NEWS - libs/plugins/function.fetch.php: - silence warnings in fetch plugin - -2003-02-21 Monte Ohrt <monte@ispi.net> - - * INSTALL: - update wording - - * INSTALL: - update install instructions - - * AUTHORS - BUGS - CREDITS - QUICKSTART - README - RESOURCES - TESTIMONIALS: - remove some files already in docs or elsewhere - - * demo/index.php: - add templates_c to repository - - * index.php: - move demo files to demo directory - - * Config_File.class.php - Smarty.class.php - Smarty_Compiler.class.php - debug.tpl: - moved lib files under libs directory - -2003-02-20 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php: - add get_config_vars() method, update get_template_vars() functionality - - * NEWS - Smarty.class.php: - fix minor logic in _fetch_template_info() - - * NEWS - Smarty.class.php: - support merging appended vars - - * NEWS - Smarty.class.php: - fix cache groups behavior with compile_id set - -2003-02-19 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: - back out third parameter, extend functionality of append - - * NEWS - Smarty_Compiler.class.php: - update imbedded vars, allow special $smarty vars - - * plugins/function.html_table.php: - add plugin html_table - - * NEWS - Smarty.class.php: - support appending key=>val pairs - - * NEWS - Smarty_Compiler.class.php: - change embedded variable logic to only recognize $foo and $foo[0][bar] - syntax - - * NEWS - Smarty_Compiler.class.php: - allow null as function attribute value - -2003-02-18 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php: - support foo->bar[index] syntax - - * Smarty_Compiler.class.php: - allow $foo->bar[0] syntax - -2003-02-17 Monte Ohrt <monte@ispi.net> - - * plugins/modifier.escape.php: - fix syntax error from previous commit - - * NEWS - Smarty.class.php: - add error msgs to get_registered_object - - * Smarty.class.php: - add function for getting reference to registered object - - * Smarty_Compiler.class.php: - back out patches for object and objref calls on $smarty var - - * NEWS - Smarty_Compiler.class.php: - treat unrecognized param attribute syntax as a string - - * NEWS - Smarty_Compiler.class.php: - support $smarty.const.$foo syntax - - * NEWS - debug.tpl - plugins/modifier.count_words.php - plugins/modifier.escape.php: - fix E_NOTICE messages - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php: - add @ and === to if tokens, few param cleanups - -2003-02-16 Greg Beaver <greg@chiaraquartet.net> - - * ChangeLog - Smarty.class.php - Smarty_Compiler.class.php: - many more phpdoc comment upgrades - -2003-02-15 Greg Beaver <cellog@sourceforge.net> - * Smarty.class.php - Smarty_Compiler.class.php - continue cleaning of phpdoc comments. All that is needed is the - addition of @return tags and perhaps a bit more verbose comments - and they are finished. - -2003-02-14 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php: - enable config_load error messages - - * NEWS - plugins/function.html_options.php: - fix html_options to not escape already escaped entities - - * NEWS - Smarty.class.php: - send Last-Modified header on cache creation, misc tab/spacing cleanup - -2003-02-13 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php - docs/designers.sgml: - allow dash in plain text - - * NEWS - Smarty_Compiler.class.php: - check strict syntax of function attributes - -2003-02-12 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty_Compiler.class.php: - dropped support for modifiers on object parameters, - added support for objects as modifier parameters - - * NEWS - Smarty_Compiler.class.php - docs/designers.sgml: - fix bug with decimal numbers in if statements, misc doc updates - -2003-02-11 Monte Ohrt <monte@ispi.net> - - * (Smarty_2_4_2) - Config_File.class.php - NEWS - README - RELEASE_NOTES - Smarty.class.php - Smarty_Compiler.class.php: - update version numbers - -2003-02-10 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty_Compiler.class.php: - add support for $foo->$bar syntax - - * NEWS: - update NEWS file - - * NEWS - Smarty_Compiler.class.php: - support full var syntax in quoted text, fix problem with const var access, - clean up some more regex code, fix object problem with no properties - -2003-02-06 Monte Ohrt <monte@ispi.net> - - * (Smarty_2_4_1) - Config_File.class.php - NEWS - README - RELEASE_NOTES - Smarty.class.php - Smarty_Compiler.class.php: - committed 2.4.1 changes - - * NEWS - Smarty_Compiler.class.php: - ignore case in IF statements - -2003-02-05 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty_Compiler.class.php: - treat undefined constants as null - - * NEWS - Smarty.class.php: - fix problem with inserts and nested fetches - - * Smarty_Compiler.class.php: - fix "if" regex for math tokens - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php - docs/getting-started.sgml: - added support for extracting params to include_php - -2003-02-04 Monte Ohrt <monte@ispi.net> - - * RELEASE_NOTES: - reformat text - -2003-02-03 Monte Ohrt <monte@ispi.net> - - * NEWS: - update news file - -2003-02-03 Greg Beaver <greg@chiaraquartet.net> - - * ChangeLog - Smarty.class.php: - begin fixing phpdoc comments in Smarty.class.php - - * ChangeLog - Config_File.class.php: - fixed phpdoc comments - -2003-02-03 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php: - allow $foo->bar[$x].foo syntax - - * Smarty_Compiler.class.php - index.php - configs/test.conf - templates/index.tpl: - fix accidental commit - - * index.php - configs/test.conf - templates/index.tpl: - allow $foo->bar[$j].blah type of syntax - -2003-02-02 Greg Beaver <cellog@php.net> - - * Smarty.class.php - begin fixing of phpdoc comments - - * Config_File.class.php - fix phpdoc comments, add phpDocumentor docblock templates - -2003-02-02 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php - docs/html.dsl - docs/php.dsl: - fix version number - - * (Smarty_2_4_0) - Config_File.class.php - NEWS - README - RELEASE_NOTES - Smarty.class.php - Smarty_Compiler.class.php - docs/appendixes.sgml - docs/designers.sgml - docs/programmers.sgml: - update Smarty version numbers - -2003-01-30 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty_Compiler.class.php - TODO: - fix order of php tag comparisons - - * NEWS - Smarty_Compiler.class.php: - fix known php tag handling problems - -2003-01-29 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php - Smarty_Compiler.class.php: - change comments to phpdoc style - -2003-01-28 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php - docs/programmers.sgml: - make separate var for compiler file - - * plugins/function.fetch.php: - fix error call - -2003-01-25 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php - Smarty_Compiler.class.php: - add support for restriction to registered methods - - * plugins/outputfilter.trimwhitespace.php: - update with textarea support - -2003-01-24 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php: - fix compiling problem with {foreach} tags - - * Smarty.class.php - Smarty_Compiler.class.php: - put objects in own array, add object param format support, change - object syntax from foo.bar to foo->bar - -2003-01-23 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php: - add support for object registration - -2003-01-22 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: - add file & line number of calling error to error message - -2003-01-21 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php: - put php style object syntax back in - -2003-01-20 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: - move security settings to fetch function for template_dir - - * NEWS - Smarty.class.php: - fix debug template and security, add template_dir to secure_dir at runtime - -2003-01-17 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php: - added new object support without new template syntax - -2003-01-15 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php: - fix if statement syntax for negative integers, fix issue with directories - named '0' - -2003-01-08 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php - plugins/function.counter.php - plugins/function.cycle.php - plugins/function.debug.php - plugins/function.eval.php - plugins/function.fetch.php - plugins/function.html_options.php - plugins/function.html_select_date.php - plugins/function.html_select_time.php - plugins/function.mailto.php - plugins/function.math.php - plugins/function.popup.php - plugins/function.popup_init.php: - update plugins to return values instead of echo, fix config file cache - to include global config variables in cache file - - * Smarty_Compiler.class.php: - fix bug with >= tests in if statements, comment out full object support - -2003-01-06 Monte Ohrt <monte@ispi.net> - - * NEWS - docs/html.dsl - plugins/modifier.escape.php: - add javascript escape parameter to escape modifier - -2003-01-02 Monte Ohrt <monte@ispi.net> - - * templates/header.tpl: - move the title into head where it should be - -2002-12-24 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php: - added correct line numbers to smarty syntax error messages - - * docs/programmers.sgml: - update append documentation, make more clear on its function - - * Smarty_Compiler.class.php: - fix modifier matching regexp - -2002-12-23 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php: - support nested function calls in IF statements - -2002-12-20 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php: - few more fixes, spaces around function parameters - - * Smarty_Compiler.class.php: - fix misc syntax issues with {if} tags - -2002-12-20 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php: - fix misc syntax issues with {if} tags - -2002-12-19 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php: - commit updates, passes all smoke tests - - * NEWS: - update NEWS file - - * Smarty_Compiler.class.php: - fixed literal string not in quotes as parameters - - * NEWS - Smarty_Compiler.class.php: - fix misc syntax issues, add ability to pass modifiers to functions - -2002-12-18 Monte Ohrt <monte@ispi.net> - - * NEWS: - update NEWS - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php: - update compiler code, clean up regex, add new syntax features - -2002-12-16 Monte Ohrt <monte@ispi.net> - - * NEWS: - update NEWS file - - * Smarty_Compiler.class.php: - commit updates for objects - -2002-12-14 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php - Smarty_Compiler.class.php: - fix bug with compiling config files with caching on - -2002-12-13 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php: - fix problem with matching single quoted strings - - * Smarty_Compiler.class.php: - update embedded variable logic, get rid of ."" at end of output - - * NEWS - docs/designers.sgml - plugins/function.html_select_date.php: - add day_value_format to html_select_date - -2002-12-12 Monte Ohrt <monte@ispi.net> - - * plugins/modifier.debug_print_var.php: - fix bug, double escaped values in display - - * Smarty.class.php: - move debug test back into fetch() - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php - plugins/outputfilter.trimwhitespace.php: - assigned vars are no longer in global name space, few debug cleanups - -2002-12-11 Monte Ohrt <monte@ispi.net> - - * plugins/function.popup.php: - fix error in newline code - - * plugins/function.popup.php: - fix popup to allow newlines in text data - -2002-12-10 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: - fix plugin error logic - - * docs/designers.sgml - docs/programmers.sgml: - edit examples, make more verbose - - * NEWS - plugins/function.html_options.php: - escape html entities in the option values and output - - * NEWS - plugins/function.html_options.php: - fixed bug with label of html_options - -2002-12-09 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: - add support for var_export() - - * Config_File.class.php - Smarty.class.php: - clean up code, respect force_compile and compile_check flags - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php - docs/designers.sgml - plugins/function.mailto.php: - add caching feature to config loading, document update, add mailto plugin - -2002-12-08 Monte Ohrt <monte@ispi.net> - - * plugins/function.fetch.php: - fix query part of URL - -2002-12-05 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: - fix typos - -2002-11-22 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php: - patch for warning message - -2002-11-21 Monte Ohrt <monte@ispi.net> - - * RELEASE_NOTES - Smarty.class.php: - get rid of testing for a set value with assign function, just set to - whatever is passed into the template - - * docs/programmers.sgml: - fix typo - -2002-11-19 Monte Ohrt <monte@ispi.net> - - * Config_File.class.php - NEWS - README - RELEASE_NOTES - Smarty.class.php - Smarty_Compiler.class.php: - commit changes, ready for 2.3.1 release - -2002-11-01 Monte Ohrt <monte@ispi.net> - - * plugins/function.html_options.php: - added label attribute to all option outputs, cover w3c spec. - - * NEWS: update NEWS file - - * docs/designers.sgml: update docs for optgroup output - - * plugins/function.html_options.php: - make html_options work with optgroup, make func modular and recursive. - -2002-10-29 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php: set mtime on compile files so they match source files - -2002-10-18 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php: added proper support for open_basedir setting - - * docs/designers.sgml: clear up docs on index, iteration and rownum - -2002-10-16 Monte Ohrt <monte@ispi.net> - - * plugins/modifier.default.php: fix warning message in default modifier - -2002-09-25 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml - plugins/modifier.strip.php - NEWS: added strip variable modifier - -2002-09-24 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - - * Smarty_Compiler.class.php: - Fix to be able to use $smarty.x variables as arrays. - -2002-09-23 Monte Ohrt <monte@ispi.net> - - * Config_File.class.php: - add support for mac/dos formatted config files (fix newlines) - - * docs/programmers.sgml: add optional tags to clear_cache parameters - - * docs/designers.sgml: - fix error with include_php description, add $this to description - -2002-09-20 Monte Ohrt <monte@ispi.net> - - * NEWS - docs/getting-started.sgml: fixed errors with example setup docs - -2002-09-16 Monte Ohrt <monte@ispi.net> - - * plugins/block.textformat.php - docs/designers.sgml - NEWS: add textformat block function - -2002-09-10 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: - add assign attribute to cycle function documentation - - * docs/designers.sgml - docs/programmers.sgml: fix typos - -2002-09-09 Monte Ohrt <monte@ispi.net> - - * plugins/function.debug.php - templates/header.tpl: - fix header in debug template, fix typo in header.tpl example - -2002-08-15 mohrt <mohrt@pb1.pair.com> - - * docs/programmers.sgml: fix typos - -2002-08-08 mohrt <mohrt@pb1.pair.com> - - * RELEASE_NOTES - Smarty.class.php: - supress warnings from unlink() and is_dir(), let error handler deal with it - -2002-08-07 mohrt <mohrt@pb1.pair.com> - - * docs/appendixes.sgml - docs/designers.sgml - docs/programmers.sgml - Config_File.class.php - NEWS - README - RELEASE_NOTES - Smarty.class.php - Smarty_Compiler.class.php: update files with new version numbers - -2002-08-02 mohrt <mohrt@pb1.pair.com> - - * NEWS: update NEWS file with credits - - * NEWS - Smarty.class.php: added assign_by_ref() and append_by_ref() functions - -2002-08-01 mohrt <mohrt@pb1.pair.com> - - * TODO - NEWS - Smarty.class.php: - changed default warning type for plugin errors from E_USER_WARNING to E_USER_ERROR - -2002-07-29 mohrt <mohrt@pb1.pair.com> - - * plugins/function.html_select_time.php - docs/designers.sgml - NEWS: added paramters to html_select_time plugin - -2002-07-25 Andrei Zmievski <andrei@pb1.pair.com> - - * TODO: *** empty log message *** - -2002-07-24 mohrt <mohrt@pb1.pair.com> - - * QUICKSTART: update QUICKSTART guide - - * NEWS - debug.tpl - plugins/modifier.debug_print_var.php: - update debug console to show objects, fix warning in debug.tpl - -2002-07-23 mohrt <mohrt@pb1.pair.com> - - * docs/programmers.sgml: fix load_filter examples - - * Config_File.class.php - NEWS: fix error when there are no sections in config file - -2002-07-19 mohrt <mohrt@pb1.pair.com> - - * docs/getting-started.sgml: fix error in install guide - -2002-07-18 mohrt <mohrt@pb1.pair.com> - - * Smarty_Compiler.class.php: - correct the expression match for smarty:nodefaults - -2002-07-17 mohrt <mohrt@pb1.pair.com> - - * Smarty_Compiler.class.php: fix default modifier to work with config vars - - * Smarty_Compiler.class.php: got args to strstr backwards... - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php: - change default modifiers to array instead of string - - * Smarty_Compiler.class.php - docs/designers.sgml - Smarty.class.php: add default modifier logic, minor doc updates - - * NEWS - Smarty.class.php - plugins/function.popup_init.php: - make popup_init xhtml compliant, minor variable name changes for consistancy - -2002-07-16 mohrt <mohrt@pb1.pair.com> - - * NEWS: update NEWS file - - * plugins/function.debug.php - Smarty.class.php - debug.tpl - NEWS: - fix problem with filenames on windows, add ability to supply expire time in seconds when clearing cache or compiled files - -2002-07-15 mohrt <mohrt@pb1.pair.com> - - * Smarty.class.php: - fixed problem with insert tags when loading function from script attribute - and caching enabled (Monte) - -2002-07-14 mohrt <mohrt@pb1.pair.com> - - * NEWS - Smarty.class.php: fix bug with debug_tpl file path for Windows - -2002-07-12 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: fix append function with array/string issue - -2002-07-11 Monte Ohrt <monte@ispi.net> - - * RELEASE_NOTES: update release notes - - * NEWS - README - RELEASE_NOTES - Smarty.class.php - Smarty_Compiler.class.php - Config_File.class.php: update files to 2.2.0 tags, get ready for release - -2002-07-09 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php: make debug.tpl work with any delimiter - - * NEWS - Smarty.class.php: - change tests in append and assign to != '' instead of empty(), which is more accurate - -2002-07-08 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: minor doc update - - * Smarty.class.php: - cast var as an array, simplify and get rid of PHP warning messages - -2002-07-03 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: one more N - - * Smarty.class.php: - prepend "N" to filenames to avoid possible OS issues with dir names starting with "-" - - * Smarty.class.php: only set $debug_tpl in constructor if empty - - * Smarty.class.php - docs/designers.sgml - docs/getting-started.sgml - docs/programmers.sgml: - make use_sub_dirs go back to crc32 for subdir separation - -2002-06-29 Monte Ohrt <monte@ispi.net> - - * plugins/function.eval.php: do nothing if $val is empty - - * TODO - plugins/function.eval.php - plugins/function.popup_init.php: - add zindex to popup init, fix error message for eval. - -2002-06-27 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: - only loop through relative paths for PHP include_path, remove $_relative variable - - * Smarty_Compiler.class.php: added {$smarty.version} variable - -2002-06-26 Monte Ohrt <monte@ispi.net> - - * docs/appendixes.sgml - docs/designers.sgml - docs/getting-started.sgml - docs/programmers.sgml - Smarty.class.php: - update plugin loading logic, look in SMARTY_DIR, then cwd. If all fail, then retry all with include_path - - * templates/header.tpl - Smarty.class.php: update get_include_path, get _path_array only once - - * Smarty.class.php: fix get_include_path function for windows - - * Smarty.class.php: update plugin search logic - - * Smarty.class.php: only search include_path if relative path - - * plugins/function.html_select_date.php - plugins/function.html_select_time.php - plugins/modifier.date_format.php - Smarty_Compiler.class.php - NEWS - Smarty.class.php: allow plugins_dir to be an array of directories - -2002-06-25 Monte Ohrt <monte@ispi.net> - - * docs/programmers.sgml - docs/getting-started.sgml: update installation docs - - * debug.tpl - docs/getting-started.sgml - templates/debug.tpl - NEWS - Smarty.class.php: move debug.tpl to SMARTY_DIR, add to constructor - -2002-06-24 Monte Ohrt <monte@ispi.net> - - * plugins/function.assign_debug_info.php - NEWS: fixed warning message in function.assign_debug_info - - * Smarty.class.php: update include_path fixes - - * NEWS: - fixed $template_dir, $compile_dir, $cache_dir, $config_dir to respect include_path - -2002-06-23 Monte Ohrt <monte@ispi.net> - - * plugins/shared.make_timestamp.php: - update timestamp plugin to work when passed a timestamp - -2002-06-19 Monte Ohrt <monte@ispi.net> - - * NEWS: update NEWS file - - * plugins/modifier.date_format.php - docs/designers.sgml: - update date_format, allow optional 2nd paramater as default date if passed date is empty. update docs. - - * plugins/modifier.date_format.php: - fix date_format modifier, return nothing if given empty string - -2002-06-18 Monte Ohrt <monte@ispi.net> - - * NEWS - plugins/function.cycle.php: - gave $reset a default value in cycle function - - * plugins/function.html_select_date.php - plugins/shared.make_timestamp.php - NEWS: - corrected warnings in html_select_time function, made make timestamp always return a timestamp - -2002-06-17 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: swapped around cache_id and compile_id order - -2002-06-14 Monte Ohrt <monte@ispi.net> - - * docs/programmers.sgml - plugins/function.popup_init.php - Smarty.class.php: - change directory delimiter to "^" for cache and compile files - -2002-06-13 Andrei Zmievski <andrei@php.net> - - * TODO: done. - - * Smarty_Compiler.class.php: - Optimize the calculation of section 'total' property. - -2002-06-11 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php: - added support for subdir exclusion, deletion by full or partial cache_id and compile_id, change file format to urlencoded values instead of crc32 - -2002-06-07 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: fix bug with last_modified_check code - - * NEWS - Smarty.class.php: - updated $GLOBALS refererence for HTTP_IF_MODIFIED_SINCE - -2002-06-06 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml - overlib.js: - remove overlib.js file from distribution, update plugin and docs - -2002-06-05 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml - NEWS - Smarty.class.php: fix 304 Not Modified, don't send content - -2002-06-03 Monte Ohrt <monte@ispi.net> - - * plugins/function.cycle.php: update version number - - * plugins/function.cycle.php - NEWS: - fixed cycle function to respect delimiter setting after initial setting - - * Smarty.class.php - NEWS: - update $GLOBALS references to work properly with track_globals settings - - * plugins/function.math.php: fixed bug with call $assign - - * docs/appendixes.sgml - docs/designers.sgml - plugins/function.html_options.php - plugins/function.html_select_time.php - NEWS - Smarty.class.php - Smarty_Compiler.class.php: - optimized for loops with count() function calls - -2002-06-01 Andrei Zmievski <andrei@php.net> - - * TODO: *** empty log message *** - -2002-05-21 Monte Ohrt <monte@ispi.net> - - * NEWS: update NEWS file - - * plugins/function.html_select_date.php - RESOURCES - docs/designers.sgml - Config_File.class.php: - update html_select_date with month_value_format attribute for controlling the format of the month values. - -2002-05-17 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty_Compiler.class.php: - Made it possible to use simple variables inside [] for indexing. - -2002-05-16 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml - docs/getting-started.sgml - NEWS - Smarty.class.php - Smarty_Compiler.class.php - TESTIMONIALS: add "once" attribute to php_include, update docs - -2002-05-09 Andrei Zmievski <andrei@ispi.net> - - * NEWS - TODO: *** empty log message *** - -2002-05-07 Monte Ohrt <monte@ispi.net> - - * plugins/function.cycle.php: remove \n from cycle function - - * docs/designers.sgml - plugins/function.cycle.php - README - RELEASE_NOTES - Smarty.class.php - Smarty_Compiler.class.php - NEWS: - update cycle function to handle array as input, update files to 2.1.1 - -2002-05-06 Monte Ohrt <monte@ispi.net> - - * plugins/function.fetch.php: - update fetch function with more error checking - -2002-05-03 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml - plugins/function.counter.php: - update counter to use name instead of id (id still works though) - - * plugins/function.cycle.php - docs/designers.sgml: rename id to name for cycle function - - * plugins/function.cycle.php: - update cycle function to allow blank values parameter after initialized - - * plugins/function.cycle.php: fix syntax error - -2002-05-02 Monte Ohrt <monte@ispi.net> - - * plugins/function.cycle.php: ugh, another typo - - * plugins/function.cycle.php: update comments - - * docs/designers.sgml - plugins/function.cycle.php - NEWS: added function cycle - - * FAQ - Smarty.class.php: fix register_outputfilter function - -2002-05-01 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml - NEWS - Smarty.class.php: fixed bug with resource testing and include_path - -2002-04-30 Monte Ohrt <monte@ispi.net> - - * NEWS - README - RELEASE_NOTES - Smarty.class.php - Smarty_Compiler.class.php: update files for 2.1.0 release - -2002-04-30 Andrei Zmievski <andrei@ispi.net> - - * plugins/function.fetch.php - docs/programmers.sgml - Smarty.class.php: Fix. - -2002-04-29 Andrei Zmievski <andrei@ispi.net> - - * docs/programmers.sgml - docs/designers.sgml: A whole bunch of docs. - -2002-04-26 Monte Ohrt <monte@ispi.net> - - * FAQ - QUICKSTART - docs/programmers.sgml: update FAQ, QUICKSTART, small doc syntax fix - -2002-04-24 Monte Ohrt <monte@ispi.net> - - * docs/programmers.sgml - templates/debug.tpl - Smarty.class.php: changed doc structure a bit - -2002-04-16 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: Add register/unregister API for output filters. - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php - TODO: - Changed the way filters are loaded, which now has to be done explicitly, - either through load_filter() API or by filling in $autoload_filters variable. - Also renamed internal variable to avoid namespace pollution. - -2002-04-15 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: - Fixed _get_php_resource() to take include_path into account. - -2002-04-15 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: - update docs, get modifiers and functions into index for easy access - - * docs/programmers.sgml - NEWS - Smarty.class.php: update caching documentation - -2002-04-15 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - - * Smarty.class.php: Only turn down error notices if $debugging is false. - -2002-04-15 Monte Ohrt <monte@ispi.net> - - * NEWS: update NEWS file - - * plugins/function.html_select_date.php: - fixed logic so this works right when field_separator = "/" - - * plugins/function.html_select_date.php: - fix regular expression for matching date - -2002-04-13 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: updated html_select_date docs to reflect changes - - * NEWS - plugins/function.html_select_date.php: - added YYYY-MM-DD support to html_select_date - -2002-04-12 Andrei Zmievski <andrei@php.net> - - * TESTIMONIALS: New entry. - -2002-04-12 Monte Ohrt <monte@ispi.net> - - * plugins/modifier.strip_tags.php: back out changes to strip_tags - - * docs/programmers.sgml: update docs regarding cache_lifetime - - * plugins/modifier.strip_tags.php - Smarty.class.php: - update cache_lifetime logic: -1 = never expire, 0 = always expire - -2002-04-11 Andrei Zmievski <andrei@php.net> - - * BUGS - FAQ - INSTALL - NEWS - Smarty.class.php - Smarty_Compiler.class.php - docs/getting-started.sgml: - Fixed directory separtor issue. Requiring PHP 4.0.6 now. - - * NEWS - Smarty_Compiler.class.php: - Added ability to use simple variables for array indices or object properties. - - * TESTIMONIALS: Another one. - - * TESTIMONIALS: Adding one from Mark P. - -2002-04-05 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php - NEWS - Smarty.class.php: Make it possible to unregister pre/postfilter plugins. - -2002-04-05 Monte Ohrt <monte@ispi.net> - - * INSTALL: Remove addons file from INSTALL instructions - -2002-04-04 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: update doc error - - * docs/designers.sgml - plugins/modifier.escape.php - NEWS - Smarty.class.php: added htmlall attribute to escape modifier - -2002-04-03 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php: Fixed undefined offset warning in {if} tag. - - * Smarty.class.php - NEWS: Added template_exists() API. - - * Smarty.class.php - Smarty_Compiler.class.php - NEWS: - - Added $smarty.template variable. - - Fixed {include_php} tag when dynamic values were used for 'file' attribute. - - * Config_File.class.php: Separator setting fix. - -2002-03-28 Monte Ohrt <monte@ispi.net> - - * FAQ - README: add digest address - - * FAQ - README - Smarty.class.php: update mailing list addresses - -2002-03-28 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - - * plugins/function.html_select_date.php - plugins/function.html_select_time.php - plugins/modifier.date_format.php: - Fix for when plugins directory is not the default one. - -2002-03-28 Andrei Zmievski <andrei@ispi.net> - - * NEWS: *** empty log message *** - - * plugins/function.html_select_date.php - plugins/function.html_select_time.php - plugins/modifier.date_format.php: - Fix for when plugins directory is not the default one. - -2002-03-27 Monte Ohrt <monte@ispi.net> - - * FAQ: update FAQ page - -2002-03-26 Andrei Zmievski <andrei@ispi.net> - - * CREDITS - NEWS - Smarty.class.php - Smarty_Compiler.class.php - TODO: Block functions changes. - - * Config_File.class.php: *** empty log message *** - -2002-03-25 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php - Smarty_Compiler.class.php: Initial implementation of block functions. - -2002-03-22 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: fix documentation error in capture - -2002-03-22 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: *** empty log message *** - - * Smarty.class.php: Turn off notices. - -2002-03-21 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php: Make _current_file available to prefilters. - - * NEWS - Smarty.class.php: - Made is possible to assign variables in pre/postfilters. - -2002-03-20 Andrei Zmievski <andrei@php.net> - - * plugins/function.html_select_date.php: Fixed +/- functionality. - - * NEWS: *** empty log message *** - -2002-03-20 Monte Ohrt <monte@ispi.net> - - * Config_File.class.php - NEWS - README - RELEASE_NOTES - Smarty.class.php - Smarty_Compiler.class.php: update version numbers - - * plugins/function.html_select_date.php - plugins/function.html_select_time.php - plugins/modifier.date_format.php: - move .make_timestamp.php to shared.make_timestamp.php - - * NEWS - Smarty.class.php - docs/designers.sgml - plugins/function.fetch.php - plugins/function.html_select_date.php: - update file generation, replace crc32() '-' with 'N' - -2002-03-20 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php: *** empty log message *** - -2002-03-19 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - - * Smarty.class.php - Smarty_Compiler.class.php: - Fix plugin behavior for inserts with script attribute. - - * NEWS: *** empty log message *** - - * Smarty_Compiler.class.php: Fix bug with $smarty.cookies. - - * TESTIMONIALS: *** empty log message *** - -2002-03-15 Monte Ohrt <monte@ispi.net> - - * NEWS - docs/designers.sgml: update Changelog - - * plugins/modifier.indent.php - plugins/modifier.wordwrap.php: add wordwrap and indent to repository - -2002-03-14 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: - remove show_info_include and show_info_header functions - -2002-03-13 Monte Ohrt <monte@ispi.net> - - * plugins/function.fetch.php: update fetch function - - * plugins/function.fetch.php: update fetch function with new parameters - -2002-03-12 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: update doc tables - - * docs/designers.sgml: update docs columns - - * docs/getting-started.sgml - docs/appendixes.sgml: update docs - - * TESTIMONIALS - docs/appendixes.sgml: update syntax error in docs, add to testimonials - -2002-03-04 Monte Ohrt <monte@ispi.net> - - * FAQ - README: update FAQ, README with digest mode info - -2002-03-02 Monte Ohrt <monte@ispi.net> - - * QUICKSTART: update quickstart - - * Smarty.class.php: - change behavior so cache_lifetime = 0 never expires (instead of always regenerate) - -2002-03-01 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: update doc example - -2002-03-01 Andrei Zmievski <andrei@php.net> - - * CREDITS - RELEASE_NOTES - TODO - NEWS: *** empty log message *** - -2002-03-01 Monte Ohrt <monte@ispi.net> - - * docs/appendixes.sgml - docs/designers.sgml - docs/getting-started.sgml - docs/programmers.sgml: update document id tags - - * docs.sgml: remove docs.sgml - - * RESOURCES - Smarty.class.php: update resources - -2002-02-28 Andrei Zmievski <andrei@php.net> - - * TESTIMONIALS - docs/appendixes.sgml - docs/designers.sgml - docs/programmers.sgml: *** empty log message *** - -2002-02-27 Andrei Zmievski <andrei@php.net> - - * plugins/function.eval.php - docs/designers.sgml: *** empty log message *** - -2002-02-27 Monte Ohrt <monte@ispi.net> - - * plugins/function.eval.php: added eval function to plugin dir - -2002-02-27 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - -2002-02-27 Monte Ohrt <monte@ispi.net> - - * docs/designers.sgml: fix syntax error - - * docs/appendixes.sgml - docs/designers.sgml - docs/getting-started.sgml - docs/programmers.sgml: convert technical notes to docbook format - - * NEWS - docs/designers.sgml: added "eval" plugin docs - -2002-02-26 Andrei Zmievski <andrei@php.net> - - * docs/programmers.sgml - docs/designers.sgml - docs/appendixes.sgml - docs/getting-started.sgml - docs/html-common.dsl - docs/.cvsignore: *** empty log message *** - - * docs/appendixes.sgml - docs/common.dsl - docs/designers.sgml - docs/getting-started.sgml - docs/html-common.dsl - docs/html.dsl - docs/manual.sgml - docs/preface.sgml - docs/programmers.sgml: Split up docs. - -2002-02-25 Andrei Zmievski <andrei@php.net> - - * docs.sgml: *** empty log message *** - -2002-02-22 Monte Ohrt <monte@ispi.net> - - * docs.sgml: update docs - -2002-02-22 Andrei Zmievski <andrei@php.net> - - * docs.sgml - AUTHORS - NEWS: *** empty log message *** - -2002-02-21 Monte Ohrt <monte@ispi.net> - - * Config_File.class.php - NEWS - Smarty.class.php - Smarty_Compiler.class.php - docs.sgml: update misc changes - -2002-02-21 Andrei Zmievski <andrei@php.net> - - * docs.sgml: *** empty log message *** - -2002-02-20 Monte Ohrt <monte@ispi.net> - - * docs.sgml: misc updates - -2002-02-20 Andrei Zmievski <andrei@php.net> - - * docs.sgml: *** empty log message *** - - * Smarty.class.php - plugins/function.assign.php - plugins/function.assign_debug_info.php - plugins/function.counter.php - plugins/function.fetch.php - plugins/function.math.php - plugins/function.popup.php - plugins/function.popup_init.php - plugins/modifier.escape.php: Fixup some naming. - -2002-02-20 Monte Ohrt <monte@ispi.net> - - * docs.sgml: update docs - -2002-02-20 Andrei Zmievski <andrei@php.net> - - * docs.sgml: *** empty log message *** - -2002-02-20 Monte Ohrt <monte@ispi.net> - - * NEWS - docs.sgml - plugins/modifier.escape.php: - removed global vars from fetch function, added attrs to escape modifier - - * docs.sgml: add plugin chapter outline - -2002-02-19 Monte Ohrt <monte@ispi.net> - - * README - RELEASE_NOTES - RESOURCES - Smarty.class.php - docs.sgml - BUGS - FAQ - INSTALL - QUICKSTART: update docs - -2002-02-19 Andrei Zmievski <andrei@php.net> - - * docs.sgml: Updated resources docs. - - * README: *** empty log message *** - - * docs.sgml: Updated description of {$smarty} variable. - - * BUGS - FAQ - INSTALL - QUICKSTART - RELEASE_NOTES - docs.sgml: Remove PEAR notes. - -2002-02-18 Andrei Zmievski <andrei@php.net> - - * Config_File.class.php - NEWS: Removed dependency on PEAR. - -2002-02-18 Monte Ohrt <monte@ispi.net> - - * NEWS - docs.sgml - plugins/function.popup_init.php: add src attribute to popup_init - -2002-02-15 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php - plugins/modifier.debug_print_var.php - NEWS - Smarty.class.php: Performance enhancements. - -2002-02-06 Andrei Zmievski <andrei@php.net> - - * plugins/function.html_options.php: - Fix html_options output to be XHTML compatible. - -2002-02-05 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php - Smarty_Compiler.class.php: Fix up plugin inclusion. - - * Smarty.class.php - Smarty_Compiler.class.php - TODO - plugins/function.html_select_date.php - plugins/function.html_select_time.php - plugins/modifier.date_format.php: Fix plugin directory access. - -2002-02-04 Andrei Zmievski <andrei@php.net> - - * .cvsignore - Smarty_Compiler.class.php: *** empty log message *** - -2002-01-31 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - - * Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php - TODO - plugins/function.assign.php - plugins/function.assign_debug_info.php - plugins/function.counter.php - plugins/function.fetch.php - plugins/function.html_options.php - plugins/function.html_select_date.php - plugins/function.html_select_time.php - plugins/function.math.php - plugins/function.popup.php - plugins/function.popup_init.php - plugins/modifier.capitalize.php - plugins/modifier.count_characters.php - plugins/modifier.count_paragraphs.php - plugins/modifier.count_sentences.php - plugins/modifier.count_words.php - plugins/modifier.date_format.php - plugins/modifier.debug_print_var.php - plugins/modifier.default.php - plugins/modifier.escape.php - plugins/modifier.lower.php - plugins/modifier.regex_replace.php - plugins/modifier.replace.php - plugins/modifier.spacify.php - plugins/modifier.string_format.php - plugins/modifier.strip_tags.php - plugins/modifier.truncate.php - plugins/modifier.upper.php - plugins/shared.make_timestamp.php - templates/index.tpl - AUTHORS - CREDITS - Config_File.class.php - README: Implemented plugin architecture. - - * NEWS: *** empty log message *** - -2002-01-30 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.addons.php - Smarty.class.php - docs.sgml: added modifiers wordwrap and indent - -2002-01-28 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php - docs.sgml: - add support for is-modified-since headers, adjust a doc example - -2002-01-24 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: cleanup formatting - - * NEWS - Smarty.class.php - docs.sgml: update ChangeLog, remove insert_tag_check parameter - -2002-01-24 Andrei Zmievski <andrei@php.net> - - * plugins/standard.plugin.php: *** empty log message *** - -2002-01-24 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: fix syntax error - - * Smarty.class.php: removed unneccesary test from fetch() - -2002-01-23 Monte Ohrt <monte@ispi.net> - - * Smarty.addons.php: update overlib fixes - - * NEWS: update changelog - - * FAQ - NEWS - RESOURCES - Smarty.addons.php: updated overlib fixes - -2001-12-31 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php: Fixed compile_id problem. - -2001-12-28 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php: - fixed problem with using assigned var with include_php filepath - -2001-12-21 Monte Ohrt <monte@ispi.net> - - * RESOURCES: update RESOURCES - -2001-12-20 Monte Ohrt <monte@ispi.net> - - * FAQ - README: update FAQ - -2001-12-18 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php - docs.sgml - Config_File.class.php - NEWS - README - RELEASE_NOTES - Smarty.addons.php - Smarty.class.php: update version numbers - -2001-12-18 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php: Fixed clear_cache(). - -2001-12-14 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.addons.php: - fixed bug in smarty_make_timestamp introduced in PHP 4.1.0 - -2001-12-13 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php - docs.sgml: update default function args, fix cached insert debug timing - -2001-12-12 Monte Ohrt <monte@ispi.net> - - * docs.sgml: fix syntax error in documentation - - * Smarty.class.php: update default template handling functionality - -2001-12-11 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php - Smarty_Compiler.class.php: update file fetching logic - -2001-12-11 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php: Added 'script' attribute to {insert..}. - -2001-12-10 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php: added default template function handler - - * Config_File.class.php - NEWS - README - RELEASE_NOTES - Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php: update version numbers in files to 1.5.1 - -2001-12-10 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php: Removed error message from the _read_file() method. - - * Smarty.class.php: Fix check for compile and cache IDs. - -2001-12-06 Monte Ohrt <monte@ispi.net> - - * QUICKSTART: fix spelling error in QUICKSTART - - * docs.sgml: fixed spelling errors in documenation - - * Smarty_Compiler.class.php - docs.sgml - Config_File.class.php - NEWS - README - RELEASE_NOTES - Smarty.addons.php - Smarty.class.php: commit 1.5.0 release - - * RESOURCES - docs.sgml: added RESOURCES file - -2001-12-05 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php: Refactor. - -2001-12-05 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty_Compiler.class.php - docs.sgml: added assign to include and php_include - - * Smarty.class.php - Smarty_Compiler.class.php - docs.sgml: *** empty log message *** - -2001-12-04 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty_Compiler.class.php: Formatting. - -2001-12-04 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php - NEWS - Smarty.class.php: update ChangeLog - -2001-12-04 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php: Formatting. - -2001-12-04 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: removed SMARTY_DIR setting in constructor - - * Smarty.class.php: fix Smarty.class.php indention error - - * Smarty.class.php: update trusted logic - -2001-12-03 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: - fix up is_secure, is_trusted, make _parse_tpl_path function - - * Smarty.class.php: fix problem with testing SMARTY_DIR as empty - - * NEWS - docs.sgml: update documentation, change log - - * Smarty.class.php: - update constructor to check for SMARTY_DIR before assigning - -2001-12-03 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php: *** empty log message *** - -2001-12-03 Monte Ohrt <monte@ispi.net> - - * FAQ - INSTALL - RELEASE_NOTES: update a few files - - * NEWS - QUICKSTART - Smarty.class.php - docs.sgml: added trusted_dir functionality, cleaned up secure_dir logic - -2001-12-03 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - - * NEWS - Smarty.class.php: - Introduced $compile_id class variable. - - Fixed a situation where if $cache_id and $compile_id were both null - they were passed to auto functions as empty string instead of null. - -2001-11-30 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php: - change variable names in fetch() fuction to smarty_* to avoid namespace conflicts - - * NEWS - Smarty.class.php: fixed bug in _rm_auto with catenated null values - -2001-11-29 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty_Compiler.class.php: Added $smarty.section.* syntax. - - * Smarty_Compiler.class.php: Made 'name' attribute optional for {foreach}. - -2001-11-29 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php - index.php: remove assign "now" in index.tpl - -2001-11-29 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.addons.php - Smarty.class.php: Fix formatting. - -2001-11-28 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.class.php - docs.sgml: - removed return statements from _read_cache_file (how did they get in there?) - -2001-11-27 Monte Ohrt <monte@ispi.net> - - * docs.sgml - NEWS - Smarty.addons.php - Smarty.class.php: - fixed bugs and added assign attribute to several functions - -2001-11-27 Andrei Zmievski <andrei@php.net> - - * NEWS: Some rewording. - - * Smarty_Compiler.class.php: Fix $smarty.capture access. - - * TODO: *** empty log message *** - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php: - Made {config_load ..} merge globals from each config file only once per scope. - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php: - Added {foreach ...}. - - Made certain $smarty.* references handled at compilation time. - -2001-11-26 Monte Ohrt <monte@ispi.net> - - * Config_File.class.php - NEWS - Smarty.class.php - Smarty_Compiler.class.php - docs.sgml: commit cache handler functionality - -2001-11-20 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.addons.php - Smarty_Compiler.class.php: Various fixes and additions. - - * NEWS - index.php: *** empty log message *** - -2001-11-05 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: changed _read_file parameter from $end to $lines - - * NEWS - Smarty.class.php: fixed is_cache, make cache reading more efficient - -2001-11-02 Monte Ohrt <monte@ispi.net> - - * FAQ - NEWS: update FAQ with mailing list Reply-To header FAQ - - * NEWS - Smarty.class.php - index.php: supress fopen errors, return false if cache file won't load - -2001-11-01 Monte Ohrt <monte@ispi.net> - - * QUICKSTART - docs.sgml - index.php: update QUICKSTART guide with index key example - - * Config_File.class.php - NEWS - README - RELEASE_NOTES - Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php - docs.sgml: commit all updates for 1.4.6 - -2001-11-01 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - -2001-10-30 Monte Ohrt <monte@ispi.net> - - * Smarty.addons.php: fix assign function problem with empty value passed - - * NEWS - Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php - templates/debug.tpl: - fixed bug in assign function when passing an empty value - -2001-10-26 Monte Ohrt <monte@ispi.net> - - * Smarty.addons.php - Smarty.class.php - index.php: fix minor typo in debug code - -2001-10-26 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: Typo. - -2001-10-26 Monte Ohrt <monte@ispi.net> - - * Smarty.addons.php: - update debug console output, handle html encoding correctly - -2001-10-26 Andrei Zmievski <andrei@php.net> - - * Smarty.addons.php - templates/debug.tpl: Debug formatting. - - * Smarty.class.php: Disable rmdir warning. - -2001-10-26 Monte Ohrt <monte@ispi.net> - - * Smarty.addons.php - Smarty.class.php - templates/debug.tpl: update debugging to expand array variables - - * Smarty.class.php - docs.sgml: - update docs for fetching only timestamp with custom template source functions - - * Smarty.addons.php: fix debug console error - -2001-10-26 Andrei Zmievski <andrei@php.net> - - * docs.sgml: Typos. - - * Smarty.addons.php: Cleanup whitespace. - - * Smarty_Compiler.class.php: Clean up whitespace. - - * Smarty.class.php: Cleaning up code, formatting mostly. - - * NEWS: *** empty log message *** - -2001-10-25 Monte Ohrt <monte@ispi.net> - - * NEWS - docs.sgml: update documentation to current version - - * NEWS - Smarty.addons.php: - updated fetch to give proper warning when fetching unreadable or nonexistant files - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php: - fixed problem with newline at the end of compiled templates - - * NEWS - Smarty.class.php: recompile cache if config file gets modified too. - - * NEWS - Smarty.class.php: - added feature to regenerate cache if compile_check is enabled and an - involved template is modified - -2001-10-23 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: fix indent for insert tags in debug console - - * templates/debug.tpl: update debug.tpl file format - - * NEWS - Smarty.addons.php - Smarty.class.php - templates/debug.tpl: - update execution time debugging, move into include list - -2001-10-10 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php: - fixed up execution time output in debug console - -2001-10-09 Andrei Zmievski <andrei@php.net> - - * Config_File.class.php - NEWS - Smarty.class.php - TODO: Added support for hidden config vars. - -2001-10-04 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.addons.php - Smarty.class.php - templates/debug.tpl: added execution times to debug console - -2001-10-02 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php: Add space. - -2001-10-01 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: Fix reference to compile_id. - -2001-09-28 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php: Added postfilter functions. - -2001-09-26 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php - docs.sgml: Rename to clear_compiled_tpl(). - -2001-09-25 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty_Compiler.class.php: - Fixed line number reporting when removing comments. - -2001-09-20 Monte Ohrt <monte@ispi.net> - - * NEWS - RELEASE_NOTES - Smarty.addons.php: made html_options output xhtml compatible - -2001-09-19 Monte Ohrt <monte@ispi.net> - - * Config_File.class.php - NEWS - README - RELEASE_NOTES - Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php - templates/debug.tpl: updated version numbers - -2001-09-16 Monte Ohrt <monte@ispi.net> - - * FAQ - NEWS - docs.sgml: fix doc error with insert function - -2001-09-06 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - -2001-08-31 Monte Ohrt <monte@ispi.net> - - * NEWS: update ChangeLog - - * overlib.js - Smarty.addons.php - Smarty.class.php - docs.sgml: - update overlib to 3.50, adjust addon code so that the overlib.js file isn't modified - -2001-08-31 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: - compile_id changes - - * NEWS - Smarty.addons.php: - compile_id support - - new options for html_select_date - -2001-08-23 Andrei Zmievski <andrei@php.net> - - * TODO: *** empty log message *** - -2001-08-10 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php: - Modified to pass Smarty object as second parameter to insert functions. - Also moved _smarty_mod_handler() and _smarty_insert_handler() into the class. - - * NEWS - Smarty_Compiler.class.php: - Passing Smarty as second parameter to prefilter functions. - -2001-08-09 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - -2001-08-09 Monte Ohrt <monte@ispi.net> - - * templates/index.tpl - Smarty.class.php: add smarty.now variable to template - -2001-08-06 Monte Ohrt <monte@ispi.net> - - * templates/index.tpl: change config_load section back to setup - -2001-08-06 Andrei Zmievski <andrei@php.net> - - * Smarty.addons.php: Optimize a bit. - -2001-08-04 Monte Ohrt <monte@ispi.net> - - * docs.sgml: update capture documentation - -2001-08-03 Monte Ohrt <monte@ispi.net> - - * FAQ - NEWS - Smarty.class.php: - fix bug with URL controlled debugging, works now (Monte) - -2001-08-01 Andrei Zmievski <andrei@php.net> - - * Config_File.class.php: *** empty log message *** - - * Smarty_Compiler.class.php - Smarty.class.php: - Fixed some E_NOTICE stuff in compiler. - - Generalized assign_smarty_interface() a bit. - -2001-07-24 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty_Compiler.class.php - TODO: See ChangeLog for details. - -2001-07-20 Andrei Zmievski <andrei@php.net> - - * Config_File.class.php: Booleanize case-insensitively. - -2001-07-17 Monte Ohrt <monte@ispi.net> - - * NEWS: update ChangeLog - - * Smarty.class.php - docs.sgml: put SMARTY_DIR on Config_File require - -2001-07-11 Monte Ohrt <monte@ispi.net> - - * docs.sgml - FAQ - NEWS - Smarty.class.php: - updated security to not include insecure docs, only warning - -2001-07-10 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: Adding 'sizeof' as an allowed {if} function. - -2001-07-06 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - -2001-07-06 Monte Ohrt <monte@ispi.net> - - * Config_File.class.php - NEWS - README - RELEASE_NOTES - Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php: update version number to 1.4.4 - - * NEWS - Smarty.addons.php - Smarty_Compiler.class.php - docs.sgml - templates/header.tpl - templates/index.tpl: update documenatation, template examples - -2001-07-03 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php: Implemented access to request vars via $smarty var. - - * NEWS - Smarty_Compiler.class.php: - Fixed a bug with parsing function arguments in {if} tags. - -2001-06-30 Monte Ohrt <monte@ispi.net> - - * NEWS: update ChangeLog - -2001-06-29 Monte Ohrt <monte@ispi.net> - - * Smarty.addons.php - Smarty.class.php - docs.sgml - overlib.js: - moved overlib to separate file, added SMARTY_DIR, documented. added much documentation - -2001-06-29 Andrei Zmievski <andrei@php.net> - - * NEWS - RELEASE_NOTES - TODO: *** empty log message *** - -2001-06-29 Monte Ohrt <monte@ispi.net> - - * NEWS - README - RELEASE_NOTES - Smarty.addons.php - Smarty.class.php - docs.sgml - index.php - templates/debug.tpl - templates/header.tpl - templates/index.tpl: update release notes - -2001-06-27 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php: *** empty log message *** - - * NEWS - Smarty_Compiler.class.php: Implemented 'step' section attribute. - - * Smarty_Compiler.class.php: Negative values of 'max' will mean no max. - - * AUTHORS - NEWS: *** empty log message *** - -2001-06-26 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php - index.php: Added 'max' and 'start' section attributes. - Added 'total' and 'iteration' section properties. - -2001-06-25 Andrei Zmievski <andrei@php.net> - - * Config_File.class.php - RELEASE_NOTES - Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php: Update version numbers. - -2001-06-23 Andrei Zmievski <andrei@php.net> - - * TODO: *** empty log message *** - -2001-06-21 Andrei Zmievski <andrei@php.net> - - * Config_File.class.php - NEWS: Fixed booleanization bug. - -2001-06-20 Monte Ohrt <monte@ispi.net> - - * docs.sgml: - update documents to reflect changes to cached content & debugging - -2001-06-20 Andrei Zmievski <andrei@php.net> - - * Smarty.addons.php - Smarty.class.php: Remove debug output for cached and fetched cases. - -2001-06-20 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: update include_info to false - - * Smarty.class.php - docs.sgml - index.php - templates/footer.tpl: - moved debug logic into Smarty completely, created flags for it - -2001-06-19 Andrei Zmievski <andrei@php.net> - - * Smarty.addons.php - Smarty.class.php - templates/debug.tpl: *** empty log message *** - - * NEWS - Smarty.class.php: Remove unneeded debug functions. - -2001-06-19 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.addons.php - Smarty.class.php - docs.sgml - templates/debug.tpl - templates/footer.tpl: commit updates, add debug template - -2001-06-19 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php - Smarty_Compiler.class.php - TODO: - Moved config loading code inside main class, the compiled template now - simply calls that method. - -2001-06-15 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php - templates/index.tpl: * moved config array into class itself - * added 'scope' attribute for config_load - - * Smarty_Compiler.class.php - Smarty.addons.php - Smarty.class.php: Finishing up secure mode. - -2001-06-15 Monte Ohrt <monte@ispi.net> - - * NEWS: update ChangeLog - - * Smarty_Compiler.class.php: cleaned up logic of if statement security - - * Smarty_Compiler.class.php: update if logic to cover more situations - - * Smarty_Compiler.class.php - docs.sgml: update if statement security feature - -2001-06-14 Andrei Zmievski <andrei@php.net> - - * Smarty.addons.php - Smarty.class.php: *** empty log message *** - - * NEWS - Smarty_Compiler.class.php: - Fixed a bug with quoted strings inside if statements. - -2001-06-13 Monte Ohrt <monte@ispi.net> - - * Smarty.addons.php - Smarty.class.php: added secure_dir array for multiple secure directories - - * Smarty.addons.php: update fetch funtion to respect security setting - - * NEWS - Smarty.addons.php - Smarty.class.php - docs.sgml: update documentation, changelog - - * Smarty.addons.php - Smarty.class.php: moved _extract setting to assign functions - - * Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php: - added assign/unassign custom functions, ability to re-extract tpl_vars - - * Smarty.class.php - Smarty_Compiler.class.php - docs.sgml - index.php: commit security features - -2001-06-11 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: Version variable typo. - -2001-06-05 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: - Create config object in fetch() or just set the config path if it already - exists. - -2001-06-04 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: *** empty log message *** - - * NEWS - Smarty_Compiler.class.php: - Fixed a problem with $<number> inside strip tags. - -2001-05-31 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - - * Config_File.class.php: Allow empty config_path. - -2001-05-29 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php - docs.sgml - NEWS - README - RELEASE_NOTES - Smarty.addons.php - Smarty.class.php: update version numbers - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php - docs.sgml: moved version variable to internal variable - -2001-05-22 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php: - Moved $_smarty_sections and $_smarty_conf_obj into Smarty class. - -2001-05-18 Monte Ohrt <monte@ispi.net> - - * NEWS: update ChangeLog - - * FAQ - QUICKSTART: update FAQ, QUICKSTART for windows include_path setup - - * configs/test.conf: added configs directory to cvs - -2001-05-18 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: Use compiler_class for including the file. - -2001-05-18 Monte Ohrt <monte@ispi.net> - - * docs.sgml: fix typo - -2001-05-16 Monte Ohrt <monte@ispi.net> - - * README - RELEASE_NOTES - Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php: update files to version 1.4.1 - - * NEWS: update ChangeLog - -2001-05-15 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - - * index.php: forget that! - - * NEWS - Smarty_Compiler.class.php - index.php: Fixed a few E_NOTICE warnings. - -2001-05-09 Monte Ohrt <monte@ispi.net> - - * NEWS - RELEASE_NOTES - Smarty.addons.php - Smarty.class.php - docs.sgml: update dates versions - -2001-05-09 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - - * Smarty.class.php: - Use absolute paths when requiring/including Smart components. - - * NEWS: *** empty log message *** - - * Smarty.class.php: Use write mode instead of append. - -2001-05-02 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty_Compiler.class.php: Fix indexing by section properties. - -2001-05-02 Monte Ohrt <monte@ispi.net> - - * NEWS: update changelog - - * Smarty.class.php: remove period from syntax error - -2001-05-02 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php: Double-quote the attribute values by default. - -2001-04-30 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php - NEWS: added simple {capture} logic - -2001-04-30 Andrei Zmievski <andrei@php.net> - - * TODO: *** empty log message *** - - * Smarty_Compiler.class.php - Smarty.class.php: Fix passing config vars to included files. - - * Smarty.class.php - Smarty_Compiler.class.php: Fix inclusion again. - -2001-04-30 Monte Ohrt <monte@ispi.net> - - * FAQ - RELEASE_NOTES - Smarty.class.php - misc/fix_vars.php - NEWS: update paths for windows (c:) - -2001-04-28 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php - Smarty_Compiler.class.php: Fix passing variables to included files. - - * templates/index.tpl: *** empty log message *** - -2001-04-27 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php: Fix includes. - -2001-04-26 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php - docs.sgml - Smarty.class.php: Formatting mostly. - - * Smarty_Compiler.class.php - Config_File.class.php: *** empty log message *** - -2001-04-26 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php - docs.sgml - FAQ - NEWS - QUICKSTART - RELEASE_NOTES - Smarty.class.php: update docs with new changes - -2001-04-26 Andrei Zmievski <andrei@php.net> - - * RELEASE_NOTES: *** empty log message *** - - * docs.sgml - templates/index.tpl - NEWS - Smarty_Compiler.class.php: Added ability to reference object properties. - -2001-04-25 Andrei Zmievski <andrei@php.net> - - * README - Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php - docs.sgml - AUTHORS - Config_File.class.php - CREDITS - RELEASE_NOTES - NEWS: *** empty log message *** - - * docs.sgml: Docs on new parameter to custom functions. - - * NEWS: *** empty log message *** - - * Smarty_Compiler.class.php: - Changing the way tpl vars are referenced and passing smarty object - to custom functions. - - * RELEASE_NOTES - docs.sgml: Fixing docs a bit. - -2001-04-24 Andrei Zmievski <andrei@php.net> - - * docs.sgml: Docs for $compiler_class and compiler functions. - - * templates/index.tpl: *** empty log message *** - - * Smarty_Compiler.class.php: Remove debugging. - -2001-04-24 Monte Ohrt <monte@ispi.net> - - * docs.sgml: update compiler function docs - -2001-04-24 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php - Smarty_Compiler.class.php - templates/index.tpl: Added compiler function support. - -2001-04-24 Monte Ohrt <monte@ispi.net> - - * RELEASE_NOTES - Smarty.class.php: - update notes, change show_info_header to false by default - - * Smarty.class.php - Smarty_Compiler.class.php - docs.sgml - CREDITS - FAQ - NEWS - README - RELEASE_NOTES: update documenation, bug fixes - -2001-04-24 Andrei Zmievski <andrei@php.net> - - * misc/fix_vars.php: Hopefully fix for sure. - -2001-04-23 Monte Ohrt <monte@ispi.net> - - * misc/fix_vars.php: uncomment copy/unlink - -2001-04-23 Andrei Zmievski <andrei@php.net> - - * misc/fix_vars.php: Do it more thoroughly. - - * misc/fix_vars.php: check for } - -2001-04-22 Andrei Zmievski <andrei@php.net> - - * misc/fix_vars.php: Fix variable parsing. - -2001-04-20 Monte Ohrt <monte@ispi.net> - - * misc/fix_vars.php: fix problem with 4.0.5-dev and preg_replace_callback - -2001-04-19 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php - docs.sgml - misc/fix_vars.php - NEWS - RELEASE_NOTES - Smarty.class.php: update notes/documentation - - * NEWS - README - RELEASE_NOTES - Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php - docs.sgml: update files for 1.4.0 release - -2001-04-16 Andrei Zmievski <andrei@php.net> - - * misc/fix_vars.php: Added fix_vars.php script. - -2001-04-16 Monte Ohrt <monte@ispi.net> - - * QUICKSTART - RELEASE_NOTES - docs.sgml - templates/index.tpl: - update RELEASE_NOTES & scripts with new section var syntax - -2001-04-13 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php: * Implement new variable format parser. - * Optimizing config load a bit. - -2001-04-13 Monte Ohrt <monte@ispi.net> - - * FAQ - NEWS - RELEASE_NOTES - Smarty.class.php: - added $check_cached_insert_tags to speed up cached pages if - {insert ...} is not used (Monte) - -2001-04-12 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php - RELEASE_NOTES: *** empty log message *** - - * Smarty_Compiler.class.php: Remove redundant functions. - - * Smarty.class.php: Formatting. - -2001-04-12 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: update file: parsing - - * Smarty.class.php - docs.sgml: update documentation - -2001-04-12 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php - Smarty_Compiler.class.php - TODO: *** empty log message *** - -2001-04-11 Monte Ohrt <monte@ispi.net> - - * FAQ - QUICKSTART - RELEASE_NOTES: added RELEASE_NOTES file to cvs - - * NEWS - docs.sgml: update ChangeLog, update documentation - - * Smarty.class.php - Smarty_Compiler.class.php - templates/index.tpl: - update Smarty to compile at run-time. added ability to get files from - absolute paths, added work around for LOCK_EX and windows, changed a few - file permissions to be more secure. - -2001-03-29 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.addons.php: - allow arbitrary date strings instead of just timestamps - -2001-03-28 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php - Smarty_Compiler.class.php - docs.sgml - FAQ - NEWS - README - Smarty.addons.php: - update version in class, update docs for count_ and new vars - - * templates/index.tpl - docs.sgml: update docs, example template - -2001-03-28 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php: Some variable renaming. - -2001-03-23 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php - NEWS: Fixed nested include infinite repeat bug. - -2001-03-23 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: fix version number - - * Smarty.class.php - NEWS: added optional HTML header to output - -2001-03-22 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php: Fixed inclusion of dynamic files. - -2001-03-16 Andrei Zmievski <andrei@php.net> - - * Smarty_Compiler.class.php: Fixing the config_load scoping. - - * Smarty_Compiler.class.php: making config variables global for now. - -2001-03-15 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - - * Smarty_Compiler.class.php: - * Includes are now always done via generated function call to protect - namespace. - * config_load now always uses global config object to improve - performance. - -2001-03-13 Monte Ohrt <monte@ispi.net> - - * docs.sgml: update math documentation with format attribute - -2001-03-11 Monte Ohrt <monte@ispi.net> - - * docs.sgml - NEWS - Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php: update math function with format attribute - -2001-03-10 Andrei Zmievski <andrei@php.net> - - * Smarty.addons.php: *** empty log message *** - - * NEWS - Smarty.addons.php - Smarty.class.php: Added html_select_time custom function. - -2001-03-08 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php - Smarty_Compiler.class.php - NEWS - README - Smarty.addons.php: rename 1.3.1b to 1.3.1pl1 - - * NEWS - Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php: update version numbers, changelog - - * Smarty.class.php - Smarty_Compiler.class.php: - moved _syntax_error to Smarty_Compiler.class.php - - * Smarty.class.php - docs.sgml: - missing _syntax_error function recovered. fixed minor syntax in docs - -2001-03-07 Monte Ohrt <monte@ispi.net> - - * QUICKSTART - README - Smarty.addons.php - Smarty.class.php - Smarty_Compiler.class.php - BUGS - INSTALL - NEWS: update everything to 1.3.1 - -2001-03-03 Monte Ohrt <monte@ispi.net> - - * Smarty_Compiler.class.php - Smarty.class.php: fixed bug with cached insert tags - -2001-03-02 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php - Smarty_Compiler.class.php: - fix cache fuctions with separated compiled class - - * FAQ - NEWS - docs.sgml: update changelog - -2001-03-02 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty_Compiler.class.php: Added 'first' and 'last' section properties. - -2001-03-02 Monte Ohrt <monte@ispi.net> - - * TODO: remove compiling separation TODO - - * Smarty_Compiler.class.php - Smarty.addons.php - Smarty.class.php: update function headers - - * templates/index.tpl - NEWS - Smarty.class.php - Smarty_Compiler.class.php - index.php: split out compiling code for faster execution - - * Smarty.class.php: fixed a few warning messages - - * Smarty.addons.php - Smarty.class.php - docs.sgml - NEWS: added fetch, unregister mod/fun, updated docs - -2001-03-01 Monte Ohrt <monte@ispi.net> - - * Smarty.addons.php: added "int" to available list - - * docs.sgml - FAQ - Smarty.class.php: update FAQ, add math functions & update documetation - - * index.php - Smarty.addons.php - Smarty.class.php - docs.sgml: fixed literal tags and other optional delimiters - -2001-02-26 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php: - Added index_prev, index_next section properties and ability to - index by them. - - * NEWS - Smarty.addons.php - Smarty.class.php: Reverting the plugins patch - needs more thought. - - * Smarty.class.php: Fixing plugin loading. - -2001-02-23 Andrei Zmievski <andrei@php.net> - - * Smarty.addons.php - Smarty.class.php - plugins/standard.plugin.php - NEWS: Added plugin functionality. - -2001-02-22 Monte Ohrt <monte@ispi.net> - - * docs.sgml - templates/index.tpl - NEWS - README - Smarty.class.php: fixed issue with php tags executed in literal blocks - -2001-02-21 Monte Ohrt <monte@ispi.net> - - * NEWS: update changelog for LGPL change - - * Smarty.class.php - docs.sgml - README - Smarty.addons.php: updated version numbers to 1.3.0 - - * NEWS - templates/index.tpl: update changelog, rearrange index.tpl file - -2001-02-21 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php: *** empty log message *** - -2001-02-21 Monte Ohrt <monte@ispi.net> - - * docs.sgml: update parameters for is_cached and fetch - -2001-02-21 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php: *** empty log message *** - -2001-02-21 Monte Ohrt <monte@ispi.net> - - * NEWS - Smarty.addons.php - docs.sgml: update docs, remove header function from addons - -2001-02-20 Monte Ohrt <monte@ispi.net> - - * FAQ - NEWS: update changelog - - * TODO: update todo - - * TODO: update todo list - - * Smarty.class.php: update php tag handling logic - -2001-02-19 Monte Ohrt <monte@ispi.net> - - * index.php - Config_File.class.php - FAQ - Smarty.class.php - docs.sgml: fixed <?php tag at beginning of files, updated docs - -2001-02-19 Andrei Zmievski <andrei@php.net> - - * Smarty.addons.php: *** empty log message *** - -2001-02-13 Andrei Zmievski <andrei@php.net> - - * TODO: *** empty log message *** - -2001-02-12 Andrei Zmievski <andrei@php.net> - - * templates/index.tpl - Smarty.class.php: *** empty log message *** - -2001-02-10 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: remove unneeded preg_match - - * Smarty.class.php: remove comment - - * Smarty.class.php: updated php escape to handle <script language="php"> - - * NEWS - Smarty.class.php: fix php tag escapement logic - - * NEWS: commit changelog - - * docs.sgml: update header docs - - * docs.sgml - Smarty.addons.php - Smarty.class.php: added header custom function - -2001-02-09 Monte Ohrt <monte@ispi.net> - - * index.php - templates/header.tpl - templates/index.tpl - INSTALL - QUICKSTART - docs.sgml: update documentation, add examples to test script. - -2001-02-08 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: *** empty log message *** - -2001-02-08 Monte Ohrt <monte@ispi.net> - - * COPYING.lib: added COPYING.lib - - * COPYING - Config_File.class.php - Smarty.addons.php - Smarty.class.php - docs.sgml: changed license to LGPL for commercial use - - * docs.sgml - Smarty.class.php: fix clear_assign syntax error - -2001-02-07 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: added ability to pass array to clear_assign - - * index.php - templates/index.tpl - docs.sgml: - update documentation, remove tests from index file and template - -2001-02-07 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php: Adding file locking. - - * templates/index.tpl - Smarty.addons.php - Smarty.class.php - index.php: More cache work. - -2001-02-06 Monte Ohrt <monte@ispi.net> - - * docs.sgml - Smarty.class.php: - change register_ function names, update documents with tables - -2001-02-06 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php - templates/index.tpl: Reworking and optimizing the cache system. - - * Smarty.class.php: Restoring ?> in patterns. - -2001-02-05 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php - docs.sgml: update cache directory creation logic - -2001-02-05 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: Removing once-only subpattern for now.. - - * Smarty.class.php: Fix modifier arg parsing. - -2001-02-02 Andrei Zmievski <andrei@php.net> - - * NEWS - Smarty.class.php - templates/index.tpl: See changelog. - -2001-02-01 Andrei Zmievski <andrei@php.net> - - * README: *** empty log message *** - - * Smarty.class.php: Use 'echo' instead of 'print'. - - * Smarty.addons.php: *** empty log message *** - -2001-02-01 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: rearranged variables at top of script - -2001-02-01 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: Retabbing. - - * templates/index.tpl - Smarty.class.php - index.php: *** empty log message *** - -2001-02-01 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: update caching logic - - * Smarty.class.php: fixed clear_all_cache bugs - - * Smarty.class.php: fix .cache check - - * docs.sgml - FAQ - Smarty.class.php: update .che to .cache - - * FAQ - Smarty.class.php - docs.sgml: updated docs for caching, added clear_all_cache() directive - -2001-01-31 Monte Ohrt <monte@ispi.net> - - * index.php - templates/index.tpl - docs.sgml: upated docs for date_format and html_options - -2001-01-31 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - - * Smarty.addons.php - index.php: Added ability to pass 'options' attribute to html_options. - - * Smarty.addons.php - Smarty.class.php - docs.sgml - index.php - templates/index.tpl - Config_File.class.php - NEWS - README: Reworking, simplifying, and speeding up cache implementation. - Fixing the infelicity where you couldn't have '|' and ':' inside - quoted modifier arguments. - -2001-01-31 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php - index.php - templates/index.tpl: removed DEBUG lines - -2001-01-30 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: changed default expire to 3600 - - * Config_File.class.php - NEWS - README - Smarty.addons.php - Smarty.class.php: updated version numbers - - * docs.sgml - NEWS - Smarty.class.php: - added caching, force compile, force cache, misc performance updates - -2001-01-30 Andrei Zmievski <andrei@php.net> - - * NEWS: *** empty log message *** - - * Smarty.class.php - templates/index.tpl: Remove debug message. - - * Smarty.class.php - templates/index.tpl: Fixing the compile directory mayhem... - - * Smarty.class.php: - Fix problem with {strip} around {section} and {include} - - * Smarty.addons.php: *** empty log message *** - -2001-01-29 Monte Ohrt <monte@ispi.net> - - * FAQ - NEWS - README - Smarty.class.php: fixed PHP_VERSION check, misc doc updates - - * index.php - Config_File.class.php - NEWS - QUICKSTART - README - Smarty.addons.php - Smarty.class.php - docs.sgml: updated for 1.2.1 compile_dir changes, misc doc updates - -2001-01-26 Monte Ohrt <monte@ispi.net> - - * BUGS - README: update BUGS and README files - - * FAQ: updated FAQ - - * Config_File.class.php - FAQ - NEWS - README - Smarty.addons.php - docs.sgml - templates/index.tpl - AUTHORS: update again - -2001-01-26 Andrei Zmievski <andrei@php.net> - - * docs.sgml - NEWS - README - Smarty.class.php - templates/index.tpl: *** empty log message *** - - * Smarty.class.php - index.php - templates/index.tpl: Added ability to index by key. - -2001-01-25 Monte Ohrt <monte@ispi.net> - - * NEWS: update changelog - - * README - Smarty.addons.php - Smarty.class.php - docs.sgml - AUTHORS: updated versions to 1.1.0 - - * docs.sgml - templates/index.tpl - Config_File.class.php - Smarty.addons.php - Smarty.class.php: update copyright notice - - * Config_File.class.php - Smarty.addons.php - Smarty.class.php - docs.sgml: added misc info - -2001-01-24 Monte Ohrt <monte@ispi.net> - - * Smarty.addons.php - index.php - templates/index.tpl - Config_File.class.php: initial commit - -2001-01-23 Monte Ohrt <monte@ispi.net> - - * docs.sgml: fix typo - -2001-01-22 Monte Ohrt <monte@ispi.net> - - * doc.sgm - docs.sgml: updated docs, renamed file - - * FAQ: updated FAQ - - * NEWS - README: updated Changelog and Readme - - * doc.sgm: updated doc.sgm error - - * AUTHORS - COPYING - INSTALL - NEWS - QUICKSTART: misc doc changes, added AUTHORS, COPYING - -2001-01-22 Andrei Zmievski <andrei@php.net> - - * NEWS - templates/index.tpl: *** empty log message *** - - * Smarty.class.php - templates/index.tpl: - Fixed bug that wouldn't let you do specify non-array values for 'loop' - attribute. - -2001-01-22 Monte Ohrt <monte@ispi.net> - - * QUICKSTART: updated QUICKSTART - - * BUGS - FAQ - INSTALL - README - doc.sgm: added BUGS and INSTALL, updated docs, FAQ, README - -2001-01-21 Monte Ohrt <monte@ispi.net> - - * FAQ - doc.sgm: updates to FAQ and docs - -2001-01-19 Monte Ohrt <monte@ispi.net> - - * FAQ: initial commit of FAQ - - * QUICKSTART - README - doc.sgm - index.php: - updated README, doc.sgm with preg_replace() parameter issue. also removed "./" from index.php file - - * NEWS: initial commit of changelog - - * doc.sgm - QUICKSTART: update quickstart text - -2001-01-19 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: Fix the compiled template check. - -2001-01-18 Andrei Zmievski <andrei@php.net> - - * doc.sgm: *** empty log message *** - -2001-01-18 Monte Ohrt <monte@ispi.net> - - * index.php - templates/index.tpl - QUICKSTART - Smarty.addons.php - Smarty.class.php - doc.sgm: update changes - -2001-01-18 Andrei Zmievski <andrei@php.net> - - * QUICKSTART - Smarty.addons.php: *** empty log message *** - -2001-01-18 Monte Ohrt <monte@ispi.net> - - * QUICKSTART - doc.sgm: add QUICKSTART, update docs for default modifier - - * Smarty.addons.php - Smarty.class.php: added default modifier - - * README - Smarty.addons.php - Smarty.class.php - doc.sgm - templates/index.tpl: added dislaimers - -2001-01-18 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: *** empty log message *** - -2001-01-16 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php - templates/index.tpl: Implement 'div by'. - -2001-01-12 Monte Ohrt <monte@ispi.net> - - * doc.sgm: update docs - - * doc.sgm: doc changes - - * doc.sgm: update docs - -2001-01-12 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php - doc.sgm: *** empty log message *** - - * Smarty.class.php: Fix template traversal. - -2001-01-11 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: *** empty log message *** - -2001-01-09 Andrei Zmievski <andrei@php.net> - - * Smarty.addons.php - Smarty.class.php: *** empty log message *** - -2001-01-09 Monte Ohrt <monte@ispi.net> - - * doc.sgm: update manual - -2001-01-05 Monte Ohrt <monte@ispi.net> - - * doc.sgm - Smarty.addons.php: commit changes - -2001-01-04 Monte Ohrt <monte@ispi.net> - - * doc.sgm - templates/index.tpl - Smarty.class.php: update changes - - * index.php - Smarty.addons.php - doc.sgm: add documentation - -2001-01-02 Monte Ohrt <monte@ispi.net> - - * index.php - templates/index.tpl - Smarty.addons.php - Smarty.class.php: prepend insert_ to insert tag functions - - * Smarty.class.php - index.php - templates/index.tpl: remove caching logic - - * README - Smarty.class.php - index.php - templates/index.tpl: update changes - -2000-12-27 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php - templates/header.tpl - templates/index.tpl - Smarty.addons.php: *** empty log message *** - -2000-12-21 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: Fix access to template variables. - - * Smarty.class.php - templates/header.tpl: - Added support for passing variables to included files. - -2000-12-20 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php: - Added support for inserting results of function processing a template. - -2000-12-18 Monte Ohrt <monte@ispi.net> - - * Smarty.class.php: added string_format function - - * Smarty.addons.php: update format to string_format - - * README - Smarty.addons.php - Smarty.class.php: added format addon function - -2000-12-13 Andrei Zmievski <andrei@php.net> - - * Smarty.addons.php - Smarty.class.php: Fix sectionelse. - -2000-12-07 Andrei Zmievski <andrei@php.net> - - * Smarty.addons.php - Smarty.class.php - templates/index.tpl: *** empty log message *** - -2000-12-04 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php - templates/index.tpl - Smarty.addons.php: *** empty log message *** - -2000-11-27 Andrei Zmievski <andrei@php.net> - - * templates/index.tpl - Smarty.class.php: *** empty log message *** - -2000-11-22 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php - templates/index.tpl: *** empty log message *** - -2000-11-21 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php - templates/index.tpl - Smarty.addons.php: *** empty log message *** - -2000-11-20 Andrei Zmievski <andrei@php.net> - - * templates/index.tpl - Smarty.class.php - Smarty.addons.php - index.php: *** empty log message *** - - * Smarty.class.php - index.php - templates/index.tpl: Made sections work mostly. - -2000-11-19 Andrei Zmievski <andrei@php.net> - - * index.php - templates/index.tpl: *** empty log message *** - -2000-11-17 Andrei Zmievski <andrei@php.net> - - * Smarty.class.php - Smarty.addons.php: *** empty log message *** - -2000-11-15 Monte Ohrt <monte@ispi.net> - - * index.php - templates/footer.tpl - templates/header.tpl - templates/index.tpl: added template files to cvs dir - - * README - Smarty.class.php: commit changes - -2000-08-08 Monte Ohrt <monte@ispi.net> - - * README - Smarty.class.php: update include path bug - - * README: add README file - - * Smarty.class.php: New file. - - * Smarty.class.php: initial import - diff --git a/livesupport/modules/htmlUI/var/html/Smarty/FAQ b/livesupport/modules/htmlUI/var/html/Smarty/FAQ deleted file mode 100644 index 1860678e7..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/FAQ +++ /dev/null @@ -1,284 +0,0 @@ -QUESTION INDEX --------------- - -GENERAL - -Q: What is Smarty? -Q: What's the difference between Smarty and other template engines? -Q: What do you mean "Compiled PHP Scripts" ? -Q: Why can't I just use PHPA (http://php-accelerator.co.uk) or Zend Cache? -Q: Why does smarty have a built in cache? Wouldn't it be better to handle this - in a separate class? -Q: Is Smarty faster than <insert other PHP template engine>? -Q: How can I be sure to get the best performance from Smarty? -Q: Do you have a mailing list? -Q: Can you change the mailing list so reply-to sends to the list and not the - user? - -TROUBLESHOOTING - -Q: Smarty doesn't work. -Q: I get the following error when running Smarty: - Warning: Smarty error: problem creating directory "templates_c/239/239105369" - in /path/to/Smarty.class.php on line 542 -Q: I get the following error when running Smarty: - Warning: Wrong parameter count for preg_replace() in - Smarty.class.php on line 371 -Q: I get this error when passing variables to {include}: - Fatal error: Call to undefined function: get_defined_vars() in - /path/to/Smarty/templates_c/index.tpl.php on line 8 -Q: I get PHP errors in my {if} tag logic. -Q: I'm changing my php code and/or templates, and my results are not getting - updated. -Q: I'm running Windows 2000 and I get blank content. My compiled PHP files are - also zero length. -Q: The template goes into an infinite loop when I include included templates - that pass local variables -Q: Javascript is causing Smarty errors in my templates. -Q: I get "SAFE MODE Restriction in effect. ..."-errors when running smarty. - -MISC - -Q: Can I use Macromedia's Dreamweaver to edit my templates? -Q: Dreamweaver is urlencoding the template delimiters when they are in a SRC or - HREF link. How do I get around this? - -HOWTO - -Q: How do I generate different cache files per template based on arguments - passed to the page? -Q: How do I pass a template variable as a parameter? {function param={$varname}} - does not work. -Q: How do I include cached template(s) within a non-cached template? - - -GENERAL -------- - -Q: What is Smarty? -A: Smarty is a template engine for PHP... but be aware this isn't just another - PHP template engine. It's much more than that. - -Q: What's the difference between Smarty and other template engines? -A: Most other template engines for PHP provide basic variable substitution and - dynamic block functionality. Smarty takes a step further to be a "smart" - template engine, adding features such as configuration files, template - functions, variable modifiers (see the docs!) and making all of this - functionality as easy as possible to use for both programmers and template - designers. Smarty also compiles the templates into PHP scripts, eliminating - the need to parse the templates on every invocation, making Smarty extremely - scalable and manageable for large application needs. - -Q: What do you mean "Compiled PHP Scripts" ? -A: Smarty reads the template files and creates PHP scripts from them. Once - these PHP scripts are created, Smarty executes these, never having to parse - the template files again. If you change a template file, Smarty will - recreate the PHP script for it. All this is done automatically by Smarty. - Template designers never need to mess with the generated PHP scripts or even - know of their existance. (NOTE: you can turn off this compile checking step - in Smarty for increased performance.) - -Q: Why can't I just use PHPA (http://php-accelerator.co.uk) or Zend Cache? -A: You certainly can, and we highly recommend it! What PHPA does is caches - compiled bytecode of your PHP scripts in shared memory or in a file. This - speeds up server response and saves the compilation step. Smarty creates PHP - scripts, which PHPA will cache nicely. Now, Smarty's built-in cache is - something completely different. It caches the _output_ of the template - contents. For example, if you have a template that requires several database - queries, Smarty can cache this output, saving the need to call the database - every time. Smarty and PHPA (or Zend Cache) complement each other nicely. If - performance is of the utmost importance, we would recommend using one of - these with any PHP application, using Smarty or not. As you can see in the - benchmarks, Smartys performance _really_ excels in combination with a PHP - accelerator. - -Q: Why does Smarty have a built in cache? Wouldn't it be better to handle this - in a separate class? -A: Smarty's caching functionality is tightly integrated with the template - engine, making it quite a bit more flexible than a simple caching wrapper. - For instance, you can cache select portions of a template page. Let's say - you have a polling box on your site. With Smarty, you can leave the poll - dynamic and cache the rest of the page. You can also pass templates - multiple cache ids, meaning that a template can have several caches - depending on URL, cookies, etc. - -Q: Is Smarty faster than <insert other PHP template engine>? -A: See the benchmark page for some performance comparisons. Smarty's approach - to templates is a bit different from some languages: it compiles templates - into PHP scripts instead of parsing them on each invocation. This usually - results in great performance gains, especially with complex templates. - Coupled with the built-in caching of Smarty templates, the performance is - outstanding. - -Q: How can I be sure to get the best performance from Smarty? -A: Be sure you set $compile_check=false once your templates are initially - compiled. This will skip the unneeded step of testing if the template has - changed since it was last compiled. If you have complex pages that don't - change too often, turn on the caching engine and adjust your application so - it doesn't do unnecessary work (like db calls) if a cached page is - available. See the documentation for examples. - -Q: Do you have a mailing list? -A: We have a few mailing lists. "general" for you to share your ideas or ask - questions, "dev" for those interested in the development efforts of Smarty, - and "cvs" for those that would like to track the updates made in the cvs - repository. - - send a blank e-mail message to: - smarty-general-subscribe@lists.php.net (subscribe to the general list) - smarty-general-unsubscribe@lists.php.net (unsubscribe from the general list) - smarty-general-digest-subscribe@lists.php.net (subscribe to digest) - smarty-general-digest-unsubscribe@lists.php.net (unsubscribe from digest) - smarty-dev-subscribe@lists.php.net (subscribe to the dev list) - smarty-dev-unsubscribe@lists.php.net (unsubscribe from the dev list) - smarty-cvs-subscribe@lists.php.net (subscribe to the cvs list) - smarty-cvs-unsubscribe@lists.php.net (unsubscribe from the cvs list) - You can also browse the mailing list archives at - http://marc.theaimsgroup.com/?l=smarty&r=1&w=2 - - - -Q: Can you change the mailing list so Reply-To sends to the list and not the - user? -A: Yes we could, but no we won't. Use "Reply-All" in your e-mail client to send - to the list. http://www.unicom.com/pw/reply-to-harmful.html - -TROUBLESHOOTING ---------------- - -Q: Smarty doesn't work. -A: You must be using PHP 4.0.6 or later if you use any version of Smarty - past 2.0.1. Read the BUGS file for more info. - -Q: I get the following error when running Smarty: - Warning: Smarty error: problem creating directory "templates_c/239/239105369" - in /path/to/Smarty.class.php on line 542 -A: Your web server user does not have permission to write to the templates_c - directory, or is unable to create the templates_c directory. Be sure the - templates_c directory exists in the location defined in Smarty.class.php, - and the web server user can write to it. If you do not know the web server - user, chmod 777 the templates_c directory, reload the page, then check the - file ownership of the files created in templates_c. Or, you can check the - httpd.conf (usually in /usr/local/apache/conf) file for this setting: - User nobody - Group nobody - -Q: I get the following error when running Smarty: Warning: Wrong parameter - count for preg_replace() in Smarty.class.php on line 371 -A: preg_replace had a parameter added in PHP 4.0.2 that Smarty - requires. Upgrade to at least 4.0.6 to fix all known PHP issues with - Smarty. - -Q: I get this error when passing variables to {include}: - Fatal error: Call to undefined function: get_defined_vars() in - /path/to/Smarty/templates_c/index.tpl.php on line 8 -A: get_defined_vars() was added to PHP 4.0.4. If you plan on passing - variables to included templates, you will need PHP 4.0.6 or later. - -Q: I get PHP errors in my {if} tag logic. -A: All conditional qualifiers must be separated by spaces. This syntax will not - work: {if $name=="Wilma"} You must instead do this: {if $name == "Wilma"}. - The reason for this is syntax ambiguity. Both "==" and "eq" are equivalent - in the template parser, so something like {if $nameeq"Wilma"} wouldn't be - parsable by the tokenizer. - -Q: I'm changing my php code and/or templates, and my results are not getting - updated. -A: This may be the result of your compile or cache settings. If you are - changing your php code, your templates will not necessarily get recompiled - to reflect the changes. Use $force_compile during develpment to avoid these - situations. Also turn off caching during development when you aren't - specifically testing it. You can also remove everything from your - compile_dir and cache_dir and reload the page to be sure everything gets - regenerated. - -Q: I'm running Windows 2000 and I get blank content. My compiled PHP files are - also zero length. -A: There seems to be a problem with some W2k machines and exclusive file - locking. Comment out the flock() call in _write_file to get around this, - although be aware this could possibly cause a problem with simultaneous - writes to a file, especially with caching turned on. NOTE: As of Smarty - 1.4.0, a workaround was put in place that should solve this. - -Q: The template goes into an infinite loop when I include included templates - that pass local variables -A: This was fixed in 1.3.2 (new global attribute) - -Q: Javascript is causing Smarty errors in my templates. -A: Surround your javascript with {literal}{/literal} tags. See the docs. - -Q: I get "SAFE MODE Restriction in effect. ..."-errors when running smarty. -A: Use $smarty->use_sub_dirs = false when running php in safe mode. - -MISC ----- - -Q: Can I use Macromedia's Dreamweaver to edit my templates? -A: Certainly. You might want to change your tag delimiters from {} to something - that resembles valid HTML, like <!--{ }--> or <{ }> or something similar. - This way the editor won't view the template tags as errors. - -Q: Dreamweaver is urlencoding the template delimiters when they are in a SRC or - HREF link. How do I get around this? -A: In Edit - Properties - Rewrite HTML you can specify if Dreamweaver should - change special letters to %-equivalent or not. The default is on which - produces this error. - -HOWTO ------ - -Q: How do I generate different cache files per template based on arguments - passed to the page? -A: Use your $REQUEST_URI as the cache_id when fetching the page: - - global $REQUEST_URI; // if not already present - $smarty->display('index.tpl',$REQUEST_URI); - - This will create a separate cache file for each unique URL when you call - index.tpl. See the documentation for display() and fetch() - -Q: How do I pass a template variable as a parameter? {function param={$varname}} - does not work. -A: {function param=$varname} (You cannot nest template delimiters.) - -Q: How do I include cached template(s) within a non-cached template? -A: One way to do it: - - $smarty->caching = true; - $tpl1 = $smarty->fetch("internal1.tpl"); - $tpl2 = $smarty->fetch("internal2.tpl"); - $tpl3 = $smarty->fetch("internal3.tpl"); - - $smarty->assign("tpl1_contents",$tpl1); - $smarty->assign("tpl2_contents",$tpl2); - $smarty->assign("tpl3_contents",$tpl3); - - $smarty->caching = false; - $smarty->display('index.tpl'); - - index.tpl - --------- - - <table> - <tr> - <td>{$tpl1_contents}</td> - <td>{$tpl2_contents}</td> - <td>{$tpl3_contents}</td> - </tr> - </table> - - - - - Another approach: - - You could write a custom insert function to fetch your internal - templates: - - <table> - <tr> - <td>{insert name=fetch_tpl tpl="internal1.tpl"}</td> - <td>{insert name=fetch_tpl tpl="internal2.tpl"}</td> - <td>{insert name=fetch_tpl tpl="internal3.tpl"}</td> - </tr> - </table> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/INSTALL b/livesupport/modules/htmlUI/var/html/Smarty/INSTALL deleted file mode 100644 index f622ee8ff..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/INSTALL +++ /dev/null @@ -1,29 +0,0 @@ -REQUIREMENTS: - -Smarty requires PHP 4.0.6 or later. -See the on-line documentation for complete install instructions. - -INSTALLATION (quick): - -* copy the files under the libs/ directory to a directory that is in your PHP - include_path, or set the SMARTY_DIR constant and put them in this directory. - (if you upgrade from versions before 2.5.0 be aware that up to Smarty 2.4.2 - all necessary files where in the distribution's root directory, but are now - in libs/.) - -* for each application using Smarty, create a "templates", "configs", and a - "templates_c" directory, be sure to set the appropriate directory settings in - Smarty for them. If they are located in the same directory as your - application, they shouldn't need to be modified. Be sure the "templates_c" - directory is writable by your web server user (usually nobody). chown - nobody:nobody templates_c; chmod 700 templates_c You can also chmod 777 this - directory, but be aware of security issues for multi-user systems. If you are - using Smarty's built-in caching, create a "cache" directory and also chown - nobody:nobody. - -* setup your php and template files. A good working example is in the on-line - documentation. - -* TECHNICAL NOTE: If you do not have access to the php.ini file, you can change - non-server settings (such as your include_path) with the ini_set() command. - example: ini_set("include_path",".:/usr/local/lib/php"); diff --git a/livesupport/modules/htmlUI/var/html/Smarty/NEWS b/livesupport/modules/htmlUI/var/html/Smarty/NEWS deleted file mode 100644 index 14c3cd093..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/NEWS +++ /dev/null @@ -1,865 +0,0 @@ -Version 2.6.6 (Oct 13, 2004) ----------------------------- - - - fixed nocache-handling with nested includes (Lars Jankowfsky, messju) - - moved /libs/core to /libs/internals (boots) - - fixed more parsing problems (messju) - -Version 2.6.5 (Sept 13, 2004) ------------------------------ - - - fixed some parsing problems with object calls introduced - in 2.6.4 (Monte) - - add $smarty->security_settings['ALLOW_CONSTANTS']. note: this - defaults to false which means you have to allow them explicitly - in your secured templates from now on! (messju) - -Version 2.6.4 (Sept 7, 2004) ----------------------------- - - - add $smarty.ldelim and $smarty.rdelim to smarty special var (Monte) - - fall back to old uniqid()-behaviour when tempnam() fails in - core.write_file.php (messju) - - fix capitalize modifier, don't rely on buggy ucwords (Monte) - - make html_select_date work with negative timestamps, also - force year range to include given date unless explicitly - set (Garo, Monte) - - fix bug with {fetch}, passing user/pass in url did not work - (Monte) - - fix occasional wrong error messages on mismatched tags when - {else}, {elseif}, {foreachelse} or {sectionelse} is involved (messju) - - fix handling of methods arguments (messju, Manfred Wischin) - - remove touch() call that made the compiled-template's timestamp the - same as the source-template's one. (messju) - - add assign attribute to html_checkboxes and html_radios - (pcg, Monte) - - remove non-xhtml conformant tag from mailto function - (tacker, Monte) - - handle date_format codes %e, %T and %D for windows (tip, - Monte) - - fix unnecessary call to smarty_core_get_include_path() inside - Smarty::_get_auto_filename() (c960657, messju) - - add error-messages when anything else than an identifier is passed - to foreach's key- or item-attribute (messju) - - fix handling of digits inside tagnames (messju) - - fix escaping of backslashes in Smarty_Compiler::_quote_replace() (messju) - -Version 2.6.3 (June 16, 2004) ------------------------------ - - - added escapement of '</' to '<\/' in escape:javascript - modifier (c960657, Monte) - - added obfuscation of protocol-string in {mailto} when using hex- - encoding (bharat, messju) - - enhanced auto-generated filenames for templates_c and cache (messju) - - add 'nonstd' to escape modifier for escaping non-std chars, - such as ms doc quote (Monte) - - adjusted textformat to not output wrap chars after last para - (Monte) - - use tempnam() instead of unqid() to create better temporary files in - smarty_core_write_file() (xces, messju) - - add 'mail' to escape modifier for safe display of e-mail - addresses (Monte) - - add cycle function attribute "reset" to english docs (Monte) - - enhanced support of numeric constants as variable-expressions (messju) - - add case decentity to smarty_modifier_escape() (Konstantin A. Pelepelin, - messju) - - make smarty_core_write_compiled_include() php5-aware (messju) - - removed unused functionality to load a subset of lines from a file (messju) - - fix is_secure() should only check if a file is_readable, not if - the directory where it is in is readable (sagi, messju) - - fix problem displaying debug console when $default_resource_type - is not "file:" (c960657, Monte) - - fix permission handling with security and config_load (messju) - - removed '.' from the list of default template locations in - _parse_resource_name() (messju) - - fix avoid warning with template_exists() on an absolute paths (messju) - - fix parameters passed to resource's secure()-function (messju) - - fix handling of integer values like width and delay im - smarty_function_popup() (messju) - -Version 2.6.2 (Feb 17, 2004) ----------------------------- - - - fix allow empty years, months and days in html_select_date's - time-attribute (messju) - - fix YES and NO should not be booleanized inside triple-quotes in a - config-file (messju) - - fix accidently slurped line following a triple-quoted value in a - config-file (messju) - - change default for use_sub_dirs to false (messju) - - fix quoting of values in smarty_function_popup() (messju) - - fix handling of hidden sections in Config_File (messju) - - add handling of resources for {config_load} (messju) - - fix bug when using arrays with tr_attr and td_attr in {html_table} (messju) - - add unit testing to cvs core (Monte) - -Version 2.6.1 (Jan 16, 2004) ----------------------------- - - - rename $smarty->tpl_error_reporting to $smarty->error_reporting - (messju) - - fix interpretation of $smarty->security in {html_image} (messju) - - add caching of requested paths to _assemble_plugin_filepath() (messju) - - fix handling of comments inside {php}- and {literal}-blocks (messju) - - fix bug handling triple-quotes in config-files (BRDude, messju) - - change default of request_use_auto_globals to true - $_SERVER is - now preferred over $HTTP_SERVER_VARS (messju) - - re-add support for $SCRIPT_NAME (messju) - - reactivate $smarty->default_modifiers (messju) - - add cookie persistance to debug console (Monte) - - allow single-digit days and months without smarty_make_timestamp() - in html_select_date (messju) - - fix headers sent erroneously with cache_modified_check and fetch() - (wphilips, messju) - - fix config_file path bug (Marc Cabadas, Monte) - - fix 'is even by' and 'is odd by' logic (Monte) - - add day_empty, month_empty, year_empty and all_empty attributes to - html_select_date (messju) - - add table of explanation for {if} qualifiers in docs (boots) - - fix bug when comparing array-keys to "selected" in html_options - and html_checkboxes (messju) - - add better checks for correctly nested tags when compiling (messju) - - remove {$SCRIPT_NAME}. use {$smarty.server.SCRIPT_NAME} instead (messju) - - remove $global_assign. assign global variables explicitly instead (messju) - - fix example for count_characters in docs (boots) - - add section new basic syntax section "Escaping Smarty Parsing" in docs (boots) - - fix error handler call in config_load (boots) - - remove warning in debug_print_var on php-resources (messju) - - move function.assign.php to compiler.assign.php (messju) - - add property $tpl_error_reporting (messju) - - remove property $undefined. "null" is used literally instead (messju) - -Version 2.6.0 (Nov 19, 2003) ----------------------------- - - - move Smarty::quote_replace() to Smarty_Compiler::_quote_replace() (messju) - - remove import of of attributes of {include_php} to php's namespace. - use $params[name] instead (messju) - -Version 2.6.0-RC3 (Nov 13, 2003) --------------------------------- - - - fix handling of $var.key inside [] (messju) - - fix handling of assign inside {insert}-tags (messju) - - fix handling if [...] inside triple-quotes in config-files (messju) - - fix handling of simple-math-operators inside modifiers (Dominik, messju) - - fix handling of trailing-slashes in open_basedir in - smarty_core_create_dir_structure() (packman, messju) - -Version 2.6.0-RC2 (Oct 8, 2003) -------------------------------- - - - apply modifiers only once to section-loop and foreach-from attrs (messju) - - remove use of _smarty_cached_paths-files (messju) - - remove Smarty::_plugin_implementation_exists() - use is_callable() (messju) - - ignore {strip}/{/strip) inside {strip}-blocks (messju) - - fixed removal of leading/trailing newlines in {strip}-blocks (messju) - - fixed proper escaping of " and ' with escape:javascript (messju) - - fixed bug in traversal of $smarty->plugins_dir-array. now the - first matching plugin is taken (messju) - - moved {strip} back into the compiler (messju) - - fixed config_load: handling of section-attribute and use of - multiple config-files in one template (atu, messju) - -Version 2.6.0-RC1 (August 11, 2003) ------------------------------------ - - - fixed status-header for cache_modified_check under cgi-sapi (messju) - - added optional parameter $cache_attrs to register_function() and - register_block(). $cache_attrs is an array containing attribute- - names that should be cached on calls to functions that have - $cacheable set to false. (messju) - - enabled registration of class-methods as callbacks for the register_*- - functions (use: array('classname', 'method_name')) as callback) (messju) - - added filepath caching (Monte) - - added optional assign-attribute to {capture}-tag (messju) - - added $cacheable-parameter to register_compiler_function() (messju) - - added $cacheable-parameter with default=true to register_function() - and register_block() (messju) - - add math speedup to core (Dominik, Monte) - - fix newlines for tags without template output (Monte) - - added config-option "request_use_auto_globals" to make auto-globals be - used as request vars instead of HTTP_*_VARS (messju) - - speed up config_load, simplify compiling (Monte) - - added block-methods for registered objects (Bharat Mediratta, messju) - - ignore one char resource names like c:foo.tpl (Monte) - - added default_resource_type feature (Monte) - - fix bug where config file starts with hidden section (boots, Monte) - - add discrete error checking pertaining to $cache_dir - and $compile_dir, their existance and writability (Monte) - - fixed behaviour of start=... for {counter} (messju) - - fixed assign for {counter} (messju) - - added params vdir, hdir and inner to html_table to allow looping - over the data in various directions (messju) - - allow spaces in literal tags (Paul Lockaby, Monte) - - speed up compiled templates, hardcode plugin filepaths - instead of dynamically calculate at runtime. (Monte) - - abstract many core components from Smarty.class.php, - speeding up core class instantiation (Monte) - - fixed bug in _create_dir_structure() when used with open_basedir- - restriction and relative paths (messju) - - use DIRECTORY_SEPARATOR exclusively, keep DIR_SEP for BC (Monte) - - changed "link" to "href" in html_image. "link" is still working - but deprecated (messju) - - html_image always renders an alt-tag now (default alt="") (messju) - - fixed assign attribute for multiple counters (messju) - - added simple math operators to variables (Monte) - - enabled array(&$obj. 'source', 'timestamp', 'secure', 'trusted') - as callback for register_resource() (messju); - - enabled array(&$obj, 'method') as callback for - $default_template_handler_func (messju) - - remove unnecessary close/open tags from compiled templates - (Monte) - - fixed errornous creation of '//' in image_path in html_image (messju) - - fix escapement of special chars for key vals in debug - console (Monte) - - fixed debug timing logic for config_load (Tom Sommer, Monte) - - all in-code doc comments converted to phpDocumentor format (Greg) - - moved strip from smarty core to plugin (Monte) - - moved config_load from smarty core to plugin (Monte) - - added &$repeat-parameter to block-functions (messju) - - enabled hex-constants in function.math.php (messju) - - enabled hex-constants (0x...) as function-attributes, inside if-statements - and as modifier-parameters (messju) - - fixed bug with passing $smarty as reference in Smarty.compiler.class - (messju) - - corrected output with {strip} and PHP tag newlines (Monte) - - added possibility to register function-callbacks as "array(&$obj, 'method)" - this affects register_function(), -block, -compiler_function, -modifier, - -prefilter, -postfilter, -outputfilter-functions() and $cache_handler_func - (messju) - - added <labels> to html_checkboxes and html_radios (Philippe, messju) - - added "labels"-options to turn off labels in html_checkboxes and _radios - (messju) - -Version 2.5.0 (April 11, 2003) ------------------------------- - - - fixed bug with default modifier when passing integer 0 - (Monte) - - change backtic syntax from $`foo` to `$foo` (Monte) - - recognize $foo[][] syntax inside embedded quotes without - backtics (Monte) - - name=123 is passed as an integer (not a string) to plugins now (messju) - - $length is now propagated to sub-values in debug_print_var (messju) - -Version 2.5.0-RC2 (March 26, 2003) ----------------------------------- - - - made clear_cache() ignore compile_id, when clearing cache-groups (this - is when no $tpl_file is supplied) (messju) - - made onmouseout XHTML-compliant in function.popup.php (messju) - - applied local-var-naming-scheme to fetch() (messju) - - renamed $localvars to $_localvars in cache-file-handling-functions, - added _get_auto_id()-function (messju) - - swapped compile_id and cache_id in read_cache_file and write_cache_file - (messju) - - reverted patch for cache-file-handling (messju) - - made html_radios and html_checkboxes accept "selected" instead - of "checked" optionally. (messju) - - made compile_id ignored in clear_cache, made order of - auto_file_name $cache_id.$compile_id again, applied the the new - variable-naming-scheme for cache_file_handing functions (messju) - - removed notice of undefined var in _rm_auto() (messju) - - added warning message when an array is passed as - the "checked" value of html_radios (Monte) - - fixed errormessage in _compile_smarty_ref() (messju) - - updated docs for html_image "name" -> "file" (messju) - - fixed bug with html_options-optgroups (Nichlas L�fdahl, messju) - - cleaned up calls to readdir() (messju) - - fixed bug with passing multiple modifiers to a parameter - (Monte) - - updated docs for html_checkboxes, html_options and html_radios (messju) - - fixed wrong default "name" attribute for html_options (messju) - - html_checkboxes now expect the options as attribute "options" instead - of "checkboxes. html_radios expect "options" instead of "radios". - cleaned up indentiation (messju) - - fixed too greedy str_replace in trimwhitespace outputfilter (messju) - - html_checkboxes and html_radios passthru all unknown paramters now - additionally their output is now XHTML compliant (messju) - - html_options passthru all unknown paramters now (messju) - - fix link functionality of html_image, also make - output XHTML compatible (Hinrich Donner, Monte) - - append "@" to default modifier vars/args - supress possible warnings (Monte) - - fix problem with escaped double quotes (Monte) - - fix html_radios to not return an array (Monte) - - fixed length in modifier.truncate.php (messju) - - fixed handling of '$'-signs in trimwhitespace outputfilter (messju) - - fix bug that makes config files recompile every time - (Nagger, Monte) - - add dpi functionality to html_image, change "name" - parameter to "file" (Thomas Shulz, Monte) - - fix height/width parameter index in html_image (Gerard, - Monte) - - get rid of unsetting name and script attributes - to insert tag (Thomas Schulz, Monte) - - changed argument order of string_format modifier back, - was right in the first place (Monte) - -Version 2.5.0-RC1 (March 5, 2003) ---------------------------------- - - - fixed notice in popup function (Nagger, Monte) - - fix "once" var compiling for include_php (Monte) - - added nl2br modifier to distribution (Monte) - - added html_image to distribution (Monte) - - added cat modifier to distribution (Monte) - - added html_table to distribution (Monte) - - added << >> <> support to if statments (SMK, Monte) - - fix _assign_smarty_interface to not overwrite keys - other than 'request' (Jerome Poudevigne, Monte) - - added html_checkboxes to distribution (Christopher Kvarme, Monte) - - added html_radios to distribution (Christopher Kvarme, Monte) - - fixed string_format modifier args (wrong order) (Paul - Lockaby, Monte) - - use tmp file for file writes, avoid file lock race (Monte) - - support syntax "$`smarty.config.foo`.tpl" for embedded - vars in quotes, and allow full dollar var syntax (Monte) - - add $smarty.config.varname variable for accessing config vars (Paul - Lockaby, Monte) - - silence PHP warnings in function.fetch.php (Eduardo, - Monte) - - added get_config_vars(), same basic functionality as - get_template_vars() (Monte) - - update get_template_vars() to be able to get - individual vars (Monte) - - fix minor logic in _fetch_template_info (Dennis Gearon, - Monte) - - fix cache groups with compile_id set (Monte) - - add support for merging appended vars (messju, Monte) - - allow null as function attribute value - (Andr� Rabold, Monte) - - support $foo->bar[index] syntax (Monte) - - add get_registered_object function (messju, Monte) - - treat unrecognized param attribute syntax as string (Monte) - - support $smarty.const.$foo syntax (messju, Monte) - - remove E_NOTICE warnings from debug.tpl, - escape modifier (Kanstantin, Monte) - - don't count non-ascii chars in count_words modifier - (Kanstantin, Monte) - - clean up param calls to _parse_var and _parse_attrs (Monte) - - define $template_source var, elude possible warning - (Monte) - - fix syntax problem with evaluating PHP constants (Monte) - - add @ and === as valid if statement tokens (Monte) - - enable error messages for config_load errors, - use $this->config_class for loading class name (Monte) - - fix html_options to not escape already escaped entities (Monte) - - send Last-Modified header on cache creation (Monte) - - check strict syntax of function attributes (Monte) - - dropped support for modifers on object parameters, - added support for objects as modifier parameters (Monte) - - fixed bug with decimal numbers in if statements (Monte) - -Version 2.4.2 (Feb 11, 2003) ----------------------------- - - support embedded variables in objects (Monte) - - fix bug with objects with no properties (M Mohr, Monte) - - support full dollar var syntax in quoted text (Monte) - - fixed bug in $smarty.const.FOO introduced in 2.4.1 (M - Mohr, Monte) - -Version 2.4.1 (Feb 6, 2003) ---------------------------- - - - ignore case in IF statements (Rainer Collet, Monte) - - treat undefined constants as null (Ferdinand Beyer, Monte) - - fix problem with inserts and nested fetches - (Rainer Collet, Monte) - - added support for passing params to include_php - (Tim Riley, Monte) - - added support for math operators in if statements (Monte) - - added support for $foo->bar[$x].blah syntax (Monte) - -Version 2.4.0 (Feb 2, 2003) ---------------------------- - - - fix known problems with php tag handling in templates - (recursion, echoing xml tags) (Monte) - - add support for object registration (Monte) - - add debug template to secure_dir, add template_dir - to secure_dir by default (Ferdinand Beyer, Monte) - - added support for assigned object access (Monte) - - fixed bug with directories named '0' (Frank Bauer, Monte) - - add javascript parameter to escape modifier (Monte) - - added calling function line numbers to syntax error - messages in compiler (Monte) - - added support for modifiers to function calls (Monte) - - support return value for custom functions - instead of echoing (but echo still works) (Monte) - - added direct access to constants - via $smarty.const.FOO (Monte) - - added support for passing modifiers - to static values (Monte) - - fix up regex code in compiler, more accurate and - maintainable (Monte) - - added day_value_format to html_select_date (Marcus - Bointon, Monte) - - assigned variables are no longer in global - namespace, saving extract() calls and speeding - up fetch() and display() linearly with no. of - assigned variables (Monte) - - added trimwhitespace output filter to dist. (Monte) - - fix popup function to allow newlines in text (Monte) - - escape html entities in html_options (Monte) - - fixed bug with label for html_options (Monte) - - added config_load API function (Monte) - - added caching to config file loading (Monte) - - added "extra" parameter to mailto function (Monte, - Massimiliano Perantoni) - - added mailto plugin to dist. (Monte) - -Version 2.3.1 (Nov 19, 2002) ----------------------------- - - - added optgroup support to html_options (Monte, Robert - Amos) - - set mtime on compile files so they match source - files (Monte, Peter Bowen) - - added proper support for open_basedir setting - (Monte, Alessandro Astarita) - - added strip variable modifier, updated docs (Monte) - - fixed access to $smarty.x variables as arrays. (Andrei) - - fixed errors with example setup docs (Monte, Matthew - Hagerty) - - added textformat block function (Monte) - -Version 2.3.0 (Aug 7, 2002) ---------------------------- - - - added assign_by_ref() and append_by_ref() functions - (Bob Silva, Monte) - - changed default warning type for plugin errors from - E_USER_WARNING to E_USER_ERROR (Monte) - - added $all_extra, $hour_extra, $minute_extra, - $second_extra and $meridian_extra parameters to - html_select_time function (Rainer Collet, Monte) - - update debug console to print objects (Simon Willison, - Monte) - - fix Config_File class to not error when there are no - sections (Peter Kmet, Monte) - - add default modifier logic (Monte) - - updated popup_init to be xhtml compliant (Tom Oram, Monte) - - fix filename bug with windows (Gary Loescher, Monte) - - add ability to supply expire time in seconds when clearing - cache or compile files (Monte) - - add {debug} plugin to distribution (Monte) - - fixed bug with insert tags, loading from "script" attribute - when caching is enabled (Monte) - - fix bug with debug_tpl file path with Windows (.SMK., Monte) - - fix append() function with string/array problem (Monte) - -Version 2.2.0 (July 11, 2002) ------------------------------ - - - make debug.tpl work with any delimiter (Monte) - - change logic in assign() and append() to test var names - against != '' instead of empty() (Monte) - - fix PHP notice in append() function (Monte) - - allow $plugins_dir to be an array of directories - (Andreas Kossmeier, Monte) - - move debug.tpl to SMARTY_DIR, add to constructor (Monte) - - fixed warning message in function.assign_debug_info (Monte) - - fixed $template_dir, $compile_dir, $cache_dir, $config_dir, - $plugin_dir to respect include_path (Monte) - - fixed warning message with output filter array (Monte) - - add optional 2nd parameter to date_format, used as - the default date if the passed date is empty (Monte) - - gave $reset a default value in cycle plugin (Monte) - - fixed warnings with html_select_date and timestamp - functions (Monte) - - added support for sub directory exlusion format (Monte) - - added support for grouping by cache_id, compile_id - and segments thereof (Monte) - - changed cache and compile files to human readable - format (Monte) - - remove overlib.js file from distribution (Monte) - - fixed bug with 304 Not Modified response sending - content (Monte) - - fixed cycle function to respect delimiter after - initial setting (Monte) - - update $GLOBALS references to work properly with - track_globals settings (Michal Prinke, Monte) - - fixed bug in math function with call to assign - (Grigory V. Kareev, Monte) - - optimized for loops with count() function calls (Monte) - - add month_value_format attribute to html_select_date - plugin (Gary Loescher, Monte) - - made it possible to use simple variables inside [] for - indexing. (Andrei) - - added "once" attribute to {include_php}. (Monte) - -Version 2.1.1 -------------- - - added cycle function. (Monte) - - fixed bug with resource testing, and include_path. (Monte) - - fixed a bug with register_outputfilter function. (Monte) - -Version 2.1.0 -------------- - - - introduced output filters. (Andrei) - - changed the way filters are loaded, added load_filter() - API function and $autoload_filters variable. (Andrei) - - added caching logic for expire times per cache file - (Norbert Rocher, Monte) - - fixed html_select_date when field separator is "/" - (Roberto Berto, Monte) - - added YYYY-MM-DD format support to html_select_date - (Jan Rosier, Monte) - - fixed cache_lifetime logic bug, also made -1 = never - expire (Monte) - - fixed directory separator issue for Windows. (Andrei) - - added ability to use simple variables as array indices or - object properties. (Andrei) - - added ability to unregister pre/postfilters plugins at - runtime. (Andrei) - - added 'htmlall' attribute to escape modifier. (Monte) - - added template_exists() API function. (Andrei) - - fixed a problem with using dynamic values for 'file' - attribute of {include_php} tag. (Andrei) - - added $smarty.template variable. (Andrei) - - fixed several plugins that would not work if the plugin - directory was not the default one. (Andrei) - - implemented support for block functions. (Andrei) - - made it possible to assign variables in pre/postfilter - plugins. (Andrei) - -Version 2.0.1 -------------- - - rename plugin .make_timestamp.php to shared.make_timestamp.php. - (Monte) - - changed crc32() generated values, replace '-' with 'N'. (Monte) - - added support for +/- N syntax in html_select_date year values. - (Monte) - - fixed behavior of inserts with script attribute. (Andrei) - - fixed bug with $smarty.cookies and $smarty.server. (Andrei) - - wordwrap and indent are missing from 2.0 release, now fixed. - (Monte) - - removed show_info_header and show_info_include variables. (Monte) - -Version 2.0.0 -------------- - - added "eval" function plugin for evaluating variables as - templates. (Monte) - - removed $tpl_file_ext class variable, no longer used. (Monte) - - added "hex" and "hexentity" escape types to escape modifier. - (Monte) - - removed dependency on PEAR. (Andrei) - - update popup_init to accept src attribute. (Monte, Duncan Forrest) - - implemented several optimizations, speeding up Smarty - significantly in most cases. (Andrei,Monte) - - implemented plugin architecture. (Andrei) - - added wordwrap and indent modifiers. (Monte) - - added support for 'If-Modified-Since' headers for cached content. - (Monte) - - removed insert_tag_check class variable, no longer needed. (Monte) - - optimized cache fetches by scanning for insert tags only if they - exist. (Monte) - - fixed bugs in overlib. (Monte, Duncan Forrest) - - fixed a problem with compile_id usage. (Andrei) - - fixed problem with using assigned vars with {include_php ...} - filepath. (Monte) - -Version 1.5.2 -------------- - - added Smarty object as fifth argument for template resource functions. - (Monte) - - fixed a bug with incorrectly combined cache and compile id in - clear_cache(). (Andrei) - - fixed bug in smarty_make_timestamp introduced in PHP 4.1.0. (Monte) - - fixed bug with cached insert debug timing. (Monte) - - added 'script' attribute to {insert..} which specifies the script that - the insert function can be found in. (Andrei) - - added default template function handler. (Monte) - -Version 1.5.1 -------------- - - removed error message from the generic _read_file() method, the caller - should take care of that. (Andrei) - - fixed a bug with incorrectly combined cache and compile id. (Andrei) - -Version 1.5.0 -------------- - - added include_php built-in function, documented. (Monte) - - added trusted_dir functionality, documented. (Monte) - - consolidated secure_dir tests to one function. (Monte) - - prepended _smarty_ to variable names in fetch() class function to avoid - namespace conflicts. (Monte) - - introduced $compile_id class variable that can be used to set persistent - compile identifier across multiple display calls, documented. (Andrei) - - fixed bug with concatenated null cache and compile identifiers. (Andrei) - - added $smarty.section.* syntax for accessing section properties, - documented. (Andrei) - - added custom cache handling function ability, documented. (Monte) - - added assign attribute to include, include_php, insert, fetch, math, and - counter functions, documented. (Monte) - - fixed bug with fetch testing for local file when http address. (Monte) - - fixed bug with counter and skipval setting. (Monte) - - made {config_load ...} merge globals from each config file only once per - scope, thus avoiding several problems. (Andrei) - - added {foreach ...} tag that can be used to iterate through - non-sequential and associative arrays, documented. (Andrei) - - speeded up section property access a bit. (Andrei) - - removed $smarty variable from storage used by normal template variables, - to prevent any problems. (Andrei) - - fixed a bug that could cause parse error with quotes inside literal - blocks. (Andrei, Alexander Belonosov) - - added 'field_array' attribute to html_select_time function, documented. - (Andrei, Michael Caplan) - - documented {section} "max" attribute. (Monte) - - fixed notice message in Smarty_Compiler.class.php. (Monte) - - fixed bug with clear_cache introduced in 1.4.6, third parameter should - default to null. (Monte) - - updated Config_File class to support '\' path separator in OS/2. (Monte, - Francesco Cipriani) - - removed secure_ext setting (not used). (Monte) - - made cache reading process more efficient. (Monte) - - fixed bug, is_cached() now supports new 1.4.6 caching behavior. (Monte) - - update FAQ with mailing list Reply-To header FAQ. (Monte) - - supress error messages for fopen(), fix cache to regenerate if cache - file is not available (i.e. cluster race condition). (Monte) - - added index key example to QUICKSTART guide. (Monte) - -Version 1.4.6 -------------- - - fixed bug with {assign ...} when passing an empty value. (Monte) - - add more warning message fixes. (Monte, Tara Johnson) - - documentation updates. (Monte) - - update fetch function to give proper warning when fetching a non-readable - or non-existant file. (Monte) - - fixed problem with newline at the end of included templates (Monte, Andrei) - - added feature to regenerate cache if compile_check is enabled and an - involved template or config file gets modified. (Monte) - - added DEBUG execution times to included files: REQUIRES updated debug.tpl - file! (Monte) - - added support for hidden config variables that cannot be read by - templates. (Andrei) - - added execution time to DEBUG console, total and inserts. (Monte) - - fixed bug where DEBUG console would not appear with cached content. (Monte) - - added support for postfilter functions that are applied to compiled - template right after compilation. (Andrei) - - fixed the name of clear_compile_tpl() API function to clear_compiled_tpl. - (Andrei) - - added fix for removing comments so that the line numbers are reported - correctly in case of errors. (patch from Anders Janson) - - made html_options output xhtml compatible code. (Monte, Arnaud Limbourg) - -Version 1.4.5 -------------- - - update FAQ with index of questions at the top - - update overlib to 3.50, adjust addon code so that the overlib.js - file isn't modified, and not using the mini one. (Monte) - - added many more options to html_select_date. (Alexander Skwar, Andrei) - - added support for generating different compiled templates from the same - source template. (Hans-Peter Oeri, Andrei) - - modified Smarty to pass itself to insert functions as the second - parameter. (Andrei) - - modified Smarty to pass itself to prefilter functions as the second - parameter. (Andrei) - - fixed syntax error when including a non-existant template with security - enabled. (Monte) - - fixed comments handling to allow commenting out template blocks. (Andrei) - - implemented named capture buffers, with results accessible via - $smarty.capture.<name>. (Andrei) - - added ability to index arrays directly by numbers. (Andrei) - - fixed bug with SMARTY_DIR not prepended to Config_File include. (Monte) - -Version 1.4.4 -------------- - - fixed problem with including insecure templates with security enabled. - (Monte) - - numerous documentation updates. (Monte) - - added ENT_QUOTES to escapement of html. (Monte, Sam Beckwith) - - implemented access to request variables via auto-assigned $smarty - template variable. (Andrei) - - fixed a bug with parsing function arguments inside {if} tags if a comma - was present. (Andrei) - - updated debug console with config file vars. (Monte) - - added SMARTY_DIR constant as an alternative to relying on include_path. - (Monte) - - added popup_init and popup functions (requires overlib.js). (Monte) - - updated debug console with config file vars. (Monte) - - added debugging url control. (Monte) - - added 'quotes' type to escape modifier. (Monte, Mike Krus) - - added 'total' and 'iteration' section properties. (Andrei) - - added 'start', 'max', and 'step' section attributes/properties. (Andrei) - - fixed a bug with security checking of functions inside {if} tags. - (Andrei) - - fixed a bug in Config_File that would incorrectly booleanize values that - weren't really booleans. (Andrei) - -Version 1.4.3 -------------- - - added regex_replace modifier, documented. (Monte) - - added debugging console feature and custom function assign_debug_info, - documented. (Monte) - - added 'scope' attribute for {config_load}, 'global' is now deprecated but - is still supported. (Andrei) - - reduced template symbol table pollution by moving config array into the - class itself. (Andrei) - - fixed a bug with passing quoted arguments to modifiers inside {if} - statements. (Andrei, Sam Beckwith) - - added security features for third party template editing, documented - (Monte) - - added assign custom function, documented. (Monte) - - fixed bug with template header using version instead of _version. (Monte) - - fixed a problem with putting $ followed by numbers inside {strip} and - {/strip} tags. (Andrei) - - fixed Config_File class to allow empty config paths (defaults to current - directory). (Andrei) - -Version 1.4.2 -------------- - - move $version to internal variable, remove from docs. (Monte) - - cleaned up compiled templates global scope by moving some variables into - the class itself. (Andrei) - - fixed a bug that would not allow referring to a section in the including - file from the included file. (Andrei) - - configs directory missing from 1.4.1 release, added back in. (Monte) - - added windows include_path setup instructions to FAQ & QUICKSTART. - (Monte) - -Version 1.4.1 -------------- - - fix LOCK_EX logic for all windows platforms (Monte) - - fixed indexing by section properties with the new syntax. (Andrei) - - updated Smarty to use absolute paths when requiring/including Smarty - components. (Andrei, John Lim) - -Version 1.4.0 -------------- - - added {capture}{/capture} function, documented (Monte) - - added {counter} function, documented (Monte) - -Version 1.4.0b2 ---------------- - - fixed issue in Config_File.class with referencing blank sections (Andrei) - - fixed problem with passing variables to included files (Andrei) - - fixed resource path recognition for windows (Monte) - -Version 1.4.0b1 ---------------- - - added "componentized templates" tip into documentation (Monte) - - added {php}{/php} tags for embedding php code into templates (Monte) - - changed default value of $show_info_header to false (Monte) - - implemented '->' syntax for accessing properties of objects passed to the - template. (Andrei) - - allowed custom functions to receive Smarty object as the second - parameter; this can be used to dynamically change template variables, for - example. (Andrei) - - added custom compiler functions support, register_compiler_function() and - unregister_compiler_function() API functions. (Andrei, Ivo Jansch). - - updated GLOBAL_ASSIGN to take SCRIPT_NAME from HTTP_SERVER_VARS - instead of global variable. You can also assign several variables - in one shot with an array. (Monte, Roman Neuhauser) - - added template prefilters, register_prefilter() and - unregister_prefilter() API functions. (Monte) - - added RELEASE_NOTES file to distribution. (Monte) - - moved CREDITS out of manual into its own file. (Monte) - - added register_resource() and unregister_resource() API functions. (Monte) - - changed the syntax of indexing template variables, thus supporting - structures of arbitrary complexity; supplied fix_vars.php script to fix - old syntax. (Andrei) - - added $insert_tag_check to speed up cached pages if {insert ...} is not - used. (Monte) - - added $compiler_class variable to allow specifying a different compiler - class. (Andrei) - - changed Smarty to compile templates at runtime, allowing for arbitrary - template resources. (Monte) - - added fix for LOCK_EX under Windows and changed a couple of file - permissions for security. (Monte, Fernando Nunes) - - allow arbitrary date strings to date_format, html_select_date and - html_select_time (Monte) - -Version 1.3.2 -------------- - - fixed a bug that caused some nested includes to loop infinitely. (Andrei) - - added optional HTML header to output. (Monte) - - significantly improved config_load performance. (Andrei) - - added format attribute to math function. (Monte) - - added html_select_time custom function. (Andrei) - - fixed minor PHP warning when attempting to unset an unset variable - (Monte) - - added count_characters, count_words, count_sentences, count_paragraphs - modifiers (Monte) - -Version 1.3.1pl1 --------------- - - bug fix, recovered missing _syntax_error function (Monte) - -Version 1.3.1 -------------- - - document first, last, index_prev, index_next (Monte) - - added 'first' and 'last' section properties. (Andrei) - - split out compiling code to separate class for faster template execution - time (Monte) - - fixed a couple of minor PHP warnings (Monte) - - added and documented unregister_modifier() and unregister_function() API - calls. (Monte) - - added and documented 'fetch' and 'math' functions. (Monte) - - added ability to index looped variables by section properties, e.g. - $foo.index_prev/bar. (Andrei) - - added index_prev and index_next section properties. (Andrei) - - fixed issue with php executing in literal blocks. (Monte) - -Version 1.3.0 -------------- - - moved license from GPL to LGPL (Monte) - - implemented workaround for PHP "feature" that eats carriage returns - if the PHP tag is at the end of the line. (Andrei) - - removed $allow_php, added $php_handling logic (Monte) - - added file locking to prevent reader/writer problem. (Andrei) - - made Smarty catch unimplemented modifiers and custom functions and output - error messages during compilation instead of failing during run time. - (Andrei) - - removed short-tags at the top of the smarty scripts (Monte) - - added register_function() and register_modifier() API calls to make - registering stuff easier. (Andrei) - - added template results caching capability. (Monte, Andrei) - - added optional 'options' attribute to html_options custom function - that allows passing associative arrays for values/output. (Andrei) - - modifier arguments can now contain '|' and ':' characters inside quoted - strings. (Andrei) - -Version 1.2.2 -------------- - - fixed bug that would not respect nested template directories and would - put all compiled files into top-level one. (Andrei) - - fixed bug using $PHP_VERSION instead of environment var PHP_VERSION. - (Monte) - - a couple small warning fixes. (Monte) - -Version 1.2.1 -------------- - - added $compile_dir, removed $compile_dir_ext, simplified usage. (Monte) - - added tips & tricks chapter to documentation. (Monte) - - misc documentation updates. (Monte) - -Version 1.2.0 -------------- - - updated documentation (Monte) - - added file and line number information to syntax error messages. (Andrei) - - added ability to index template vars by a key. (Andrei) - -Version 1.1.0 -------------- - - misc documentation changes, official stable release - -Version 1.0b ------------- - - fixed the bug that prevented using non-array values for 'loop' attribute. - (Andrei) - - many misc documentation changes & additions (Monte) - -Version 1.0a ------------- - - fixed bug that caused templates to recompile every time (Monte) - -Version 1.0 ------------- - - initial release - -/* vim: set et tw=64 ft=changelog: */ diff --git a/livesupport/modules/htmlUI/var/html/Smarty/README b/livesupport/modules/htmlUI/var/html/Smarty/README deleted file mode 100644 index 10ff6eab1..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/README +++ /dev/null @@ -1,80 +0,0 @@ -NAME: - - Smarty - the PHP compiling template engine - -VERSION: 2.6.0 - -AUTHORS: - - Monte Ohrt <monte@ispi.net> - Andrei Zmievski <andrei@php.net> - -MAILING LISTS: - - We have a few mailing lists. "general" for you to share your ideas or ask - questions, "dev" for those interested in the development efforts of Smarty, - and "cvs" for those that would like to track the updates made in the cvs - repository. - - send a blank e-mail message to: - smarty-general-subscribe@lists.php.net (subscribe to the general list) - smarty-general-unsubscribe@lists.php.net (unsubscribe from the general list) - smarty-general-digest-subscribe@lists.php.net (subscribe to digest) - smarty-general-digest-unsubscribe@lists.php.net (unsubscribe from digest) - smarty-dev-subscribe@lists.php.net (subscribe to the dev list) - smarty-dev-unsubscribe@lists.php.net (unsubscribe from the dev list) - smarty-cvs-subscribe@lists.php.net (subscribe to the cvs list) - smarty-cvs-unsubscribe@lists.php.net (unsubscribe from the cvs list) - You can also browse the mailing list archives at - http://marc.theaimsgroup.com/?l=smarty&r=1&w=2 - -SYNOPSIS: - - require("Smarty.class.php"); - - $smarty = new Smarty; - - $smarty->assign("Title","My Homepage"); - $smarty->assign("Names",array("John","Gary","Gregg","James")); - - $smarty->display("index.tpl"); - - -DESCRIPTION: - - What is Smarty? - - Smarty is a template engine for PHP. Many other template engines for PHP - provide basic variable substitution and dynamic block functionality. - Smarty takes a step further to be a "smart" template engine, adding - features such as configuration files, template functions, and variable - modifiers, and making all of this functionality as easy as possible to - use for both programmers and template designers. Smarty also converts - the templates into PHP scripts, eliminating the need to parse the - templates on every invocation. This makes Smarty extremely scalable and - manageable for large application needs. - - Some of Smarty's features: - - * it is extremely fast - * no template parsing overhead, only compiles once. - * it is smart about recompiling only the template files that have - changed. - * the template language is remarkably extensible via the plugin - architecture. - * configurable template delimiter tag syntax, so you can use - {}, {{}}, <!--{}-->, or whatever you like. - * built-in caching of template output. - * arbitrary template sources (filesystem, databases, etc.) - * template if/elseif/else/endif constructs are passed to the PHP parser, - so the if syntax can be as simple or as complex as you like. - * unlimited nesting of sections, conditionals, etc. allowed - * it is possible to embed PHP code right in your template files, - although not recommended and doubtfully needed since the engine - is so customizable. - * and many more. - -COPYRIGHT: - Copyright (c) 2001,2002 ispi of Lincoln, Inc. All rights reserved. - This software is released under the GNU Lesser General Public License. - Please read the disclaimer at the top of the Smarty.class.php file. diff --git a/livesupport/modules/htmlUI/var/html/Smarty/RELEASE_NOTES b/livesupport/modules/htmlUI/var/html/Smarty/RELEASE_NOTES deleted file mode 100644 index d5e95f5a6..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/RELEASE_NOTES +++ /dev/null @@ -1,423 +0,0 @@ -2.5.0 ------ - -Very minor adjustments since RC2, see the NEWS file for details. - -2.5.0-RC2 ---------- - -Many fixes since the RC1 release. This one is as close to production quality as -they come, so this will be the last release before 2.5.0. The SGML documentation -files have also been removed from the tarball. If you want them, get them from -the CVS repository. - -2.5.0-RC1 ---------- - -Release Candidate 1. All $smarty vars can now be dynamic, such as -$smarty.get.$foo. A new class function get_function_object() gets you a -reference to an assigned object, useful within your own custom functions. -append() can now merge as well as append with a third optional attribute. A new -class function get_config_vars() was added, and get_template_vars() can now be -used to get individual vars. Full variable syntax is now supported within -double quotes via a backtick (`) syntax. Files created by smarty are now -written to a tmp file then renamed to avoid file lock retention. html_radios, -html_checkboxes, html_table, html_image, nl2br functions added, see the NEWS -file for full details. - -2.4.2 ------ -Another point release. Added support for dynamic object reference syntax -($foo->$bar), support for full variable syntax within quotes ("$foo[0].bar"), -and other minor fixes. See the NEWS file for full details. - -2.4.1 ------ - -This is basically a point release, cleaning up a few things caught -in the 2.4.0 release. See the NEWS file for full details. - -2.4.0 ------ - -Smarty now supports the ability to access objects within the templates. Two -methods are available, one which closely follows Smartys conventions, and -another that follows more traditional object syntax for those familiar with -PHP. - -The internal compiling engine has also undergone some major work. The regex -parsing was rewritten to be much more strict, more secure and more -maintainable. Config files are now compiled, which can speed up pages quite a -bit that use config files extensively. Assigned variables are no longer -extracted to PHP namespace, saving an extract call for every template. There is -now support for applying modifiers to static values and functions. You can now -access constants with $smarty.const.VAR. See the NEWS file for complete -changes. - -2.3.1 ------ - -The mtime on compiled files will now match the source files, in the case where -the source file may not get the current timestamp, recompiling will still work -as expected. Proper support for open_basedir has been added, so Smarty should -work correctly in safe mode. Added a few new features such as textformat block -function, strip variable modifier and optgroup support for html_options. Also -other minor bug fixes, see the Change Log. - -2.3.0 ------ - -Smarty now has a {debug} template function that brings up the debugging console -right where {debug} is called, regardless of $debugging settings. This works a -little different than turning on $debugging in the sense that it shows all the -template variables available at the time {debug} is called, including local -scope vars. It does not show the templates names however, since this -executed during runtime of the template. - -You can now supply an expire time when clearing cache or compile files. This is -mostly useful for removing stale files via the API. - -Plugins now stop execution upon error, instead of outputting a warning and -continuing. - -Two new API functions, assign_by_ref() and append_by_ref() were added. They -allow assigning template variables by reference. This can make a significant -performance gain, especially if you are assigning large arrays of data. PHP 5.0 -will do this implicitly, so these functions are basically workarounds. - -Several misc bug fixes, see the Change Log for information. - - -2.2.0 ------ - -Smarty now allows an array of paths for the $plugin_dir class variable. The -directories will be searched in the order they are given, so for efficiency keep -the most-used plugins at the top. Also, absolute paths to the plugin directories are -more efficient than relying on the PHP include_path. - -Cache files can now be grouped with the cache_id. See the documentation under -the new "Caching" section for details. compile_id also respects the same -grouping syntax. The cache/compile file structure changed, so be sure to clear -out all your cache and compile files when upgrading Smarty. Also if you are -using PHP-accelerator, restart apache. I've seen some quirky things happen if -the phpa files do not get cleared (known issue with phpa and parent -class-member changes, so just clear 'em.) - -Smarty now correctly respects the PHP include_path for $template_dir, $compile_dir, -$cache_dir, $config_dir and $plugin_dir. Be aware that relying on the -include_path is an overhead, try to use absolute pathnames when possible -(or relative to working directory.) - -Documentation has been updated and rearranged a bit. Most notably, the -installation instructions are completely revamped, and a new Caching section -explains Smarty's caching in detail along with the new grouping functionality. - -Many misc. bug fixes and enhancements, see the full ChangeLog (NEWS file) for -details. - -2.1.1 ------ - -There was a bug with template paths and the include_path, this has been fixed. -Also register_outputfilter() did not work, this is fixed. A new template -function named "cycle" has been added to the distribution, nice for cycling -through a list (or array) of values. - -2.1.0 ------ - -This release has quite a few new features and fixes. Most notable are the -introduction of block functions, so you can write plugins that work on a block -of text with {func}{/func} notation. Also output filters were added, so you can -apply a function against the output of your templates. This differs from the -postfilter function, which works on the compiled template at compile time, and -output filters work on the template output at runtime. - -Many other features and bug fixes are noted in the NEWS file. - - -2.0.1 ------ - -This is a point release, fixing a few bugs and cleaning things up. A plugin -was renamed, the dash "-" was removed from compiled template and cached file -names. If you're upgrading, you might want to clear them out first. See the -ChangeLog for details. - -2.0.0 ------ - -This release is a huge milestone for Smarty. Most notable new things are a -plugin architecture, removal of PEAR dependency, and optimizations that -drastically improve the performance of Smarty in most cases. - -The plugin architecture allows modifiers, custom functions, compiler functions, -prefilters, postfilters, resources, and insert functions to be added by -simply dropping a file into the plugins directory. Once dropped in, they are -automatically registered by the template engine. This makes user-contributed -plugins easy to manage, as well as the internal workings of Smarty easy to -control and customize. This new architecture depends on the __FILE__ constant, -which contains the full path to the executing script. Some older versions of -PHP incorrectly gave the script name and not the full filesystem path. Be sure -your version of PHP populates __FILE__ correctly. If you use custom template -resource functions, the format of these changed with the plugin architecture. -Be sure to update your functions accordingly. See the template resource section -of the documentation. - -The PEAR dependancy was removed from Smarty. The Config_File class that comes -with Smarty was actually what needed PEAR for error handling which Smarty didn't -use, but now everything is self-contained. - -Performance improvements are graphed on the benchmark page, you will see that -overall performance has been sped up by as much as 80% in some cases. - -Smarty-cached pages now support If-Modified-Since headers, meaning that if a -cached template page has not changed since the last request, a "304 Not -Modified" header will be sent instead of resending the same page. This is -disabled by default, change the setting of $cache_modified_check. - - -1.5.2 ------ - -Mostly bug fixes, added a default template resource handler. - - -1.5.1 ------ - -Critical bug fix release. If you use caching, you'll need to upgrade. - - -1.5.0 ------ - -Several feature enhancements were made to this version, most notably the -{foreach ...} command which is an alternative to {section ...} with an easier -syntax for looping through a single array of values. Several functions were -enhanced so that the output can be automatically assigned to a template -variable instead of displayed (assign attribute). Cache files can now be -controlled with a custom function as an alternative to the built-in file based -method. Many code cleanups and bug fixed went into this release as well. - - -1.4.6 ------ - -The behavior with caching and compile_check has been slightly enhanced. If -caching is enabled AND compile_check is enabled, the cache will immediately get -regenerated if _any_ involved template or config file is updated. This imposes -a slight performance hit because it must check all the files for changes, so be -sure to run live sites with caching enabled and compile_check disabled for best -performance. If you update a template or config file, simply turn on -compile_check, load the page, then turn it back off. This will update the cache -file with the new content. This is accomplished by maintaining a list of -included/loaded templates and config files at the beginning of the cache file. -Therefore it is advisable to remove all cache files after upgrading to 1.4.6 -(although not absolutely necessary, old cache files will regenerate) - -The debug console now has script timing and array values printed. You MUST -update your debug.tpl file with this version of Smarty. Also, the new debug.tpl -will not work with older versions of Smarty. - - -1.4.5 ------ - -Mostly bug fixes and minor improvements. Added compile id for separate compiled -versions of the same script. The directory format and filename convention for -the files in templates_c has changed, so you may want to remove all of the -existing ones before you upgrade. - - -1.4.4 ------ - -A few bug fixes, new section looping attributes and properties, debugging -console function for control via URL, and overLib integration and access -to request variables from within the template. - - -1.4.3 ------ - -This release has a few bug fixes and several enhancements. Smarty now supports -template security for third-party template editing. These features disallow the -ability for someone to execute commands or PHP code from the template language. -Smarty also now has a built-in debugging console, which is a javascript pop-up -window that displays all the included template names and assigned variables. - - -1.4.2 ------ - -This was mostly one bug fix with variable scoping within included templates -and a few documentation changes and updates. See the ChangeLog file for full -details. - - -1.4.1 ------ - -It seems that the EX_LOCK logic from the previous release didn't fix all the -problems with windows platforms. Hopefully this one does. It basically -disables file locking on windows, so there is a potential that two programs -could write over the same file at the same time, fyi. - -The reset is minor bug fixes, please refer to the ChangeLog file. - - -1.4.0 ------ - -IMPORTANT NOTICE - -Smarty now has a new syntax for accessing elements within section loops. The -new syntax is easier to use and nicely handles data structures of any -complexity. Consequently, this breaks the old syntax. - -Here is an example of the syntax change: - -old syntax: -{$sec1/sec2/sec3/customer.phone} - -new syntax: -{$customer[$sec1][$sec2][$sec3].phone} - -The section names used to come first, followed by the variable name. Now the -variable name always comes first, followed by the section names in brackets. -You can access variable indexes anywhere, depending on how you passed the -variables in. - -To fix your current templates, we have provided a script that will adjust the -syntax for you. Located in misc/fix_vars.php, run this script from the the -command line, giving each template as an argument. Be sure to use absolute -pathnames, or pathnames relative to the executing script. Probably the easiest -way to do this is to copy the fix_vars.php script into your template directory -and run 'php -q fix_vars.php *.tpl' Be sure you have proper write permission, -and backup your scripts first to be safe! The examples in the 1.4.0 -documentation have been updated to reflect the changes. - -cd /path/to/templates -cp /path/to/fix_vars.php . -find . -name "*.tpl" -exec php -q ./fix_vars.php {} \; - -NEW AND IMPROVED COMPILATION PROCESS - -Smarty 1.4.0 also has a new compilation process. Instead of compiling all the -templates up front, it now compiles them at runtime. This has several -advantages. First of all, there is no longer a need to have a single template -directory. You can now have arbitrary template sources, such as multiple -directories or even database calls. This also speeds the performance of Smarty -when $compile_check is enabled, since it is only checking the template that is -being executed instead of everything found in the template directory. The -$tpl_file_ext is no longer needed, but kept for backward compatability. -Templates can now be named anything you like with any extension. - -MINOR FIXES - -A workaround for LOCK_EX on Windows systems was added, and changed a couple of -file permissions for better security on public servers. - -$show_info_header is now defaulted to false instead of true. This header causes -problems when displaying content other than HTML, so now you must explicitly -set this flag to true to show the header information (or change the default in -your copy of Smarty.) - -Documentation is written in docbook format. I updated the docbook -> HTML -generating software & style-sheets, and consequently the examples are no longer -in a different background color. If anyone wants to contribute a better -stylesheet or help with documentation, drop me a line. <monte@ispi.net> - -CHANGES/ENHANCEMENTS/UPDATES - -date_format, html_select_date and html_select_time used to require a unix -timestamp as the format of the date passed into the template. Smarty is now a -bit smarter at this. It will take a unix timestamp, a mysql timestamp, or any -date string that is parsable by strtotime, such as 10/01/2001 or 2001-10-01, -etc. Just give some formats a try and see what works. - -Smarty now has template prefilters, meaning that you can run your templates -through custom functions before they are compiled. This is good for things like -removing unwanted comments, keeping an eye on words or functionality people are -putting in templates, translating XML -> HTML, etc. See the register_prefilter -documentation for more info. - -Another addition are the so-called compiler functions. These are custom -functions registered by the user that are executed at compilation time of the -template. They can be used to inject PHP code or time-sensitive static content -into the compiled template. - -The run-time custom functions are now passed the Smarty object as the second -parameter. This can be used, for example, to assign or clear template variables -from inside the custom function. - -clear_compile_dir() was added for clearing out compiled versions of your -templates. Not something normally needed, but you may have a need for this if -you have $compile_check set to false and you periodically update templates via -some automated process. As of 1.4.0, uncompiled templates _always_ get -compiled regardless of $compile_check setting, although they won't be checked -for recompile if $compile_check is set to false. - -You can now refer to properties of objects assigned from PHP by using the '->' -symbol and specifying the property name after it, e.g. $foo->bar. - -{php}{/php} tags were added to embed php into the templates. Not normally -needed, but some circumstances may call for it. Check out the "componentized -templates" tip in the documentation for an example. - -{capture}{/capture} and {counter} functions were added. See the documentation -for a complete description and examples. - -UPGRADE NOTES - -The format of the files created in the $compile_dir are now a bit different. -The compiled template filename is the template resource name url-encoded. -Therefore, all compiled files are now in the top directory of $compile_dir. -This was done to make way for arbitrary template resources. Each compiled -template also has a header that states what template resource was used to -create it. From a unix command prompt, you can use "head -2 *" to see the first -two lines of each file. - -When upgrading to 1.4.0, you will want to clear out all your old files in the -$compile_dir. If you have $compile_check set to false and the compiled template -does not yet exist, it will compile it regardless of this setting. This way you -can clear out the $compile_dir and not worry about setting $compile_check to -true to get the inital compilation under way. - - -1.3.2 ------ - -Smarty now has (an optional) header prepended to the output of the Smarty -templates. This displays the Smarty version and the date/time when the page was -generated. This is useful for debugging your cache routines, and purely -informational so there is evidence that the page was generated by Smarty. Set -$show_info_header to false to disable it. - -{config_load ...} performance was tuned by placing the loaded variables into a -global array, so basically a config file is read from the file system and -placed into a php array structure only once, no matter how many times it is -called in any of the templates. The scope of the loaded variables has changed a -bit as well. Variables loaded by config_load used to be treated as global -variables, meaning that parent templates (templates that included the current -template) could see them. Now the default behavior is such that loaded -variables are only visible by the current template and child templates (all -templates included after the {config_load ...} is called.) To mimic the -original behavior, provide the attribute "global=yes" like so: {config_load -file="mystuff.conf" global=yes}. Now when you load in mystuff.conf, the -variables will be visible to parent templates (merged with any existing config -variables.) - -A formatting attribute was added to the {math ...} function, adding the ability -to control the format of the output. Use the same formatting syntax as the PHP -function sprintf(). - -{html_select_time ...} was added, a custom function that works much like -{html_select_date ...} except it displays time elements instead of dates. - -A few custom modifiers were added: count_characters, count_words, -count_sentences, count_paragraphs. All pretty self-explanatory. - -/* vim: set et: */ diff --git a/livesupport/modules/htmlUI/var/html/Smarty/TODO b/livesupport/modules/htmlUI/var/html/Smarty/TODO deleted file mode 100644 index 82b0a462c..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/TODO +++ /dev/null @@ -1,10 +0,0 @@ -* handle asp style tags in $php_handler -* fix all E_NOTICE warnings -* make simple math easier -* caching all but parts of the template -* change plugins so $smarty variable always comes first -* get cache ttl with function call -FIX: make inserts use normal functions before plugins -UPD: change it so that if template comes from some resource, - that resource stays as the default, no need to specify it - in includes. diff --git a/livesupport/modules/htmlUI/var/html/Smarty/demo/configs/test.conf b/livesupport/modules/htmlUI/var/html/Smarty/demo/configs/test.conf deleted file mode 100644 index 5eac748ec..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/demo/configs/test.conf +++ /dev/null @@ -1,5 +0,0 @@ -title = Welcome to Smarty! -cutoff_size = 40 - -[setup] -bold = true diff --git a/livesupport/modules/htmlUI/var/html/Smarty/demo/index.php b/livesupport/modules/htmlUI/var/html/Smarty/demo/index.php deleted file mode 100644 index fee202f80..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/demo/index.php +++ /dev/null @@ -1,25 +0,0 @@ -<?php - -require '../libs/Smarty.class.php'; - -$smarty = new Smarty; - -$smarty->compile_check = true; -$smarty->debugging = true; - -$smarty->assign("Name","Fred Irving Johnathan Bradley Peppergill"); -$smarty->assign("FirstName",array("John","Mary","James","Henry")); -$smarty->assign("LastName",array("Doe","Smith","Johnson","Case")); -$smarty->assign("Class",array(array("A","B","C","D"), array("E", "F", "G", "H"), - array("I", "J", "K", "L"), array("M", "N", "O", "P"))); - -$smarty->assign("contacts", array(array("phone" => "1", "fax" => "2", "cell" => "3"), - array("phone" => "555-4444", "fax" => "555-3333", "cell" => "760-1234"))); - -$smarty->assign("option_values", array("NY","NE","KS","IA","OK","TX")); -$smarty->assign("option_output", array("New York","Nebraska","Kansas","Iowa","Oklahoma","Texas")); -$smarty->assign("option_selected", "NE"); - -$smarty->display('index.tpl'); - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/demo/templates/footer.tpl b/livesupport/modules/htmlUI/var/html/Smarty/demo/templates/footer.tpl deleted file mode 100644 index e04310fdd..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/demo/templates/footer.tpl +++ /dev/null @@ -1,2 +0,0 @@ -</BODY> -</HTML> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/demo/templates/header.tpl b/livesupport/modules/htmlUI/var/html/Smarty/demo/templates/header.tpl deleted file mode 100644 index af8f61381..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/demo/templates/header.tpl +++ /dev/null @@ -1,6 +0,0 @@ -<HTML> -<HEAD> -{popup_init src="/javascripts/overlib.js"} -<TITLE>{$title} - {$Name}</TITLE> -</HEAD> -<BODY bgcolor="#ffffff"> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/demo/templates/index.tpl b/livesupport/modules/htmlUI/var/html/Smarty/demo/templates/index.tpl deleted file mode 100644 index c4d5eeeb7..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/demo/templates/index.tpl +++ /dev/null @@ -1,83 +0,0 @@ -{config_load file=test.conf section="setup"} -{include file="header.tpl" title=foo} - -<PRE> - -{* bold and title are read from the config file *} -{if #bold#}<b>{/if} -{* capitalize the first letters of each word of the title *} -Title: {#title#|capitalize} -{if #bold#}</b>{/if} - -The current date and time is {$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"} - -Tooltip example: Move your mouse over the <A HREF="" {popup sticky=true caption="Smarty pop-up text" delay=400 text="This is an example of a tooltip. Tooltips are handy for context sensitive information, and extremely easy to add to your templates with Smarty and the integration of <a href='http://www.bosrup.com/web/overlib/'>overLIB</a> by Erik Bosrup"} onclick="return false;">Help</A> link to see an example of a tooltip using Smarty's popup function. - -The value of global assigned variable $SCRIPT_NAME is {$SCRIPT_NAME} - -Example of accessing server environment variable SERVER_NAME: {$smarty.server.SERVER_NAME} - -The value of {ldelim}$Name{rdelim} is <b>{$Name}</b> - -variable modifier example of {ldelim}$Name|upper{rdelim} - -<b>{$Name|upper}</b> - - -An example of a section loop: - -{section name=outer loop=$FirstName} -{if %outer.index% is odd by 2} - {%outer.rownum%} . {$FirstName[outer]} {$LastName[outer]} -{else} - {%outer.rownum%} * {$FirstName[outer]} {$LastName[outer]} -{/if} -{sectionelse} - none -{/section} - -An example of section looped key values: - -{section name=sec1 loop=$contacts} - phone: {$contacts[sec1].phone}<br> - fax: {$contacts[sec1].fax}<br> - cell: {$contacts[sec1].cell}<br> -{/section} -<p> - -testing strip tags -{strip} -<table border=0> - <tr> - <td> - <A HREF="{$SCRIPT_NAME}"> - <font color="red">This is a test </font> - </A> - </td> - </tr> -</table> -{/strip} - -</PRE> - -This is an example of the html_select_date function: - -<form> -{html_select_date start_year=1998 end_year=2010} -</form> - -This is an example of the html_select_time function: - -<form> -{html_select_time use_24_hours=false} -</form> - -This is an example of the html_options function: - -<form> -<select name=states> -{html_options values=$option_values selected=$option_selected output=$option_output} -</select> -</form> - -{include file="footer.tpl"} diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/Config_File.class.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/Config_File.class.php deleted file mode 100644 index 1ada6aa46..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/Config_File.class.php +++ /dev/null @@ -1,389 +0,0 @@ -<?php - -/** - * Config_File class. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * @link http://smarty.php.net/ - * @version 2.6.6 - * @copyright Copyright: 2001-2004 ispi of Lincoln, Inc. - * @author Andrei Zmievski <andrei@php.net> - * @access public - * @package Smarty - */ - -/* $Id: Config_File.class.php,v 1.5 2005/02/10 14:03:50 sebastian Exp $ */ - -/** - * Config file reading class - * @package Smarty - */ -class Config_File { - /**#@+ - * Options - * @var boolean - */ - /** - * Controls whether variables with the same name overwrite each other. - */ - var $overwrite = true; - - /** - * Controls whether config values of on/true/yes and off/false/no get - * converted to boolean values automatically. - */ - var $booleanize = true; - - /** - * Controls whether hidden config sections/vars are read from the file. - */ - var $read_hidden = true; - - /** - * Controls whether or not to fix mac or dos formatted newlines. - * If set to true, \r or \r\n will be changed to \n. - */ - var $fix_newlines = true; - /**#@-*/ - - /** @access private */ - var $_config_path = ""; - var $_config_data = array(); - /**#@-*/ - - /** - * Constructs a new config file class. - * - * @param string $config_path (optional) path to the config files - */ - function Config_File($config_path = NULL) - { - if (isset($config_path)) - $this->set_path($config_path); - } - - - /** - * Set the path where configuration files can be found. - * - * @param string $config_path path to the config files - */ - function set_path($config_path) - { - if (!empty($config_path)) { - if (!is_string($config_path) || !file_exists($config_path) || !is_dir($config_path)) { - $this->_trigger_error_msg("Bad config file path '$config_path'"); - return; - } - if(substr($config_path, -1) != DIRECTORY_SEPARATOR) { - $config_path .= DIRECTORY_SEPARATOR; - } - - $this->_config_path = $config_path; - } - } - - - /** - * Retrieves config info based on the file, section, and variable name. - * - * @param string $file_name config file to get info for - * @param string $section_name (optional) section to get info for - * @param string $var_name (optional) variable to get info for - * @return string|array a value or array of values - */ - function &get($file_name, $section_name = NULL, $var_name = NULL) - { - if (empty($file_name)) { - $this->_trigger_error_msg('Empty config file name'); - return; - } else { - $file_name = $this->_config_path . $file_name; - if (!isset($this->_config_data[$file_name])) - $this->load_file($file_name, false); - } - - if (!empty($var_name)) { - if (empty($section_name)) { - return $this->_config_data[$file_name]["vars"][$var_name]; - } else { - if(isset($this->_config_data[$file_name]["sections"][$section_name]["vars"][$var_name])) - return $this->_config_data[$file_name]["sections"][$section_name]["vars"][$var_name]; - else - return array(); - } - } else { - if (empty($section_name)) { - return (array)$this->_config_data[$file_name]["vars"]; - } else { - if(isset($this->_config_data[$file_name]["sections"][$section_name]["vars"])) - return (array)$this->_config_data[$file_name]["sections"][$section_name]["vars"]; - else - return array(); - } - } - } - - - /** - * Retrieves config info based on the key. - * - * @param $file_name string config key (filename/section/var) - * @return string|array same as get() - * @uses get() retrieves information from config file and returns it - */ - function &get_key($config_key) - { - list($file_name, $section_name, $var_name) = explode('/', $config_key, 3); - $result = &$this->get($file_name, $section_name, $var_name); - return $result; - } - - /** - * Get all loaded config file names. - * - * @return array an array of loaded config file names - */ - function get_file_names() - { - return array_keys($this->_config_data); - } - - - /** - * Get all section names from a loaded file. - * - * @param string $file_name config file to get section names from - * @return array an array of section names from the specified file - */ - function get_section_names($file_name) - { - $file_name = $this->_config_path . $file_name; - if (!isset($this->_config_data[$file_name])) { - $this->_trigger_error_msg("Unknown config file '$file_name'"); - return; - } - - return array_keys($this->_config_data[$file_name]["sections"]); - } - - - /** - * Get all global or section variable names. - * - * @param string $file_name config file to get info for - * @param string $section_name (optional) section to get info for - * @return array an array of variables names from the specified file/section - */ - function get_var_names($file_name, $section = NULL) - { - if (empty($file_name)) { - $this->_trigger_error_msg('Empty config file name'); - return; - } else if (!isset($this->_config_data[$file_name])) { - $this->_trigger_error_msg("Unknown config file '$file_name'"); - return; - } - - if (empty($section)) - return array_keys($this->_config_data[$file_name]["vars"]); - else - return array_keys($this->_config_data[$file_name]["sections"][$section]["vars"]); - } - - - /** - * Clear loaded config data for a certain file or all files. - * - * @param string $file_name file to clear config data for - */ - function clear($file_name = NULL) - { - if ($file_name === NULL) - $this->_config_data = array(); - else if (isset($this->_config_data[$file_name])) - $this->_config_data[$file_name] = array(); - } - - - /** - * Load a configuration file manually. - * - * @param string $file_name file name to load - * @param boolean $prepend_path whether current config path should be - * prepended to the filename - */ - function load_file($file_name, $prepend_path = true) - { - if ($prepend_path && $this->_config_path != "") - $config_file = $this->_config_path . $file_name; - else - $config_file = $file_name; - - ini_set('track_errors', true); - $fp = @fopen($config_file, "r"); - if (!is_resource($fp)) { - $this->_trigger_error_msg("Could not open config file '$config_file'"); - return false; - } - - $contents = ($size = filesize($config_file)) ? fread($fp, $size) : ''; - fclose($fp); - - $this->_config_data[$config_file] = $this->parse_contents($contents); - return true; - } - - /** - * Store the contents of a file manually. - * - * @param string $config_file file name of the related contents - * @param string $contents the file-contents to parse - */ - function set_file_contents($config_file, $contents) - { - $this->_config_data[$config_file] = $this->parse_contents($contents); - return true; - } - - /** - * parse the source of a configuration file manually. - * - * @param string $contents the file-contents to parse - */ - function parse_contents($contents) - { - if($this->fix_newlines) { - // fix mac/dos formatted newlines - $contents = preg_replace('!\r\n?!', "\n", $contents); - } - - $config_data = array(); - $config_data['sections'] = array(); - $config_data['vars'] = array(); - - /* reference to fill with data */ - $vars =& $config_data['vars']; - - /* parse file line by line */ - preg_match_all('!^.*\r?\n?!m', $contents, $match); - $lines = $match[0]; - for ($i=0, $count=count($lines); $i<$count; $i++) { - $line = $lines[$i]; - if (empty($line)) continue; - - if ( $line{0} == '[' && preg_match('!^\[(.*?)\]!', $line, $match) ) { - /* section found */ - if ($match[1]{0} == '.') { - /* hidden section */ - if ($this->read_hidden) { - $section_name = substr($match[1], 1); - } else { - /* break reference to $vars to ignore hidden section */ - unset($vars); - $vars = array(); - continue; - } - } else { - $section_name = $match[1]; - } - if (!isset($config_data['sections'][$section_name])) - $config_data['sections'][$section_name] = array('vars' => array()); - $vars =& $config_data['sections'][$section_name]['vars']; - continue; - } - - if (preg_match('/^\s*(\.?\w+)\s*=\s*(.*)/s', $line, $match)) { - /* variable found */ - $var_name = rtrim($match[1]); - if (strpos($match[2], '"""') === 0) { - /* handle multiline-value */ - $lines[$i] = substr($match[2], 3); - $var_value = ''; - while ($i<$count) { - if (($pos = strpos($lines[$i], '"""')) === false) { - $var_value .= $lines[$i++]; - } else { - /* end of multiline-value */ - $var_value .= substr($lines[$i], 0, $pos); - break; - } - } - $booleanize = false; - - } else { - /* handle simple value */ - $var_value = preg_replace('/^([\'"])(.*)\1$/', '\2', rtrim($match[2])); - $booleanize = $this->booleanize; - - } - $this->_set_config_var($vars, $var_name, $var_value, $booleanize); - } - /* else unparsable line / means it is a comment / means ignore it */ - } - return $config_data; - } - - /**#@+ @access private */ - /** - * @param array &$container - * @param string $var_name - * @param mixed $var_value - * @param boolean $booleanize determines whether $var_value is converted to - * to true/false - */ - function _set_config_var(&$container, $var_name, $var_value, $booleanize) - { - if ($var_name{0} == '.') { - if (!$this->read_hidden) - return; - else - $var_name = substr($var_name, 1); - } - - if (!preg_match("/^[a-zA-Z_]\w*$/", $var_name)) { - $this->_trigger_error_msg("Bad variable name '$var_name'"); - return; - } - - if ($booleanize) { - if (preg_match("/^(on|true|yes)$/i", $var_value)) - $var_value = true; - else if (preg_match("/^(off|false|no)$/i", $var_value)) - $var_value = false; - } - - if (!isset($container[$var_name]) || $this->overwrite) - $container[$var_name] = $var_value; - else { - settype($container[$var_name], 'array'); - $container[$var_name][] = $var_value; - } - } - - /** - * @uses trigger_error() creates a PHP warning/error - * @param string $error_msg - * @param integer $error_type one of - */ - function _trigger_error_msg($error_msg, $error_type = E_USER_WARNING) - { - trigger_error("Config_File error: $error_msg", $error_type); - } - /**#@-*/ -} - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/Smarty.class.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/Smarty.class.php deleted file mode 100644 index 5743b5431..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/Smarty.class.php +++ /dev/null @@ -1,1938 +0,0 @@ -<?php - -/** - * Project: Smarty: the PHP compiling template engine - * File: Smarty.class.php - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * For questions, help, comments, discussion, etc., please join the - * Smarty mailing list. Send a blank e-mail to - * smarty-general-subscribe@lists.php.net - * - * @link http://smarty.php.net/ - * @copyright 2001-2004 ispi of Lincoln, Inc. - * @author Monte Ohrt <monte@ispi.net> - * @author Andrei Zmievski <andrei@php.net> - * @package Smarty - * @version 2.6.6 - */ - -/* $Id: Smarty.class.php,v 1.5 2005/02/10 14:03:50 sebastian Exp $ */ - -/** - * DIR_SEP isn't used anymore, but third party apps might - */ -if(!defined('DIR_SEP')) { - define('DIR_SEP', DIRECTORY_SEPARATOR); -} - -/** - * set SMARTY_DIR to absolute path to Smarty library files. - * if not defined, include_path will be used. Sets SMARTY_DIR only if user - * application has not already defined it. - */ - -if (!defined('SMARTY_DIR')) { - define('SMARTY_DIR', dirname(__FILE__) . DIRECTORY_SEPARATOR); -} - -if (!defined('SMARTY_CORE_DIR')) { - define('SMARTY_CORE_DIR', SMARTY_DIR . 'internals' . DIRECTORY_SEPARATOR); -} - -define('SMARTY_PHP_PASSTHRU', 0); -define('SMARTY_PHP_QUOTE', 1); -define('SMARTY_PHP_REMOVE', 2); -define('SMARTY_PHP_ALLOW', 3); - -/** - * @package Smarty - */ -class Smarty -{ - /**#@+ - * Smarty Configuration Section - */ - - /** - * The name of the directory where templates are located. - * - * @var string - */ - var $template_dir = 'templates'; - - /** - * The directory where compiled templates are located. - * - * @var string - */ - var $compile_dir = 'templates_c'; - - /** - * The directory where config files are located. - * - * @var string - */ - var $config_dir = 'configs'; - - /** - * An array of directories searched for plugins. - * - * @var array - */ - var $plugins_dir = array('plugins'); - - /** - * If debugging is enabled, a debug console window will display - * when the page loads (make sure your browser allows unrequested - * popup windows) - * - * @var boolean - */ - var $debugging = false; - - /** - * When set, smarty does uses this value as error_reporting-level. - * - * @var boolean - */ - var $error_reporting = null; - - /** - * This is the path to the debug console template. If not set, - * the default one will be used. - * - * @var string - */ - var $debug_tpl = ''; - - /** - * This determines if debugging is enable-able from the browser. - * <ul> - * <li>NONE => no debugging control allowed</li> - * <li>URL => enable debugging when SMARTY_DEBUG is found in the URL.</li> - * </ul> - * @link http://www.foo.dom/index.php?SMARTY_DEBUG - * @var string - */ - var $debugging_ctrl = 'NONE'; - - /** - * This tells Smarty whether to check for recompiling or not. Recompiling - * does not need to happen unless a template or config file is changed. - * Typically you enable this during development, and disable for - * production. - * - * @var boolean - */ - var $compile_check = true; - - /** - * This forces templates to compile every time. Useful for development - * or debugging. - * - * @var boolean - */ - var $force_compile = false; - - /** - * This enables template caching. - * <ul> - * <li>0 = no caching</li> - * <li>1 = use class cache_lifetime value</li> - * <li>2 = use cache_lifetime in cache file</li> - * </ul> - * @var integer - */ - var $caching = 0; - - /** - * The name of the directory for cache files. - * - * @var string - */ - var $cache_dir = 'cache'; - - /** - * This is the number of seconds cached content will persist. - * <ul> - * <li>0 = always regenerate cache</li> - * <li>-1 = never expires</li> - * </ul> - * - * @var integer - */ - var $cache_lifetime = 3600; - - /** - * Only used when $caching is enabled. If true, then If-Modified-Since headers - * are respected with cached content, and appropriate HTTP headers are sent. - * This way repeated hits to a cached page do not send the entire page to the - * client every time. - * - * @var boolean - */ - var $cache_modified_check = false; - - /** - * This determines how Smarty handles "<?php ... ?>" tags in templates. - * possible values: - * <ul> - * <li>SMARTY_PHP_PASSTHRU -> print tags as plain text</li> - * <li>SMARTY_PHP_QUOTE -> escape tags as entities</li> - * <li>SMARTY_PHP_REMOVE -> remove php tags</li> - * <li>SMARTY_PHP_ALLOW -> execute php tags</li> - * </ul> - * - * @var integer - */ - var $php_handling = SMARTY_PHP_PASSTHRU; - - /** - * This enables template security. When enabled, many things are restricted - * in the templates that normally would go unchecked. This is useful when - * untrusted parties are editing templates and you want a reasonable level - * of security. (no direct execution of PHP in templates for example) - * - * @var boolean - */ - var $security = false; - - /** - * This is the list of template directories that are considered secure. This - * is used only if {@link $security} is enabled. One directory per array - * element. {@link $template_dir} is in this list implicitly. - * - * @var array - */ - var $secure_dir = array(); - - /** - * These are the security settings for Smarty. They are used only when - * {@link $security} is enabled. - * - * @var array - */ - var $security_settings = array( - 'PHP_HANDLING' => false, - 'IF_FUNCS' => array('array', 'list', - 'isset', 'empty', - 'count', 'sizeof', - 'in_array', 'is_array', - 'true','false'), - 'INCLUDE_ANY' => false, - 'PHP_TAGS' => false, - 'MODIFIER_FUNCS' => array('count'), - 'ALLOW_CONSTANTS' => false - ); - - /** - * This is an array of directories where trusted php scripts reside. - * {@link $security} is disabled during their inclusion/execution. - * - * @var array - */ - var $trusted_dir = array(); - - /** - * The left delimiter used for the template tags. - * - * @var string - */ - var $left_delimiter = '{'; - - /** - * The right delimiter used for the template tags. - * - * @var string - */ - var $right_delimiter = '}'; - - /** - * The order in which request variables are registered, similar to - * variables_order in php.ini E = Environment, G = GET, P = POST, - * C = Cookies, S = Server - * - * @var string - */ - var $request_vars_order = 'EGPCS'; - - /** - * Indicates wether $HTTP_*_VARS[] (request_use_auto_globals=false) - * are uses as request-vars or $_*[]-vars. note: if - * request_use_auto_globals is true, then $request_vars_order has - * no effect, but the php-ini-value "gpc_order" - * - * @var boolean - */ - var $request_use_auto_globals = true; - - /** - * Set this if you want different sets of compiled files for the same - * templates. This is useful for things like different languages. - * Instead of creating separate sets of templates per language, you - * set different compile_ids like 'en' and 'de'. - * - * @var string - */ - var $compile_id = null; - - /** - * This tells Smarty whether or not to use sub dirs in the cache/ and - * templates_c/ directories. sub directories better organized, but - * may not work well with PHP safe mode enabled. - * - * @var boolean - * - */ - var $use_sub_dirs = false; - - /** - * This is a list of the modifiers to apply to all template variables. - * Put each modifier in a separate array element in the order you want - * them applied. example: <code>array('escape:"htmlall"');</code> - * - * @var array - */ - var $default_modifiers = array(); - - /** - * This is the resource type to be used when not specified - * at the beginning of the resource path. examples: - * $smarty->display('file:index.tpl'); - * $smarty->display('db:index.tpl'); - * $smarty->display('index.tpl'); // will use default resource type - * {include file="file:index.tpl"} - * {include file="db:index.tpl"} - * {include file="index.tpl"} {* will use default resource type *} - * - * @var array - */ - var $default_resource_type = 'file'; - - /** - * The function used for cache file handling. If not set, built-in caching is used. - * - * @var null|string function name - */ - var $cache_handler_func = null; - - /** - * This indicates which filters are automatically loaded into Smarty. - * - * @var array array of filter names - */ - var $autoload_filters = array(); - - /**#@+ - * @var boolean - */ - /** - * This tells if config file vars of the same name overwrite each other or not. - * if disabled, same name variables are accumulated in an array. - */ - var $config_overwrite = true; - - /** - * This tells whether or not to automatically booleanize config file variables. - * If enabled, then the strings "on", "true", and "yes" are treated as boolean - * true, and "off", "false" and "no" are treated as boolean false. - */ - var $config_booleanize = true; - - /** - * This tells whether hidden sections [.foobar] are readable from the - * tempalates or not. Normally you would never allow this since that is - * the point behind hidden sections: the application can access them, but - * the templates cannot. - */ - var $config_read_hidden = false; - - /** - * This tells whether or not automatically fix newlines in config files. - * It basically converts \r (mac) or \r\n (dos) to \n - */ - var $config_fix_newlines = true; - /**#@-*/ - - /** - * If a template cannot be found, this PHP function will be executed. - * Useful for creating templates on-the-fly or other special action. - * - * @var string function name - */ - var $default_template_handler_func = ''; - - /** - * The file that contains the compiler class. This can a full - * pathname, or relative to the php_include path. - * - * @var string - */ - var $compiler_file = 'Smarty_Compiler.class.php'; - - /** - * The class used for compiling templates. - * - * @var string - */ - var $compiler_class = 'Smarty_Compiler'; - - /** - * The class used to load config vars. - * - * @var string - */ - var $config_class = 'Config_File'; - -/**#@+ - * END Smarty Configuration Section - * There should be no need to touch anything below this line. - * @access private - */ - /** - * where assigned template vars are kept - * - * @var array - */ - var $_tpl_vars = array(); - - /** - * stores run-time $smarty.* vars - * - * @var null|array - */ - var $_smarty_vars = null; - - /** - * keeps track of sections - * - * @var array - */ - var $_sections = array(); - - /** - * keeps track of foreach blocks - * - * @var array - */ - var $_foreach = array(); - - /** - * keeps track of tag hierarchy - * - * @var array - */ - var $_tag_stack = array(); - - /** - * configuration object - * - * @var Config_file - */ - var $_conf_obj = null; - - /** - * loaded configuration settings - * - * @var array - */ - var $_config = array(array('vars' => array(), 'files' => array())); - - /** - * md5 checksum of the string 'Smarty' - * - * @var string - */ - var $_smarty_md5 = 'f8d698aea36fcbead2b9d5359ffca76f'; - - /** - * Smarty version number - * - * @var string - */ - var $_version = '2.6.6'; - - /** - * current template inclusion depth - * - * @var integer - */ - var $_inclusion_depth = 0; - - /** - * for different compiled templates - * - * @var string - */ - var $_compile_id = null; - - /** - * text in URL to enable debug mode - * - * @var string - */ - var $_smarty_debug_id = 'SMARTY_DEBUG'; - - /** - * debugging information for debug console - * - * @var array - */ - var $_smarty_debug_info = array(); - - /** - * info that makes up a cache file - * - * @var array - */ - var $_cache_info = array(); - - /** - * default file permissions - * - * @var integer - */ - var $_file_perms = 0644; - - /** - * default dir permissions - * - * @var integer - */ - var $_dir_perms = 0771; - - /** - * registered objects - * - * @var array - */ - var $_reg_objects = array(); - - /** - * table keeping track of plugins - * - * @var array - */ - var $_plugins = array( - 'modifier' => array(), - 'function' => array(), - 'block' => array(), - 'compiler' => array(), - 'prefilter' => array(), - 'postfilter' => array(), - 'outputfilter' => array(), - 'resource' => array(), - 'insert' => array()); - - - /** - * cache serials - * - * @var array - */ - var $_cache_serials = array(); - - /** - * name of optional cache include file - * - * @var string - */ - var $_cache_include = null; - - /** - * indicate if the current code is used in a compiled - * include - * - * @var string - */ - var $_cache_including = false; - - /**#@-*/ - /** - * The class constructor. - */ - function Smarty() - { - $this->assign('SCRIPT_NAME', isset($_SERVER['SCRIPT_NAME']) ? $_SERVER['SCRIPT_NAME'] - : @$GLOBALS['HTTP_SERVER_VARS']['SCRIPT_NAME']); - } - - /** - * assigns values to template variables - * - * @param array|string $tpl_var the template variable name(s) - * @param mixed $value the value to assign - */ - function assign($tpl_var, $value = null) - { - if (is_array($tpl_var)){ - foreach ($tpl_var as $key => $val) { - if ($key != '') { - $this->_tpl_vars[$key] = $val; - } - } - } else { - if ($tpl_var != '') - $this->_tpl_vars[$tpl_var] = $value; - } - } - - /** - * assigns values to template variables by reference - * - * @param string $tpl_var the template variable name - * @param mixed $value the referenced value to assign - */ - function assign_by_ref($tpl_var, &$value) - { - if ($tpl_var != '') - $this->_tpl_vars[$tpl_var] = &$value; - } - - /** - * appends values to template variables - * - * @param array|string $tpl_var the template variable name(s) - * @param mixed $value the value to append - */ - function append($tpl_var, $value=null, $merge=false) - { - if (is_array($tpl_var)) { - // $tpl_var is an array, ignore $value - foreach ($tpl_var as $_key => $_val) { - if ($_key != '') { - if(!@is_array($this->_tpl_vars[$_key])) { - settype($this->_tpl_vars[$_key],'array'); - } - if($merge && is_array($_val)) { - foreach($_val as $_mkey => $_mval) { - $this->_tpl_vars[$_key][$_mkey] = $_mval; - } - } else { - $this->_tpl_vars[$_key][] = $_val; - } - } - } - } else { - if ($tpl_var != '' && isset($value)) { - if(!@is_array($this->_tpl_vars[$tpl_var])) { - settype($this->_tpl_vars[$tpl_var],'array'); - } - if($merge && is_array($value)) { - foreach($value as $_mkey => $_mval) { - $this->_tpl_vars[$tpl_var][$_mkey] = $_mval; - } - } else { - $this->_tpl_vars[$tpl_var][] = $value; - } - } - } - } - - /** - * appends values to template variables by reference - * - * @param string $tpl_var the template variable name - * @param mixed $value the referenced value to append - */ - function append_by_ref($tpl_var, &$value, $merge=false) - { - if ($tpl_var != '' && isset($value)) { - if(!@is_array($this->_tpl_vars[$tpl_var])) { - settype($this->_tpl_vars[$tpl_var],'array'); - } - if ($merge && is_array($value)) { - foreach($value as $_key => $_val) { - $this->_tpl_vars[$tpl_var][$_key] = &$value[$_key]; - } - } else { - $this->_tpl_vars[$tpl_var][] = &$value; - } - } - } - - - /** - * clear the given assigned template variable. - * - * @param string $tpl_var the template variable to clear - */ - function clear_assign($tpl_var) - { - if (is_array($tpl_var)) - foreach ($tpl_var as $curr_var) - unset($this->_tpl_vars[$curr_var]); - else - unset($this->_tpl_vars[$tpl_var]); - } - - - /** - * Registers custom function to be used in templates - * - * @param string $function the name of the template function - * @param string $function_impl the name of the PHP function to register - */ - function register_function($function, $function_impl, $cacheable=true, $cache_attrs=null) - { - $this->_plugins['function'][$function] = - array($function_impl, null, null, false, $cacheable, $cache_attrs); - - } - - /** - * Unregisters custom function - * - * @param string $function name of template function - */ - function unregister_function($function) - { - unset($this->_plugins['function'][$function]); - } - - /** - * Registers object to be used in templates - * - * @param string $object name of template object - * @param object &$object_impl the referenced PHP object to register - * @param null|array $allowed list of allowed methods (empty = all) - * @param boolean $smarty_args smarty argument format, else traditional - * @param null|array $block_functs list of methods that are block format - */ - function register_object($object, &$object_impl, $allowed = array(), $smarty_args = true, $block_methods = array()) - { - settype($allowed, 'array'); - settype($smarty_args, 'boolean'); - $this->_reg_objects[$object] = - array(&$object_impl, $allowed, $smarty_args, $block_methods); - } - - /** - * Unregisters object - * - * @param string $object name of template object - */ - function unregister_object($object) - { - unset($this->_reg_objects[$object]); - } - - - /** - * Registers block function to be used in templates - * - * @param string $block name of template block - * @param string $block_impl PHP function to register - */ - function register_block($block, $block_impl, $cacheable=true, $cache_attrs=null) - { - $this->_plugins['block'][$block] = - array($block_impl, null, null, false, $cacheable, $cache_attrs); - } - - /** - * Unregisters block function - * - * @param string $block name of template function - */ - function unregister_block($block) - { - unset($this->_plugins['block'][$block]); - } - - /** - * Registers compiler function - * - * @param string $function name of template function - * @param string $function_impl name of PHP function to register - */ - function register_compiler_function($function, $function_impl, $cacheable=true) - { - $this->_plugins['compiler'][$function] = - array($function_impl, null, null, false, $cacheable); - } - - /** - * Unregisters compiler function - * - * @param string $function name of template function - */ - function unregister_compiler_function($function) - { - unset($this->_plugins['compiler'][$function]); - } - - /** - * Registers modifier to be used in templates - * - * @param string $modifier name of template modifier - * @param string $modifier_impl name of PHP function to register - */ - function register_modifier($modifier, $modifier_impl) - { - $this->_plugins['modifier'][$modifier] = - array($modifier_impl, null, null, false); - } - - /** - * Unregisters modifier - * - * @param string $modifier name of template modifier - */ - function unregister_modifier($modifier) - { - unset($this->_plugins['modifier'][$modifier]); - } - - /** - * Registers a resource to fetch a template - * - * @param string $type name of resource - * @param array $functions array of functions to handle resource - */ - function register_resource($type, $functions) - { - if (count($functions)==4) { - $this->_plugins['resource'][$type] = - array($functions, false); - - } elseif (count($functions)==5) { - $this->_plugins['resource'][$type] = - array(array(array(&$functions[0], $functions[1]) - ,array(&$functions[0], $functions[2]) - ,array(&$functions[0], $functions[3]) - ,array(&$functions[0], $functions[4])) - ,false); - - } else { - $this->trigger_error("malformed function-list for '$type' in register_resource"); - - } - } - - /** - * Unregisters a resource - * - * @param string $type name of resource - */ - function unregister_resource($type) - { - unset($this->_plugins['resource'][$type]); - } - - /** - * Registers a prefilter function to apply - * to a template before compiling - * - * @param string $function name of PHP function to register - */ - function register_prefilter($function) - { - $_name = (is_array($function)) ? $function[1] : $function; - $this->_plugins['prefilter'][$_name] - = array($function, null, null, false); - } - - /** - * Unregisters a prefilter function - * - * @param string $function name of PHP function - */ - function unregister_prefilter($function) - { - unset($this->_plugins['prefilter'][$function]); - } - - /** - * Registers a postfilter function to apply - * to a compiled template after compilation - * - * @param string $function name of PHP function to register - */ - function register_postfilter($function) - { - $_name = (is_array($function)) ? $function[1] : $function; - $this->_plugins['postfilter'][$_name] - = array($function, null, null, false); - } - - /** - * Unregisters a postfilter function - * - * @param string $function name of PHP function - */ - function unregister_postfilter($function) - { - unset($this->_plugins['postfilter'][$function]); - } - - /** - * Registers an output filter function to apply - * to a template output - * - * @param string $function name of PHP function - */ - function register_outputfilter($function) - { - $_name = (is_array($function)) ? $function[1] : $function; - $this->_plugins['outputfilter'][$_name] - = array($function, null, null, false); - } - - /** - * Unregisters an outputfilter function - * - * @param string $function name of PHP function - */ - function unregister_outputfilter($function) - { - unset($this->_plugins['outputfilter'][$function]); - } - - /** - * load a filter of specified type and name - * - * @param string $type filter type - * @param string $name filter name - */ - function load_filter($type, $name) - { - switch ($type) { - case 'output': - $_params = array('plugins' => array(array($type . 'filter', $name, null, null, false))); - require_once(SMARTY_CORE_DIR . 'core.load_plugins.php'); - smarty_core_load_plugins($_params, $this); - break; - - case 'pre': - case 'post': - if (!isset($this->_plugins[$type . 'filter'][$name])) - $this->_plugins[$type . 'filter'][$name] = false; - break; - } - } - - /** - * clear cached content for the given template and cache id - * - * @param string $tpl_file name of template file - * @param string $cache_id name of cache_id - * @param string $compile_id name of compile_id - * @param string $exp_time expiration time - * @return boolean - */ - function clear_cache($tpl_file = null, $cache_id = null, $compile_id = null, $exp_time = null) - { - - if (!isset($compile_id)) - $compile_id = $this->compile_id; - - if (!isset($tpl_file)) - $compile_id = null; - - $_auto_id = $this->_get_auto_id($cache_id, $compile_id); - - if (!empty($this->cache_handler_func)) { - return call_user_func_array($this->cache_handler_func, - array('clear', &$this, &$dummy, $tpl_file, $cache_id, $compile_id, $exp_time)); - } else { - $_params = array('auto_base' => $this->cache_dir, - 'auto_source' => $tpl_file, - 'auto_id' => $_auto_id, - 'exp_time' => $exp_time); - require_once(SMARTY_CORE_DIR . 'core.rm_auto.php'); - return smarty_core_rm_auto($_params, $this); - } - - } - - - /** - * clear the entire contents of cache (all templates) - * - * @param string $exp_time expire time - * @return boolean results of {@link smarty_core_rm_auto()} - */ - function clear_all_cache($exp_time = null) - { - return $this->clear_cache(null, null, null, $exp_time); - } - - - /** - * test to see if valid cache exists for this template - * - * @param string $tpl_file name of template file - * @param string $cache_id - * @param string $compile_id - * @return string|false results of {@link _read_cache_file()} - */ - function is_cached($tpl_file, $cache_id = null, $compile_id = null) - { - if (!$this->caching) - return false; - - if (!isset($compile_id)) - $compile_id = $this->compile_id; - - $_params = array( - 'tpl_file' => $tpl_file, - 'cache_id' => $cache_id, - 'compile_id' => $compile_id - ); - require_once(SMARTY_CORE_DIR . 'core.read_cache_file.php'); - return smarty_core_read_cache_file($_params, $this); - } - - - /** - * clear all the assigned template variables. - * - */ - function clear_all_assign() - { - $this->_tpl_vars = array(); - } - - /** - * clears compiled version of specified template resource, - * or all compiled template files if one is not specified. - * This function is for advanced use only, not normally needed. - * - * @param string $tpl_file - * @param string $compile_id - * @param string $exp_time - * @return boolean results of {@link smarty_core_rm_auto()} - */ - function clear_compiled_tpl($tpl_file = null, $compile_id = null, $exp_time = null) - { - if (!isset($compile_id)) { - $compile_id = $this->compile_id; - } - $_params = array('auto_base' => $this->compile_dir, - 'auto_source' => $tpl_file, - 'auto_id' => $compile_id, - 'exp_time' => $exp_time, - 'extensions' => array('.inc', '.php')); - require_once(SMARTY_CORE_DIR . 'core.rm_auto.php'); - return smarty_core_rm_auto($_params, $this); - } - - /** - * Checks whether requested template exists. - * - * @param string $tpl_file - * @return boolean - */ - function template_exists($tpl_file) - { - $_params = array('resource_name' => $tpl_file, 'quiet'=>true, 'get_source'=>false); - return $this->_fetch_resource_info($_params); - } - - /** - * Returns an array containing template variables - * - * @param string $name - * @param string $type - * @return array - */ - function &get_template_vars($name=null) - { - if(!isset($name)) { - return $this->_tpl_vars; - } - if(isset($this->_tpl_vars[$name])) { - return $this->_tpl_vars[$name]; - } - } - - /** - * Returns an array containing config variables - * - * @param string $name - * @param string $type - * @return array - */ - function &get_config_vars($name=null) - { - if(!isset($name) && is_array($this->_config[0])) { - return $this->_config[0]['vars']; - } else if(isset($this->_config[0]['vars'][$name])) { - return $this->_config[0]['vars'][$name]; - } - } - - /** - * trigger Smarty error - * - * @param string $error_msg - * @param integer $error_type - */ - function trigger_error($error_msg, $error_type = E_USER_WARNING) - { - trigger_error("Smarty error: $error_msg", $error_type); - } - - - /** - * executes & displays the template results - * - * @param string $resource_name - * @param string $cache_id - * @param string $compile_id - */ - function display($resource_name, $cache_id = null, $compile_id = null) - { - $this->fetch($resource_name, $cache_id, $compile_id, true); - } - - /** - * executes & returns or displays the template results - * - * @param string $resource_name - * @param string $cache_id - * @param string $compile_id - * @param boolean $display - */ - function fetch($resource_name, $cache_id = null, $compile_id = null, $display = false) - { - static $_cache_info = array(); - - $_smarty_old_error_level = $this->debugging ? error_reporting() : error_reporting(isset($this->error_reporting) - ? $this->error_reporting : error_reporting() & ~E_NOTICE); - - if (!$this->debugging && $this->debugging_ctrl == 'URL') { - $_query_string = $this->request_use_auto_globals ? $_SERVER['QUERY_STRING'] : $GLOBALS['HTTP_SERVER_VARS']['QUERY_STRING']; - if (@strstr($_query_string, $this->_smarty_debug_id)) { - if (@strstr($_query_string, $this->_smarty_debug_id . '=on')) { - // enable debugging for this browser session - @setcookie('SMARTY_DEBUG', true); - $this->debugging = true; - } elseif (@strstr($_query_string, $this->_smarty_debug_id . '=off')) { - // disable debugging for this browser session - @setcookie('SMARTY_DEBUG', false); - $this->debugging = false; - } else { - // enable debugging for this page - $this->debugging = true; - } - } else { - $_cookie_var = $this->request_use_auto_globals ? $_COOKIE['SMARTY_DEBUG'] : $GLOBALS['HTTP_COOKIE_VARS']['SMARTY_DEBUG']; - $this->debugging = $_cookie_var ? true : false; - } - } - - if ($this->debugging) { - // capture time for debugging info - $_params = array(); - require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); - $_debug_start_time = smarty_core_get_microtime($_params, $this); - $this->_smarty_debug_info[] = array('type' => 'template', - 'filename' => $resource_name, - 'depth' => 0); - $_included_tpls_idx = count($this->_smarty_debug_info) - 1; - } - - if (!isset($compile_id)) { - $compile_id = $this->compile_id; - } - - $this->_compile_id = $compile_id; - $this->_inclusion_depth = 0; - - if ($this->caching) { - // save old cache_info, initialize cache_info - array_push($_cache_info, $this->_cache_info); - $this->_cache_info = array(); - $_params = array( - 'tpl_file' => $resource_name, - 'cache_id' => $cache_id, - 'compile_id' => $compile_id, - 'results' => null - ); - require_once(SMARTY_CORE_DIR . 'core.read_cache_file.php'); - if (smarty_core_read_cache_file($_params, $this)) { - $_smarty_results = $_params['results']; - if (!empty($this->_cache_info['insert_tags'])) { - $_params = array('plugins' => $this->_cache_info['insert_tags']); - require_once(SMARTY_CORE_DIR . 'core.load_plugins.php'); - smarty_core_load_plugins($_params, $this); - $_params = array('results' => $_smarty_results); - require_once(SMARTY_CORE_DIR . 'core.process_cached_inserts.php'); - $_smarty_results = smarty_core_process_cached_inserts($_params, $this); - } - if (!empty($this->_cache_info['cache_serials'])) { - $_params = array('results' => $_smarty_results); - require_once(SMARTY_CORE_DIR . 'core.process_compiled_include.php'); - $_smarty_results = smarty_core_process_compiled_include($_params, $this); - } - - - if ($display) { - if ($this->debugging) - { - // capture time for debugging info - $_params = array(); - require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); - $this->_smarty_debug_info[$_included_tpls_idx]['exec_time'] = smarty_core_get_microtime($_params, $this) - $_debug_start_time; - require_once(SMARTY_CORE_DIR . 'core.display_debug_console.php'); - $_smarty_results .= smarty_core_display_debug_console($_params, $this); - } - if ($this->cache_modified_check) { - $_server_vars = ($this->request_use_auto_globals) ? $_SERVER : $GLOBALS['HTTP_SERVER_VARS']; - $_last_modified_date = @substr($_server_vars['HTTP_IF_MODIFIED_SINCE'], 0, strpos($_server_vars['HTTP_IF_MODIFIED_SINCE'], 'GMT') + 3); - $_gmt_mtime = gmdate('D, d M Y H:i:s', $this->_cache_info['timestamp']).' GMT'; - if (@count($this->_cache_info['insert_tags']) == 0 - && !$this->_cache_serials - && $_gmt_mtime == $_last_modified_date) { - if (php_sapi_name()=='cgi') - header('Status: 304 Not Modified'); - else - header('HTTP/1.1 304 Not Modified'); - - } else { - header('Last-Modified: '.$_gmt_mtime); - echo $_smarty_results; - } - } else { - echo $_smarty_results; - } - error_reporting($_smarty_old_error_level); - // restore initial cache_info - $this->_cache_info = array_pop($_cache_info); - return true; - } else { - error_reporting($_smarty_old_error_level); - // restore initial cache_info - $this->_cache_info = array_pop($_cache_info); - return $_smarty_results; - } - } else { - $this->_cache_info['template'][$resource_name] = true; - if ($this->cache_modified_check && $display) { - header('Last-Modified: '.gmdate('D, d M Y H:i:s', time()).' GMT'); - } - } - } - - // load filters that are marked as autoload - if (count($this->autoload_filters)) { - foreach ($this->autoload_filters as $_filter_type => $_filters) { - foreach ($_filters as $_filter) { - $this->load_filter($_filter_type, $_filter); - } - } - } - - $_smarty_compile_path = $this->_get_compile_path($resource_name); - - // if we just need to display the results, don't perform output - // buffering - for speed - $_cache_including = $this->_cache_including; - $this->_cache_including = false; - if ($display && !$this->caching && count($this->_plugins['outputfilter']) == 0) { - if ($this->_is_compiled($resource_name, $_smarty_compile_path) - || $this->_compile_resource($resource_name, $_smarty_compile_path)) - { - include($_smarty_compile_path); - } - } else { - ob_start(); - if ($this->_is_compiled($resource_name, $_smarty_compile_path) - || $this->_compile_resource($resource_name, $_smarty_compile_path)) - { - include($_smarty_compile_path); - } - $_smarty_results = ob_get_contents(); - ob_end_clean(); - - foreach ((array)$this->_plugins['outputfilter'] as $_output_filter) { - $_smarty_results = call_user_func_array($_output_filter[0], array($_smarty_results, &$this)); - } - } - - if ($this->caching) { - $_params = array('tpl_file' => $resource_name, - 'cache_id' => $cache_id, - 'compile_id' => $compile_id, - 'results' => $_smarty_results); - require_once(SMARTY_CORE_DIR . 'core.write_cache_file.php'); - smarty_core_write_cache_file($_params, $this); - require_once(SMARTY_CORE_DIR . 'core.process_cached_inserts.php'); - $_smarty_results = smarty_core_process_cached_inserts($_params, $this); - - if ($this->_cache_serials) { - // strip nocache-tags from output - $_smarty_results = preg_replace('!(\{/?nocache\:[0-9a-f]{32}#\d+\})!s' - ,'' - ,$_smarty_results); - } - // restore initial cache_info - $this->_cache_info = array_pop($_cache_info); - } - $this->_cache_including = $_cache_including; - - if ($display) { - if (isset($_smarty_results)) { echo $_smarty_results; } - if ($this->debugging) { - // capture time for debugging info - $_params = array(); - require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); - $this->_smarty_debug_info[$_included_tpls_idx]['exec_time'] = (smarty_core_get_microtime($_params, $this) - $_debug_start_time); - require_once(SMARTY_CORE_DIR . 'core.display_debug_console.php'); - echo smarty_core_display_debug_console($_params, $this); - } - error_reporting($_smarty_old_error_level); - return; - } else { - error_reporting($_smarty_old_error_level); - if (isset($_smarty_results)) { return $_smarty_results; } - } - } - - /** - * load configuration values - * - * @param string $file - * @param string $section - * @param string $scope - */ - function config_load($file, $section = null, $scope = 'global') - { - require_once($this->_get_plugin_filepath('function', 'config_load')); - smarty_function_config_load(array('file' => $file, 'section' => $section, 'scope' => $scope), $this); - } - - /** - * return a reference to a registered object - * - * @param string $name - * @return object - */ - function &get_registered_object($name) { - if (!isset($this->_reg_objects[$name])) - $this->_trigger_fatal_error("'$name' is not a registered object"); - - if (!is_object($this->_reg_objects[$name][0])) - $this->_trigger_fatal_error("registered '$name' is not an object"); - - return $this->_reg_objects[$name][0]; - } - - /** - * clear configuration values - * - * @param string $var - */ - function clear_config($var = null) - { - if(!isset($var)) { - // clear all values - $this->_config = array(array('vars' => array(), - 'files' => array())); - } else { - unset($this->_config[0]['vars'][$var]); - } - } - - /** - * get filepath of requested plugin - * - * @param string $type - * @param string $name - * @return string|false - */ - function _get_plugin_filepath($type, $name) - { - $_params = array('type' => $type, 'name' => $name); - require_once(SMARTY_CORE_DIR . 'core.assemble_plugin_filepath.php'); - return smarty_core_assemble_plugin_filepath($_params, $this); - } - - /** - * test if resource needs compiling - * - * @param string $resource_name - * @param string $compile_path - * @return boolean - */ - function _is_compiled($resource_name, $compile_path) - { - if (!$this->force_compile && file_exists($compile_path)) { - if (!$this->compile_check) { - // no need to check compiled file - return true; - } else { - // get file source and timestamp - $_params = array('resource_name' => $resource_name, 'get_source'=>false); - if (!$this->_fetch_resource_info($_params)) { - return false; - } - if ($_params['resource_timestamp'] <= filemtime($compile_path)) { - // template not expired, no recompile - return true; - } else { - // compile template - return false; - } - } - } else { - // compiled template does not exist, or forced compile - return false; - } - } - - /** - * compile the template - * - * @param string $resource_name - * @param string $compile_path - * @return boolean - */ - function _compile_resource($resource_name, $compile_path) - { - - $_params = array('resource_name' => $resource_name); - if (!$this->_fetch_resource_info($_params)) { - return false; - } - - $_source_content = $_params['source_content']; - $_cache_include = substr($compile_path, 0, -4).'.inc'; - - if ($this->_compile_source($resource_name, $_source_content, $_compiled_content, $_cache_include)) { - // if a _cache_serial was set, we also have to write an include-file: - if ($this->_cache_include_info) { - require_once(SMARTY_CORE_DIR . 'core.write_compiled_include.php'); - smarty_core_write_compiled_include(array_merge($this->_cache_include_info, array('compiled_content'=>$_compiled_content, 'resource_name'=>$resource_name)), $this); - } - - $_params = array('compile_path'=>$compile_path, 'compiled_content' => $_compiled_content); - require_once(SMARTY_CORE_DIR . 'core.write_compiled_resource.php'); - smarty_core_write_compiled_resource($_params, $this); - - return true; - } else { - return false; - } - - } - - /** - * compile the given source - * - * @param string $resource_name - * @param string $source_content - * @param string $compiled_content - * @return boolean - */ - function _compile_source($resource_name, &$source_content, &$compiled_content, $cache_include_path=null) - { - if (file_exists(SMARTY_DIR . $this->compiler_file)) { - require_once(SMARTY_DIR . $this->compiler_file); - } else { - // use include_path - require_once($this->compiler_file); - } - - - $smarty_compiler = new $this->compiler_class; - - $smarty_compiler->template_dir = $this->template_dir; - $smarty_compiler->compile_dir = $this->compile_dir; - $smarty_compiler->plugins_dir = $this->plugins_dir; - $smarty_compiler->config_dir = $this->config_dir; - $smarty_compiler->force_compile = $this->force_compile; - $smarty_compiler->caching = $this->caching; - $smarty_compiler->php_handling = $this->php_handling; - $smarty_compiler->left_delimiter = $this->left_delimiter; - $smarty_compiler->right_delimiter = $this->right_delimiter; - $smarty_compiler->_version = $this->_version; - $smarty_compiler->security = $this->security; - $smarty_compiler->secure_dir = $this->secure_dir; - $smarty_compiler->security_settings = $this->security_settings; - $smarty_compiler->trusted_dir = $this->trusted_dir; - $smarty_compiler->use_sub_dirs = $this->use_sub_dirs; - $smarty_compiler->_reg_objects = &$this->_reg_objects; - $smarty_compiler->_plugins = &$this->_plugins; - $smarty_compiler->_tpl_vars = &$this->_tpl_vars; - $smarty_compiler->default_modifiers = $this->default_modifiers; - $smarty_compiler->compile_id = $this->_compile_id; - $smarty_compiler->_config = $this->_config; - $smarty_compiler->request_use_auto_globals = $this->request_use_auto_globals; - - if (isset($cache_include_path) && isset($this->_cache_serials[$cache_include_path])) { - $smarty_compiler->_cache_serial = $this->_cache_serials[$cache_include_path]; - } - $smarty_compiler->_cache_include = $cache_include_path; - - - $_results = $smarty_compiler->_compile_file($resource_name, $source_content, $compiled_content); - - if ($smarty_compiler->_cache_serial) { - $this->_cache_include_info = array( - 'cache_serial'=>$smarty_compiler->_cache_serial - ,'plugins_code'=>$smarty_compiler->_plugins_code - ,'include_file_path' => $cache_include_path); - - } else { - $this->_cache_include_info = null; - - } - - return $_results; - } - - /** - * Get the compile path for this resource - * - * @param string $resource_name - * @return string results of {@link _get_auto_filename()} - */ - function _get_compile_path($resource_name) - { - return $this->_get_auto_filename($this->compile_dir, $resource_name, - $this->_compile_id) . '.php'; - } - - /** - * fetch the template info. Gets timestamp, and source - * if get_source is true - * - * sets $source_content to the source of the template, and - * $resource_timestamp to its time stamp - * @param string $resource_name - * @param string $source_content - * @param integer $resource_timestamp - * @param boolean $get_source - * @param boolean $quiet - * @return boolean - */ - - function _fetch_resource_info(&$params) - { - if(!isset($params['get_source'])) { $params['get_source'] = true; } - if(!isset($params['quiet'])) { $params['quiet'] = false; } - - $_return = false; - $_params = array('resource_name' => $params['resource_name']) ; - if (isset($params['resource_base_path'])) - $_params['resource_base_path'] = $params['resource_base_path']; - else - $_params['resource_base_path'] = $this->template_dir; - - if ($this->_parse_resource_name($_params)) { - $_resource_type = $_params['resource_type']; - $_resource_name = $_params['resource_name']; - switch ($_resource_type) { - case 'file': - if ($params['get_source']) { - $params['source_content'] = $this->_read_file($_resource_name); - } - $params['resource_timestamp'] = filemtime($_resource_name); - $_return = is_file($_resource_name); - break; - - default: - // call resource functions to fetch the template source and timestamp - if ($params['get_source']) { - $_source_return = isset($this->_plugins['resource'][$_resource_type]) && - call_user_func_array($this->_plugins['resource'][$_resource_type][0][0], - array($_resource_name, &$params['source_content'], &$this)); - } else { - $_source_return = true; - } - - $_timestamp_return = isset($this->_plugins['resource'][$_resource_type]) && - call_user_func_array($this->_plugins['resource'][$_resource_type][0][1], - array($_resource_name, &$params['resource_timestamp'], &$this)); - - $_return = $_source_return && $_timestamp_return; - break; - } - } - - if (!$_return) { - // see if we can get a template with the default template handler - if (!empty($this->default_template_handler_func)) { - if (!is_callable($this->default_template_handler_func)) { - $this->trigger_error("default template handler function \"$this->default_template_handler_func\" doesn't exist."); - } else { - $_return = call_user_func_array( - $this->default_template_handler_func, - array($_params['resource_type'], $_params['resource_name'], &$params['source_content'], &$params['resource_timestamp'], &$this)); - } - } - } - - if (!$_return) { - if (!$params['quiet']) { - $this->trigger_error('unable to read resource: "' . $params['resource_name'] . '"'); - } - } else if ($_return && $this->security) { - require_once(SMARTY_CORE_DIR . 'core.is_secure.php'); - if (!smarty_core_is_secure($_params, $this)) { - if (!$params['quiet']) - $this->trigger_error('(secure mode) accessing "' . $params['resource_name'] . '" is not allowed'); - $params['source_content'] = null; - $params['resource_timestamp'] = null; - return false; - } - } - return $_return; - } - - - /** - * parse out the type and name from the resource - * - * @param string $resource_base_path - * @param string $resource_name - * @param string $resource_type - * @param string $resource_name - * @return boolean - */ - - function _parse_resource_name(&$params) - { - - // split tpl_path by the first colon - $_resource_name_parts = explode(':', $params['resource_name'], 2); - - if (count($_resource_name_parts) == 1) { - // no resource type given - $params['resource_type'] = $this->default_resource_type; - $params['resource_name'] = $_resource_name_parts[0]; - } else { - if(strlen($_resource_name_parts[0]) == 1) { - // 1 char is not resource type, but part of filepath - $params['resource_type'] = $this->default_resource_type; - $params['resource_name'] = $params['resource_name']; - } else { - $params['resource_type'] = $_resource_name_parts[0]; - $params['resource_name'] = $_resource_name_parts[1]; - } - } - - if ($params['resource_type'] == 'file') { - if (!preg_match('/^([\/\\\\]|[a-zA-Z]:[\/\\\\])/', $params['resource_name'])) { - // relative pathname to $params['resource_base_path'] - // use the first directory where the file is found - foreach ((array)$params['resource_base_path'] as $_curr_path) { - $_fullpath = $_curr_path . DIRECTORY_SEPARATOR . $params['resource_name']; - if (file_exists($_fullpath) && is_file($_fullpath)) { - $params['resource_name'] = $_fullpath; - return true; - } - // didn't find the file, try include_path - $_params = array('file_path' => $_fullpath); - require_once(SMARTY_CORE_DIR . 'core.get_include_path.php'); - if(smarty_core_get_include_path($_params, $this)) { - $params['resource_name'] = $_params['new_file_path']; - return true; - } - } - return false; - } else { - /* absolute path */ - return file_exists($params['resource_name']); - } - } elseif (empty($this->_plugins['resource'][$params['resource_type']])) { - $_params = array('type' => $params['resource_type']); - require_once(SMARTY_CORE_DIR . 'core.load_resource_plugin.php'); - smarty_core_load_resource_plugin($_params, $this); - } - - return true; - } - - - /** - * Handle modifiers - * - * @param string|null $modifier_name - * @param array|null $map_array - * @return string result of modifiers - */ - function _run_mod_handler() - { - $_args = func_get_args(); - list($_modifier_name, $_map_array) = array_splice($_args, 0, 2); - list($_func_name, $_tpl_file, $_tpl_line) = - $this->_plugins['modifier'][$_modifier_name]; - - $_var = $_args[0]; - foreach ($_var as $_key => $_val) { - $_args[0] = $_val; - $_var[$_key] = call_user_func_array($_func_name, $_args); - } - return $_var; - } - - /** - * Remove starting and ending quotes from the string - * - * @param string $string - * @return string - */ - function _dequote($string) - { - if (($string{0} == "'" || $string{0} == '"') && - $string{strlen($string)-1} == $string{0}) - return substr($string, 1, -1); - else - return $string; - } - - - /** - * read in a file from line $start for $lines. - * read the entire file if $start and $lines are null. - * - * @param string $filename - * @param integer $start - * @param integer $lines - * @return string - */ - function _read_file($filename) - { - if ( file_exists($filename) && ($fd = @fopen($filename, 'rb')) ) { - $contents = ($size = filesize($filename)) ? fread($fd, $size) : ''; - fclose($fd); - return $contents; - } else { - return false; - } - } - - /** - * get a concrete filename for automagically created content - * - * @param string $auto_base - * @param string $auto_source - * @param string $auto_id - * @return string - * @staticvar string|null - * @staticvar string|null - */ - function _get_auto_filename($auto_base, $auto_source = null, $auto_id = null) - { - $_compile_dir_sep = $this->use_sub_dirs ? DIRECTORY_SEPARATOR : '^'; - $_return = $auto_base . DIRECTORY_SEPARATOR; - - if(isset($auto_id)) { - // make auto_id safe for directory names - $auto_id = str_replace('%7C',$_compile_dir_sep,(urlencode($auto_id))); - // split into separate directories - $_return .= $auto_id . $_compile_dir_sep; - } - - if(isset($auto_source)) { - // make source name safe for filename - $_filename = urlencode(basename($auto_source)); - $_crc32 = sprintf('%08X', crc32($auto_source)); - // prepend %% to avoid name conflicts with - // with $params['auto_id'] names - $_crc32 = substr($_crc32, 0, 2) . $_compile_dir_sep . - substr($_crc32, 0, 3) . $_compile_dir_sep . $_crc32; - $_return .= '%%' . $_crc32 . '%%' . $_filename; - } - - return $_return; - } - - /** - * unlink a file, possibly using expiration time - * - * @param string $resource - * @param integer $exp_time - */ - function _unlink($resource, $exp_time = null) - { - if(isset($exp_time)) { - if(time() - @filemtime($resource) >= $exp_time) { - return @unlink($resource); - } - } else { - return @unlink($resource); - } - } - - /** - * returns an auto_id for auto-file-functions - * - * @param string $cache_id - * @param string $compile_id - * @return string|null - */ - function _get_auto_id($cache_id=null, $compile_id=null) { - if (isset($cache_id)) - return (isset($compile_id)) ? $cache_id . '|' . $compile_id : $cache_id; - elseif(isset($compile_id)) - return $compile_id; - else - return null; - } - - /** - * trigger Smarty plugin error - * - * @param string $error_msg - * @param string $tpl_file - * @param integer $tpl_line - * @param string $file - * @param integer $line - * @param integer $error_type - */ - function _trigger_fatal_error($error_msg, $tpl_file = null, $tpl_line = null, - $file = null, $line = null, $error_type = E_USER_ERROR) - { - if(isset($file) && isset($line)) { - $info = ' ('.basename($file).", line $line)"; - } else { - $info = ''; - } - if (isset($tpl_line) && isset($tpl_file)) { - $this->trigger_error('[in ' . $tpl_file . ' line ' . $tpl_line . "]: $error_msg$info", $error_type); - } else { - $this->trigger_error($error_msg . $info, $error_type); - } - } - - - /** - * callback function for preg_replace, to call a non-cacheable block - * @return string - */ - function _process_compiled_include_callback($match) { - $_func = '_smarty_tplfunc_'.$match[2].'_'.$match[3]; - ob_start(); - $_func($this); - $_ret = ob_get_contents(); - ob_end_clean(); - return $_ret; - } - - - /** - * called for included templates - * - * @param string $_smarty_include_tpl_file - * @param string $_smarty_include_vars - */ - - // $_smarty_include_tpl_file, $_smarty_include_vars - - function _smarty_include($params) - { - if ($this->debugging) { - $_params = array(); - require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); - $debug_start_time = smarty_core_get_microtime($_params, $this); - $this->_smarty_debug_info[] = array('type' => 'template', - 'filename' => $params['smarty_include_tpl_file'], - 'depth' => ++$this->_inclusion_depth); - $included_tpls_idx = count($this->_smarty_debug_info) - 1; - } - - $this->_tpl_vars = array_merge($this->_tpl_vars, $params['smarty_include_vars']); - - // config vars are treated as local, so push a copy of the - // current ones onto the front of the stack - array_unshift($this->_config, $this->_config[0]); - - $_smarty_compile_path = $this->_get_compile_path($params['smarty_include_tpl_file']); - - - if ($this->_is_compiled($params['smarty_include_tpl_file'], $_smarty_compile_path) - || $this->_compile_resource($params['smarty_include_tpl_file'], $_smarty_compile_path)) - { - include($_smarty_compile_path); - } - - // pop the local vars off the front of the stack - array_shift($this->_config); - - $this->_inclusion_depth--; - - if ($this->debugging) { - // capture time for debugging info - $_params = array(); - require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); - $this->_smarty_debug_info[$included_tpls_idx]['exec_time'] = smarty_core_get_microtime($_params, $this) - $debug_start_time; - } - - if ($this->caching) { - $this->_cache_info['template'][$params['smarty_include_tpl_file']] = true; - } - } - - - /** - * get or set an array of cached attributes for function that is - * not cacheable - * @return array - */ - function &_smarty_cache_attrs($cache_serial, $count) { - $_cache_attrs =& $this->_cache_info['cache_attrs'][$cache_serial][$count]; - - if ($this->_cache_including) { - /* return next set of cache_attrs */ - $_return =& current($_cache_attrs); - next($_cache_attrs); - return $_return; - - } else { - /* add a reference to a new set of cache_attrs */ - $_cache_attrs[] = array(); - return $_cache_attrs[count($_cache_attrs)-1]; - - } - - } - - - /** - * wrapper for include() retaining $this - * @return mixed - */ - function _include($filename, $once=false, $params=null) - { - if ($once) { - return include_once($filename); - } else { - return include($filename); - } - } - - - /** - * wrapper for eval() retaining $this - * @return mixed - */ - function _eval($code, $params=null) - { - return eval($code); - } - /**#@-*/ - -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/Smarty_Compiler.class.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/Smarty_Compiler.class.php deleted file mode 100644 index c9eabd0d1..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/Smarty_Compiler.class.php +++ /dev/null @@ -1,2258 +0,0 @@ -<?php - -/** - * Project: Smarty: the PHP compiling template engine - * File: Smarty_Compiler.class.php - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * @link http://smarty.php.net/ - * @author Monte Ohrt <monte@ispi.net> - * @author Andrei Zmievski <andrei@php.net> - * @version 2.6.6 - * @copyright 2001-2004 ispi of Lincoln, Inc. - * @package Smarty - */ - -/* $Id: Smarty_Compiler.class.php,v 1.5 2005/02/10 14:03:50 sebastian Exp $ */ - -/** - * Template compiling class - * @package Smarty - */ -class Smarty_Compiler extends Smarty { - - // internal vars - /**#@+ - * @access private - */ - var $_folded_blocks = array(); // keeps folded template blocks - var $_current_file = null; // the current template being compiled - var $_current_line_no = 1; // line number for error messages - var $_capture_stack = array(); // keeps track of nested capture buffers - var $_plugin_info = array(); // keeps track of plugins to load - var $_init_smarty_vars = false; - var $_permitted_tokens = array('true','false','yes','no','on','off','null'); - var $_db_qstr_regexp = null; // regexps are setup in the constructor - var $_si_qstr_regexp = null; - var $_qstr_regexp = null; - var $_func_regexp = null; - var $_reg_obj_regexp = null; - var $_var_bracket_regexp = null; - var $_num_const_regexp = null; - var $_dvar_guts_regexp = null; - var $_dvar_regexp = null; - var $_cvar_regexp = null; - var $_svar_regexp = null; - var $_avar_regexp = null; - var $_mod_regexp = null; - var $_var_regexp = null; - var $_parenth_param_regexp = null; - var $_func_call_regexp = null; - var $_obj_ext_regexp = null; - var $_obj_start_regexp = null; - var $_obj_params_regexp = null; - var $_obj_call_regexp = null; - var $_cacheable_state = 0; - var $_cache_attrs_count = 0; - var $_nocache_count = 0; - var $_cache_serial = null; - var $_cache_include = null; - - var $_strip_depth = 0; - var $_additional_newline = "\n"; - - /**#@-*/ - /** - * The class constructor. - */ - function Smarty_Compiler() - { - // matches double quoted strings: - // "foobar" - // "foo\"bar" - $this->_db_qstr_regexp = '"[^"\\\\]*(?:\\\\.[^"\\\\]*)*"'; - - // matches single quoted strings: - // 'foobar' - // 'foo\'bar' - $this->_si_qstr_regexp = '\'[^\'\\\\]*(?:\\\\.[^\'\\\\]*)*\''; - - // matches single or double quoted strings - $this->_qstr_regexp = '(?:' . $this->_db_qstr_regexp . '|' . $this->_si_qstr_regexp . ')'; - - // matches bracket portion of vars - // [0] - // [foo] - // [$bar] - $this->_var_bracket_regexp = '\[\$?[\w\.]+\]'; - - // matches numerical constants - // 30 - // -12 - // 13.22 - $this->_num_const_regexp = '(?:\-?\d+(?:\.\d+)?)'; - - // matches $ vars (not objects): - // $foo - // $foo.bar - // $foo.bar.foobar - // $foo[0] - // $foo[$bar] - // $foo[5][blah] - // $foo[5].bar[$foobar][4] - $this->_dvar_math_regexp = '(?:[\+\*\/\%]|(?:-(?!>)))'; - $this->_dvar_math_var_regexp = '[\$\w\.\+\-\*\/\%\d\>\[\]]'; - $this->_dvar_guts_regexp = '\w+(?:' . $this->_var_bracket_regexp - . ')*(?:\.\$?\w+(?:' . $this->_var_bracket_regexp . ')*)*(?:' . $this->_dvar_math_regexp . '(?:' . $this->_num_const_regexp . '|' . $this->_dvar_math_var_regexp . ')*)?'; - $this->_dvar_regexp = '\$' . $this->_dvar_guts_regexp; - - // matches config vars: - // #foo# - // #foobar123_foo# - $this->_cvar_regexp = '\#\w+\#'; - - // matches section vars: - // %foo.bar% - $this->_svar_regexp = '\%\w+\.\w+\%'; - - // matches all valid variables (no quotes, no modifiers) - $this->_avar_regexp = '(?:' . $this->_dvar_regexp . '|' - . $this->_cvar_regexp . '|' . $this->_svar_regexp . ')'; - - // matches valid variable syntax: - // $foo - // $foo - // #foo# - // #foo# - // "text" - // "text" - $this->_var_regexp = '(?:' . $this->_avar_regexp . '|' . $this->_qstr_regexp . ')'; - - // matches valid object call (one level of object nesting allowed in parameters): - // $foo->bar - // $foo->bar() - // $foo->bar("text") - // $foo->bar($foo, $bar, "text") - // $foo->bar($foo, "foo") - // $foo->bar->foo() - // $foo->bar->foo->bar() - // $foo->bar($foo->bar) - // $foo->bar($foo->bar()) - // $foo->bar($foo->bar($blah,$foo,44,"foo",$foo[0].bar)) - $this->_obj_ext_regexp = '\->(?:\$?' . $this->_dvar_guts_regexp . ')'; - $this->_obj_restricted_param_regexp = '(?:' - . '(?:' . $this->_var_regexp . '|' . $this->_num_const_regexp . ')(?:' . $this->_obj_ext_regexp . '(?:\((?:(?:' . $this->_var_regexp . '|' . $this->_num_const_regexp . ')' - . '(?:\s*,\s*(?:' . $this->_var_regexp . '|' . $this->_num_const_regexp . '))*)?\))?)*)'; - $this->_obj_single_param_regexp = '(?:\w+|' . $this->_obj_restricted_param_regexp . '(?:\s*,\s*(?:(?:\w+|' - . $this->_var_regexp . $this->_obj_restricted_param_regexp . ')))*)'; - $this->_obj_params_regexp = '\((?:' . $this->_obj_single_param_regexp - . '(?:\s*,\s*' . $this->_obj_single_param_regexp . ')*)?\)'; - $this->_obj_start_regexp = '(?:' . $this->_dvar_regexp . '(?:' . $this->_obj_ext_regexp . ')+)'; - $this->_obj_call_regexp = '(?:' . $this->_obj_start_regexp . '(?:' . $this->_obj_params_regexp . ')?(?:' . $this->_dvar_math_regexp . '(?:' . $this->_num_const_regexp . '|' . $this->_dvar_math_var_regexp . ')*)?)'; - - // matches valid modifier syntax: - // |foo - // |@foo - // |foo:"bar" - // |foo:$bar - // |foo:"bar":$foobar - // |foo|bar - // |foo:$foo->bar - $this->_mod_regexp = '(?:\|@?\w+(?::(?:\w+|' . $this->_num_const_regexp . '|' - . $this->_obj_call_regexp . '|' . $this->_avar_regexp . '|' . $this->_qstr_regexp .'))*)'; - - // matches valid function name: - // foo123 - // _foo_bar - $this->_func_regexp = '[a-zA-Z_]\w*'; - - // matches valid registered object: - // foo->bar - $this->_reg_obj_regexp = '[a-zA-Z_]\w*->[a-zA-Z_]\w*'; - - // matches valid parameter values: - // true - // $foo - // $foo|bar - // #foo# - // #foo#|bar - // "text" - // "text"|bar - // $foo->bar - $this->_param_regexp = '(?:\s*(?:' . $this->_obj_call_regexp . '|' - . $this->_var_regexp . '|' . $this->_num_const_regexp . '|\w+)(?>' . $this->_mod_regexp . '*)\s*)'; - - // matches valid parenthesised function parameters: - // - // "text" - // $foo, $bar, "text" - // $foo|bar, "foo"|bar, $foo->bar($foo)|bar - $this->_parenth_param_regexp = '(?:\((?:\w+|' - . $this->_param_regexp . '(?:\s*,\s*(?:(?:\w+|' - . $this->_param_regexp . ')))*)?\))'; - - // matches valid function call: - // foo() - // foo_bar($foo) - // _foo_bar($foo,"bar") - // foo123($foo,$foo->bar(),"foo") - $this->_func_call_regexp = '(?:' . $this->_func_regexp . '\s*(?:' - . $this->_parenth_param_regexp . '))'; - } - - /** - * compile a resource - * - * sets $compiled_content to the compiled source - * @param string $resource_name - * @param string $source_content - * @param string $compiled_content - * @return true - */ - function _compile_file($resource_name, $source_content, &$compiled_content) - { - - if ($this->security) { - // do not allow php syntax to be executed unless specified - if ($this->php_handling == SMARTY_PHP_ALLOW && - !$this->security_settings['PHP_HANDLING']) { - $this->php_handling = SMARTY_PHP_PASSTHRU; - } - } - - $this->_load_filters(); - - $this->_current_file = $resource_name; - $this->_current_line_no = 1; - $ldq = preg_quote($this->left_delimiter, '~'); - $rdq = preg_quote($this->right_delimiter, '~'); - - // run template source through prefilter functions - if (count($this->_plugins['prefilter']) > 0) { - foreach ($this->_plugins['prefilter'] as $filter_name => $prefilter) { - if ($prefilter === false) continue; - if ($prefilter[3] || is_callable($prefilter[0])) { - $source_content = call_user_func_array($prefilter[0], - array($source_content, &$this)); - $this->_plugins['prefilter'][$filter_name][3] = true; - } else { - $this->_trigger_fatal_error("[plugin] prefilter '$filter_name' is not implemented"); - } - } - } - - /* fetch all special blocks */ - $search = "~{$ldq}\*(.*?)\*{$rdq}|{$ldq}\s*literal\s*{$rdq}(.*?){$ldq}\s*/literal\s*{$rdq}|{$ldq}\s*php\s*{$rdq}(.*?){$ldq}\s*/php\s*{$rdq}~s"; - - preg_match_all($search, $source_content, $match, PREG_SET_ORDER); - $this->_folded_blocks = $match; - reset($this->_folded_blocks); - - /* replace special blocks by "{php}" */ - $source_content = preg_replace($search.'e', "'" - . $this->_quote_replace($this->left_delimiter) . 'php' - . "' . str_repeat(\"\n\", substr_count('\\0', \"\n\")) .'" - . $this->_quote_replace($this->right_delimiter) - . "'" - , $source_content); - - /* Gather all template tags. */ - preg_match_all("~{$ldq}\s*(.*?)\s*{$rdq}~s", $source_content, $_match); - $template_tags = $_match[1]; - /* Split content by template tags to obtain non-template content. */ - $text_blocks = preg_split("~{$ldq}.*?{$rdq}~s", $source_content); - - /* loop through text blocks */ - for ($curr_tb = 0, $for_max = count($text_blocks); $curr_tb < $for_max; $curr_tb++) { - /* match anything resembling php tags */ - if (preg_match_all('~(<\?(?:\w+|=)?|\?>|language\s*=\s*[\"\']?php[\"\']?)~is', $text_blocks[$curr_tb], $sp_match)) { - /* replace tags with placeholders to prevent recursive replacements */ - $sp_match[1] = array_unique($sp_match[1]); - usort($sp_match[1], '_smarty_sort_length'); - for ($curr_sp = 0, $for_max2 = count($sp_match[1]); $curr_sp < $for_max2; $curr_sp++) { - $text_blocks[$curr_tb] = str_replace($sp_match[1][$curr_sp],'%%%SMARTYSP'.$curr_sp.'%%%',$text_blocks[$curr_tb]); - } - /* process each one */ - for ($curr_sp = 0, $for_max2 = count($sp_match[1]); $curr_sp < $for_max2; $curr_sp++) { - if ($this->php_handling == SMARTY_PHP_PASSTHRU) { - /* echo php contents */ - $text_blocks[$curr_tb] = str_replace('%%%SMARTYSP'.$curr_sp.'%%%', '<?php echo \''.str_replace("'", "\'", $sp_match[1][$curr_sp]).'\'; ?>'."\n", $text_blocks[$curr_tb]); - } else if ($this->php_handling == SMARTY_PHP_QUOTE) { - /* quote php tags */ - $text_blocks[$curr_tb] = str_replace('%%%SMARTYSP'.$curr_sp.'%%%', htmlspecialchars($sp_match[1][$curr_sp]), $text_blocks[$curr_tb]); - } else if ($this->php_handling == SMARTY_PHP_REMOVE) { - /* remove php tags */ - $text_blocks[$curr_tb] = str_replace('%%%SMARTYSP'.$curr_sp.'%%%', '', $text_blocks[$curr_tb]); - } else { - /* SMARTY_PHP_ALLOW, but echo non php starting tags */ - $sp_match[1][$curr_sp] = preg_replace('~(<\?(?!php|=|$))~i', '<?php echo \'\\1\'?>'."\n", $sp_match[1][$curr_sp]); - $text_blocks[$curr_tb] = str_replace('%%%SMARTYSP'.$curr_sp.'%%%', $sp_match[1][$curr_sp], $text_blocks[$curr_tb]); - } - } - } - } - - /* Compile the template tags into PHP code. */ - $compiled_tags = array(); - for ($i = 0, $for_max = count($template_tags); $i < $for_max; $i++) { - $this->_current_line_no += substr_count($text_blocks[$i], "\n"); - $compiled_tags[] = $this->_compile_tag($template_tags[$i]); - $this->_current_line_no += substr_count($template_tags[$i], "\n"); - } - if (count($this->_tag_stack)>0) { - list($_open_tag, $_line_no) = end($this->_tag_stack); - $this->_syntax_error("unclosed tag \{$_open_tag} (opened line $_line_no).", E_USER_ERROR, __FILE__, __LINE__); - return; - } - - $compiled_content = ''; - - /* Interleave the compiled contents and text blocks to get the final result. */ - for ($i = 0, $for_max = count($compiled_tags); $i < $for_max; $i++) { - if ($compiled_tags[$i] == '') { - // tag result empty, remove first newline from following text block - $text_blocks[$i+1] = preg_replace('~^(\r\n|\r|\n)~', '', $text_blocks[$i+1]); - } - $compiled_content .= $text_blocks[$i].$compiled_tags[$i]; - } - $compiled_content .= $text_blocks[$i]; - - /* Reformat data between 'strip' and '/strip' tags, removing spaces, tabs and newlines. */ - if (preg_match_all("~{$ldq}strip{$rdq}.*?{$ldq}/strip{$rdq}~s", $compiled_content, $_match)) { - $strip_tags = $_match[0]; - $strip_tags_modified = preg_replace("~{$ldq}/?strip{$rdq}|[\t ]+$|^[\t ]+~m", '', $strip_tags); - $strip_tags_modified = preg_replace('~[\r\n]+~m', '', $strip_tags_modified); - for ($i = 0, $for_max = count($strip_tags); $i < $for_max; $i++) - $compiled_content = preg_replace("~{$ldq}strip{$rdq}.*?{$ldq}/strip{$rdq}~s", - $this->_quote_replace($strip_tags_modified[$i]), - $compiled_content, 1); - } - - // remove \n from the end of the file, if any - if (($_len=strlen($compiled_content)) && ($compiled_content{$_len - 1} == "\n" )) { - $compiled_content = substr($compiled_content, 0, -1); - } - - if (!empty($this->_cache_serial)) { - $compiled_content = "<?php \$this->_cache_serials['".$this->_cache_include."'] = '".$this->_cache_serial."'; ?>" . $compiled_content; - } - - // remove unnecessary close/open tags - $compiled_content = preg_replace('~\?>\n?<\?php~', '', $compiled_content); - - // run compiled template through postfilter functions - if (count($this->_plugins['postfilter']) > 0) { - foreach ($this->_plugins['postfilter'] as $filter_name => $postfilter) { - if ($postfilter === false) continue; - if ($postfilter[3] || is_callable($postfilter[0])) { - $compiled_content = call_user_func_array($postfilter[0], - array($compiled_content, &$this)); - $this->_plugins['postfilter'][$filter_name][3] = true; - } else { - $this->_trigger_fatal_error("Smarty plugin error: postfilter '$filter_name' is not implemented"); - } - } - } - - // put header at the top of the compiled template - $template_header = "<?php /* Smarty version ".$this->_version.", created on ".strftime("%Y-%m-%d %H:%M:%S")."\n"; - $template_header .= " compiled from ".strtr(urlencode($resource_name), array('%2F'=>'/', '%3A'=>':'))." */ ?>\n"; - - /* Emit code to load needed plugins. */ - $this->_plugins_code = ''; - if (count($this->_plugin_info)) { - $_plugins_params = "array('plugins' => array("; - foreach ($this->_plugin_info as $plugin_type => $plugins) { - foreach ($plugins as $plugin_name => $plugin_info) { - $_plugins_params .= "array('$plugin_type', '$plugin_name', '$plugin_info[0]', $plugin_info[1], "; - $_plugins_params .= $plugin_info[2] ? 'true),' : 'false),'; - } - } - $_plugins_params .= '))'; - $plugins_code = "<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');\nsmarty_core_load_plugins($_plugins_params, \$this); ?>\n"; - $template_header .= $plugins_code; - $this->_plugin_info = array(); - $this->_plugins_code = $plugins_code; - } - - if ($this->_init_smarty_vars) { - $template_header .= "<?php require_once(SMARTY_CORE_DIR . 'core.assign_smarty_interface.php');\nsmarty_core_assign_smarty_interface(null, \$this); ?>\n"; - $this->_init_smarty_vars = false; - } - - $compiled_content = $template_header . $compiled_content; - return true; - } - - /** - * Compile a template tag - * - * @param string $template_tag - * @return string - */ - function _compile_tag($template_tag) - { - /* Matched comment. */ - if ($template_tag{0} == '*' && $template_tag{strlen($template_tag) - 1} == '*') - return ''; - - /* Split tag into two three parts: command, command modifiers and the arguments. */ - if(! preg_match('~^(?:(' . $this->_num_const_regexp . '|' . $this->_obj_call_regexp . '|' . $this->_var_regexp - . '|\/?' . $this->_reg_obj_regexp . '|\/?' . $this->_func_regexp . ')(' . $this->_mod_regexp . '*)) - (?:\s+(.*))?$ - ~xs', $template_tag, $match)) { - $this->_syntax_error("unrecognized tag: $template_tag", E_USER_ERROR, __FILE__, __LINE__); - } - - $tag_command = $match[1]; - $tag_modifier = isset($match[2]) ? $match[2] : null; - $tag_args = isset($match[3]) ? $match[3] : null; - - if (preg_match('~^' . $this->_num_const_regexp . '|' . $this->_obj_call_regexp . '|' . $this->_var_regexp . '$~', $tag_command)) { - /* tag name is a variable or object */ - $_return = $this->_parse_var_props($tag_command . $tag_modifier, $this->_parse_attrs($tag_args)); - if(isset($_tag_attrs['assign'])) { - return "<?php \$this->assign('" . $this->_dequote($_tag_attrs['assign']) . "', $_return ); ?>\n"; - } else { - return "<?php echo $_return; ?>" . $this->_additional_newline; - } - } - - /* If the tag name is a registered object, we process it. */ - if (preg_match('~^\/?' . $this->_reg_obj_regexp . '$~', $tag_command)) { - return $this->_compile_registered_object_tag($tag_command, $this->_parse_attrs($tag_args), $tag_modifier); - } - - switch ($tag_command) { - case 'include': - return $this->_compile_include_tag($tag_args); - - case 'include_php': - return $this->_compile_include_php_tag($tag_args); - - case 'if': - $this->_push_tag('if'); - return $this->_compile_if_tag($tag_args); - - case 'else': - list($_open_tag) = end($this->_tag_stack); - if ($_open_tag != 'if' && $_open_tag != 'elseif') - $this->_syntax_error('unexpected {else}', E_USER_ERROR, __FILE__, __LINE__); - else - $this->_push_tag('else'); - return '<?php else: ?>'; - - case 'elseif': - list($_open_tag) = end($this->_tag_stack); - if ($_open_tag != 'if' && $_open_tag != 'elseif') - $this->_syntax_error('unexpected {elseif}', E_USER_ERROR, __FILE__, __LINE__); - if ($_open_tag == 'if') - $this->_push_tag('elseif'); - return $this->_compile_if_tag($tag_args, true); - - case '/if': - $this->_pop_tag('if'); - return '<?php endif; ?>'; - - case 'capture': - return $this->_compile_capture_tag(true, $tag_args); - - case '/capture': - return $this->_compile_capture_tag(false); - - case 'ldelim': - return $this->left_delimiter; - - case 'rdelim': - return $this->right_delimiter; - - case 'section': - $this->_push_tag('section'); - return $this->_compile_section_start($tag_args); - - case 'sectionelse': - $this->_push_tag('sectionelse'); - return "<?php endfor; else: ?>"; - break; - - case '/section': - $_open_tag = $this->_pop_tag('section'); - if ($_open_tag == 'sectionelse') - return "<?php endif; ?>"; - else - return "<?php endfor; endif; ?>"; - - case 'foreach': - $this->_push_tag('foreach'); - return $this->_compile_foreach_start($tag_args); - break; - - case 'foreachelse': - $this->_push_tag('foreachelse'); - return "<?php endforeach; unset(\$_from); else: ?>"; - - case '/foreach': - $_open_tag = $this->_pop_tag('foreach'); - if ($_open_tag == 'foreachelse') - return "<?php endif; ?>"; - else - return "<?php endforeach; unset(\$_from); endif; ?>"; - break; - - case 'strip': - case '/strip': - if ($tag_command{0}=='/') { - $this->_pop_tag('strip'); - if (--$this->_strip_depth==0) { /* outermost closing {/strip} */ - $this->_additional_newline = "\n"; - return $this->left_delimiter.$tag_command.$this->right_delimiter; - } - } else { - $this->_push_tag('strip'); - if ($this->_strip_depth++==0) { /* outermost opening {strip} */ - $this->_additional_newline = ""; - return $this->left_delimiter.$tag_command.$this->right_delimiter; - } - } - return ''; - - case 'php': - /* handle folded tags replaced by {php} */ - list(, $block) = each($this->_folded_blocks); - $this->_current_line_no += substr_count($block[0], "\n"); - /* the number of matched elements in the regexp in _compile_file() - determins the type of folded tag that was found */ - switch (count($block)) { - case 2: /* comment */ - return ''; - - case 3: /* literal */ - return "<?php echo '" . strtr($block[2], array("'"=>"\'", "\\"=>"\\\\")) . "'; ?>" . $this->_additional_newline; - - case 4: /* php */ - if ($this->security && !$this->security_settings['PHP_TAGS']) { - $this->_syntax_error("(secure mode) php tags not permitted", E_USER_WARNING, __FILE__, __LINE__); - return; - } - return '<?php ' . $block[3] .' ?>'; - } - break; - - case 'insert': - return $this->_compile_insert_tag($tag_args); - - default: - if ($this->_compile_compiler_tag($tag_command, $tag_args, $output)) { - return $output; - } else if ($this->_compile_block_tag($tag_command, $tag_args, $tag_modifier, $output)) { - return $output; - } else if ($this->_compile_custom_tag($tag_command, $tag_args, $tag_modifier, $output)) { - return $output; - } else { - $this->_syntax_error("unrecognized tag '$tag_command'", E_USER_ERROR, __FILE__, __LINE__); - } - - } - } - - - /** - * compile the custom compiler tag - * - * sets $output to the compiled custom compiler tag - * @param string $tag_command - * @param string $tag_args - * @param string $output - * @return boolean - */ - function _compile_compiler_tag($tag_command, $tag_args, &$output) - { - $found = false; - $have_function = true; - - /* - * First we check if the compiler function has already been registered - * or loaded from a plugin file. - */ - if (isset($this->_plugins['compiler'][$tag_command])) { - $found = true; - $plugin_func = $this->_plugins['compiler'][$tag_command][0]; - if (!is_callable($plugin_func)) { - $message = "compiler function '$tag_command' is not implemented"; - $have_function = false; - } - } - /* - * Otherwise we need to load plugin file and look for the function - * inside it. - */ - else if ($plugin_file = $this->_get_plugin_filepath('compiler', $tag_command)) { - $found = true; - - include_once $plugin_file; - - $plugin_func = 'smarty_compiler_' . $tag_command; - if (!is_callable($plugin_func)) { - $message = "plugin function $plugin_func() not found in $plugin_file\n"; - $have_function = false; - } else { - $this->_plugins['compiler'][$tag_command] = array($plugin_func, null, null, null, true); - } - } - - /* - * True return value means that we either found a plugin or a - * dynamically registered function. False means that we didn't and the - * compiler should now emit code to load custom function plugin for this - * tag. - */ - if ($found) { - if ($have_function) { - $output = call_user_func_array($plugin_func, array($tag_args, &$this)); - if($output != '') { - $output = '<?php ' . $this->_push_cacheable_state('compiler', $tag_command) - . $output - . $this->_pop_cacheable_state('compiler', $tag_command) . ' ?>'; - } - } else { - $this->_syntax_error($message, E_USER_WARNING, __FILE__, __LINE__); - } - return true; - } else { - return false; - } - } - - - /** - * compile block function tag - * - * sets $output to compiled block function tag - * @param string $tag_command - * @param string $tag_args - * @param string $tag_modifier - * @param string $output - * @return boolean - */ - function _compile_block_tag($tag_command, $tag_args, $tag_modifier, &$output) - { - if ($tag_command{0} == '/') { - $start_tag = false; - $tag_command = substr($tag_command, 1); - } else - $start_tag = true; - - $found = false; - $have_function = true; - - /* - * First we check if the block function has already been registered - * or loaded from a plugin file. - */ - if (isset($this->_plugins['block'][$tag_command])) { - $found = true; - $plugin_func = $this->_plugins['block'][$tag_command][0]; - if (!is_callable($plugin_func)) { - $message = "block function '$tag_command' is not implemented"; - $have_function = false; - } - } - /* - * Otherwise we need to load plugin file and look for the function - * inside it. - */ - else if ($plugin_file = $this->_get_plugin_filepath('block', $tag_command)) { - $found = true; - - include_once $plugin_file; - - $plugin_func = 'smarty_block_' . $tag_command; - if (!function_exists($plugin_func)) { - $message = "plugin function $plugin_func() not found in $plugin_file\n"; - $have_function = false; - } else { - $this->_plugins['block'][$tag_command] = array($plugin_func, null, null, null, true); - - } - } - - if (!$found) { - return false; - } else if (!$have_function) { - $this->_syntax_error($message, E_USER_WARNING, __FILE__, __LINE__); - return true; - } - - /* - * Even though we've located the plugin function, compilation - * happens only once, so the plugin will still need to be loaded - * at runtime for future requests. - */ - $this->_add_plugin('block', $tag_command); - - if ($start_tag) - $this->_push_tag($tag_command); - else - $this->_pop_tag($tag_command); - - if ($start_tag) { - $output = '<?php ' . $this->_push_cacheable_state('block', $tag_command); - $attrs = $this->_parse_attrs($tag_args); - $arg_list = $this->_compile_arg_list('block', $tag_command, $attrs, $_cache_attrs=''); - $output .= "$_cache_attrs\$this->_tag_stack[] = array('$tag_command', array(".implode(',', $arg_list).')); '; - $output .= $this->_compile_plugin_call('block', $tag_command).'($this->_tag_stack[count($this->_tag_stack)-1][1], null, $this, $_block_repeat=true);'; - $output .= 'while ($_block_repeat) { ob_start(); ?>'; - } else { - $output = '<?php $this->_block_content = ob_get_contents(); ob_end_clean(); '; - $_out_tag_text = $this->_compile_plugin_call('block', $tag_command).'($this->_tag_stack[count($this->_tag_stack)-1][1], $this->_block_content, $this, $_block_repeat=false)'; - if ($tag_modifier != '') { - $this->_parse_modifiers($_out_tag_text, $tag_modifier); - } - $output .= 'echo '.$_out_tag_text.'; } '; - $output .= " array_pop(\$this->_tag_stack); " . $this->_pop_cacheable_state('block', $tag_command) . '?>'; - } - - return true; - } - - - /** - * compile custom function tag - * - * @param string $tag_command - * @param string $tag_args - * @param string $tag_modifier - * @return string - */ - function _compile_custom_tag($tag_command, $tag_args, $tag_modifier, &$output) - { - $found = false; - $have_function = true; - - /* - * First we check if the custom function has already been registered - * or loaded from a plugin file. - */ - if (isset($this->_plugins['function'][$tag_command])) { - $found = true; - $plugin_func = $this->_plugins['function'][$tag_command][0]; - if (!is_callable($plugin_func)) { - $message = "custom function '$tag_command' is not implemented"; - $have_function = false; - } - } - /* - * Otherwise we need to load plugin file and look for the function - * inside it. - */ - else if ($plugin_file = $this->_get_plugin_filepath('function', $tag_command)) { - $found = true; - - include_once $plugin_file; - - $plugin_func = 'smarty_function_' . $tag_command; - if (!function_exists($plugin_func)) { - $message = "plugin function $plugin_func() not found in $plugin_file\n"; - $have_function = false; - } else { - $this->_plugins['function'][$tag_command] = array($plugin_func, null, null, null, true); - - } - } - - if (!$found) { - return false; - } else if (!$have_function) { - $this->_syntax_error($message, E_USER_WARNING, __FILE__, __LINE__); - return true; - } - - /* declare plugin to be loaded on display of the template that - we compile right now */ - $this->_add_plugin('function', $tag_command); - - $_cacheable_state = $this->_push_cacheable_state('function', $tag_command); - $attrs = $this->_parse_attrs($tag_args); - $arg_list = $this->_compile_arg_list('function', $tag_command, $attrs, $_cache_attrs=''); - - $output = $this->_compile_plugin_call('function', $tag_command).'(array('.implode(',', $arg_list)."), \$this)"; - if($tag_modifier != '') { - $this->_parse_modifiers($output, $tag_modifier); - } - - if($output != '') { - $output = '<?php ' . $_cacheable_state . $_cache_attrs . 'echo ' . $output . ';' - . $this->_pop_cacheable_state('function', $tag_command) . "?>" . $this->_additional_newline; - } - - return true; - } - - /** - * compile a registered object tag - * - * @param string $tag_command - * @param array $attrs - * @param string $tag_modifier - * @return string - */ - function _compile_registered_object_tag($tag_command, $attrs, $tag_modifier) - { - if ($tag_command{0} == '/') { - $start_tag = false; - $tag_command = substr($tag_command, 1); - } else { - $start_tag = true; - } - - list($object, $obj_comp) = explode('->', $tag_command); - - $arg_list = array(); - if(count($attrs)) { - $_assign_var = false; - foreach ($attrs as $arg_name => $arg_value) { - if($arg_name == 'assign') { - $_assign_var = $arg_value; - unset($attrs['assign']); - continue; - } - if (is_bool($arg_value)) - $arg_value = $arg_value ? 'true' : 'false'; - $arg_list[] = "'$arg_name' => $arg_value"; - } - } - - if($this->_reg_objects[$object][2]) { - // smarty object argument format - $args = "array(".implode(',', (array)$arg_list)."), \$this"; - } else { - // traditional argument format - $args = implode(',', array_values($attrs)); - if (empty($args)) { - $args = 'null'; - } - } - - $prefix = ''; - $postfix = ''; - $newline = ''; - if(!is_object($this->_reg_objects[$object][0])) { - $this->_trigger_fatal_error("registered '$object' is not an object" , $this->_current_file, $this->_current_line_no, __FILE__, __LINE__); - } elseif(!empty($this->_reg_objects[$object][1]) && !in_array($obj_comp, $this->_reg_objects[$object][1])) { - $this->_trigger_fatal_error("'$obj_comp' is not a registered component of object '$object'", $this->_current_file, $this->_current_line_no, __FILE__, __LINE__); - } elseif(method_exists($this->_reg_objects[$object][0], $obj_comp)) { - // method - if(in_array($obj_comp, $this->_reg_objects[$object][3])) { - // block method - if ($start_tag) { - $prefix = "\$this->_tag_stack[] = array('$obj_comp', $args); "; - $prefix .= "\$this->_reg_objects['$object'][0]->$obj_comp(\$this->_tag_stack[count(\$this->_tag_stack)-1][1], null, \$this, \$_block_repeat=true); "; - $prefix .= "while (\$_block_repeat) { ob_start();"; - $return = null; - $postfix = ''; - } else { - $prefix = "\$this->_obj_block_content = ob_get_contents(); ob_end_clean(); "; - $return = "\$this->_reg_objects['$object'][0]->$obj_comp(\$this->_tag_stack[count(\$this->_tag_stack)-1][1], \$this->_obj_block_content, \$this, \$_block_repeat=false)"; - $postfix = "} array_pop(\$this->_tag_stack);"; - } - } else { - // non-block method - $return = "\$this->_reg_objects['$object'][0]->$obj_comp($args)"; - } - } else { - // property - $return = "\$this->_reg_objects['$object'][0]->$obj_comp"; - } - - if($return != null) { - if($tag_modifier != '') { - $this->_parse_modifiers($return, $tag_modifier); - } - - if(!empty($_assign_var)) { - $output = "\$this->assign('" . $this->_dequote($_assign_var) ."', $return);"; - } else { - $output = 'echo ' . $return . ';'; - $newline = $this->_additional_newline; - } - } else { - $output = ''; - } - - return '<?php ' . $prefix . $output . $postfix . "?>" . $newline; - } - - /** - * Compile {insert ...} tag - * - * @param string $tag_args - * @return string - */ - function _compile_insert_tag($tag_args) - { - $attrs = $this->_parse_attrs($tag_args); - $name = $this->_dequote($attrs['name']); - - if (empty($name)) { - $this->_syntax_error("missing insert name", E_USER_ERROR, __FILE__, __LINE__); - } - - if (!empty($attrs['script'])) { - $delayed_loading = true; - } else { - $delayed_loading = false; - } - - foreach ($attrs as $arg_name => $arg_value) { - if (is_bool($arg_value)) - $arg_value = $arg_value ? 'true' : 'false'; - $arg_list[] = "'$arg_name' => $arg_value"; - } - - $this->_add_plugin('insert', $name, $delayed_loading); - - $_params = "array('args' => array(".implode(', ', (array)$arg_list)."))"; - - return "<?php require_once(SMARTY_CORE_DIR . 'core.run_insert_handler.php');\necho smarty_core_run_insert_handler($_params, \$this); ?>" . $this->_additional_newline; - } - - /** - * Compile {include ...} tag - * - * @param string $tag_args - * @return string - */ - function _compile_include_tag($tag_args) - { - $attrs = $this->_parse_attrs($tag_args); - $arg_list = array(); - - if (empty($attrs['file'])) { - $this->_syntax_error("missing 'file' attribute in include tag", E_USER_ERROR, __FILE__, __LINE__); - } - - foreach ($attrs as $arg_name => $arg_value) { - if ($arg_name == 'file') { - $include_file = $arg_value; - continue; - } else if ($arg_name == 'assign') { - $assign_var = $arg_value; - continue; - } - if (is_bool($arg_value)) - $arg_value = $arg_value ? 'true' : 'false'; - $arg_list[] = "'$arg_name' => $arg_value"; - } - - $output = '<?php '; - - if (isset($assign_var)) { - $output .= "ob_start();\n"; - } - - $output .= - "\$_smarty_tpl_vars = \$this->_tpl_vars;\n"; - - - $_params = "array('smarty_include_tpl_file' => " . $include_file . ", 'smarty_include_vars' => array(".implode(',', (array)$arg_list)."))"; - $output .= "\$this->_smarty_include($_params);\n" . - "\$this->_tpl_vars = \$_smarty_tpl_vars;\n" . - "unset(\$_smarty_tpl_vars);\n"; - - if (isset($assign_var)) { - $output .= "\$this->assign(" . $assign_var . ", ob_get_contents()); ob_end_clean();\n"; - } - - $output .= ' ?>'; - - return $output; - - } - - /** - * Compile {include ...} tag - * - * @param string $tag_args - * @return string - */ - function _compile_include_php_tag($tag_args) - { - $attrs = $this->_parse_attrs($tag_args); - - if (empty($attrs['file'])) { - $this->_syntax_error("missing 'file' attribute in include_php tag", E_USER_ERROR, __FILE__, __LINE__); - } - - $assign_var = (empty($attrs['assign'])) ? '' : $this->_dequote($attrs['assign']); - $once_var = (empty($attrs['once']) || $attrs['once']=='false') ? 'false' : 'true'; - - $arg_list = array(); - foreach($attrs as $arg_name => $arg_value) { - if($arg_name != 'file' AND $arg_name != 'once' AND $arg_name != 'assign') { - if(is_bool($arg_value)) - $arg_value = $arg_value ? 'true' : 'false'; - $arg_list[] = "'$arg_name' => $arg_value"; - } - } - - $_params = "array('smarty_file' => " . $attrs['file'] . ", 'smarty_assign' => '$assign_var', 'smarty_once' => $once_var, 'smarty_include_vars' => array(".implode(',', $arg_list)."))"; - - return "<?php require_once(SMARTY_CORE_DIR . 'core.smarty_include_php.php');\nsmarty_core_smarty_include_php($_params, \$this); ?>" . $this->_additional_newline; - } - - - /** - * Compile {section ...} tag - * - * @param string $tag_args - * @return string - */ - function _compile_section_start($tag_args) - { - $attrs = $this->_parse_attrs($tag_args); - $arg_list = array(); - - $output = '<?php '; - $section_name = $attrs['name']; - if (empty($section_name)) { - $this->_syntax_error("missing section name", E_USER_ERROR, __FILE__, __LINE__); - } - - $output .= "unset(\$this->_sections[$section_name]);\n"; - $section_props = "\$this->_sections[$section_name]"; - - foreach ($attrs as $attr_name => $attr_value) { - switch ($attr_name) { - case 'loop': - $output .= "{$section_props}['loop'] = is_array(\$_loop=$attr_value) ? count(\$_loop) : max(0, (int)\$_loop); unset(\$_loop);\n"; - break; - - case 'show': - if (is_bool($attr_value)) - $show_attr_value = $attr_value ? 'true' : 'false'; - else - $show_attr_value = "(bool)$attr_value"; - $output .= "{$section_props}['show'] = $show_attr_value;\n"; - break; - - case 'name': - $output .= "{$section_props}['$attr_name'] = $attr_value;\n"; - break; - - case 'max': - case 'start': - $output .= "{$section_props}['$attr_name'] = (int)$attr_value;\n"; - break; - - case 'step': - $output .= "{$section_props}['$attr_name'] = ((int)$attr_value) == 0 ? 1 : (int)$attr_value;\n"; - break; - - default: - $this->_syntax_error("unknown section attribute - '$attr_name'", E_USER_ERROR, __FILE__, __LINE__); - break; - } - } - - if (!isset($attrs['show'])) - $output .= "{$section_props}['show'] = true;\n"; - - if (!isset($attrs['loop'])) - $output .= "{$section_props}['loop'] = 1;\n"; - - if (!isset($attrs['max'])) - $output .= "{$section_props}['max'] = {$section_props}['loop'];\n"; - else - $output .= "if ({$section_props}['max'] < 0)\n" . - " {$section_props}['max'] = {$section_props}['loop'];\n"; - - if (!isset($attrs['step'])) - $output .= "{$section_props}['step'] = 1;\n"; - - if (!isset($attrs['start'])) - $output .= "{$section_props}['start'] = {$section_props}['step'] > 0 ? 0 : {$section_props}['loop']-1;\n"; - else { - $output .= "if ({$section_props}['start'] < 0)\n" . - " {$section_props}['start'] = max({$section_props}['step'] > 0 ? 0 : -1, {$section_props}['loop'] + {$section_props}['start']);\n" . - "else\n" . - " {$section_props}['start'] = min({$section_props}['start'], {$section_props}['step'] > 0 ? {$section_props}['loop'] : {$section_props}['loop']-1);\n"; - } - - $output .= "if ({$section_props}['show']) {\n"; - if (!isset($attrs['start']) && !isset($attrs['step']) && !isset($attrs['max'])) { - $output .= " {$section_props}['total'] = {$section_props}['loop'];\n"; - } else { - $output .= " {$section_props}['total'] = min(ceil(({$section_props}['step'] > 0 ? {$section_props}['loop'] - {$section_props}['start'] : {$section_props}['start']+1)/abs({$section_props}['step'])), {$section_props}['max']);\n"; - } - $output .= " if ({$section_props}['total'] == 0)\n" . - " {$section_props}['show'] = false;\n" . - "} else\n" . - " {$section_props}['total'] = 0;\n"; - - $output .= "if ({$section_props}['show']):\n"; - $output .= " - for ({$section_props}['index'] = {$section_props}['start'], {$section_props}['iteration'] = 1; - {$section_props}['iteration'] <= {$section_props}['total']; - {$section_props}['index'] += {$section_props}['step'], {$section_props}['iteration']++):\n"; - $output .= "{$section_props}['rownum'] = {$section_props}['iteration'];\n"; - $output .= "{$section_props}['index_prev'] = {$section_props}['index'] - {$section_props}['step'];\n"; - $output .= "{$section_props}['index_next'] = {$section_props}['index'] + {$section_props}['step'];\n"; - $output .= "{$section_props}['first'] = ({$section_props}['iteration'] == 1);\n"; - $output .= "{$section_props}['last'] = ({$section_props}['iteration'] == {$section_props}['total']);\n"; - - $output .= "?>"; - - return $output; - } - - - /** - * Compile {foreach ...} tag. - * - * @param string $tag_args - * @return string - */ - function _compile_foreach_start($tag_args) - { - $attrs = $this->_parse_attrs($tag_args); - $arg_list = array(); - - if (empty($attrs['from'])) { - return $this->_syntax_error("foreach: missing 'from' attribute", E_USER_ERROR, __FILE__, __LINE__); - } - $from = $attrs['from']; - - if (empty($attrs['item'])) { - return $this->_syntax_error("foreach: missing 'item' attribute", E_USER_ERROR, __FILE__, __LINE__); - } - $item = $this->_dequote($attrs['item']); - if (!preg_match('~^\w+$~', $item)) { - return $this->_syntax_error("'foreach: item' must be a variable name (literal string)", E_USER_ERROR, __FILE__, __LINE__); - } - - if (isset($attrs['key'])) { - $key = $this->_dequote($attrs['key']); - if (!preg_match('~^\w+$~', $key)) { - return $this->_syntax_error("foreach: 'key' must to be a variable name (literal string)", E_USER_ERROR, __FILE__, __LINE__); - } - $key_part = "\$this->_tpl_vars['$key'] => "; - } else { - $key = null; - $key_part = ''; - } - - if (isset($attrs['name'])) { - $name = $attrs['name']; - } else { - $name = null; - } - - $output = '<?php '; - if (isset($name)) { - $foreach_props = "\$this->_foreach[$name]"; - $output .= "if (isset(\$this->_foreach[$name])) unset(\$this->_foreach[$name]);\n"; - $output .= "{$foreach_props}['total'] = count(\$_from = (array)$from);\n"; - $output .= "{$foreach_props}['show'] = {$foreach_props}['total'] > 0;\n"; - $output .= "if ({$foreach_props}['show']):\n"; - $output .= "{$foreach_props}['iteration'] = 0;\n"; - $output .= " foreach (\$_from as $key_part\$this->_tpl_vars['$item']):\n"; - $output .= " {$foreach_props}['iteration']++;\n"; - $output .= " {$foreach_props}['first'] = ({$foreach_props}['iteration'] == 1);\n"; - $output .= " {$foreach_props}['last'] = ({$foreach_props}['iteration'] == {$foreach_props}['total']);\n"; - } else { - $output .= "if (count(\$_from = (array)$from)):\n"; - $output .= " foreach (\$_from as $key_part\$this->_tpl_vars['$item']):\n"; - } - $output .= '?>'; - - return $output; - } - - - /** - * Compile {capture} .. {/capture} tags - * - * @param boolean $start true if this is the {capture} tag - * @param string $tag_args - * @return string - */ - - function _compile_capture_tag($start, $tag_args = '') - { - $attrs = $this->_parse_attrs($tag_args); - - if ($start) { - if (isset($attrs['name'])) - $buffer = $attrs['name']; - else - $buffer = "'default'"; - - if (isset($attrs['assign'])) - $assign = $attrs['assign']; - else - $assign = null; - $output = "<?php ob_start(); ?>"; - $this->_capture_stack[] = array($buffer, $assign); - } else { - list($buffer, $assign) = array_pop($this->_capture_stack); - $output = "<?php \$this->_smarty_vars['capture'][$buffer] = ob_get_contents(); "; - if (isset($assign)) { - $output .= " \$this->assign($assign, ob_get_contents());"; - } - $output .= "ob_end_clean(); ?>"; - } - - return $output; - } - - /** - * Compile {if ...} tag - * - * @param string $tag_args - * @param boolean $elseif if true, uses elseif instead of if - * @return string - */ - function _compile_if_tag($tag_args, $elseif = false) - { - - /* Tokenize args for 'if' tag. */ - preg_match_all('~(?> - ' . $this->_obj_call_regexp . '(?:' . $this->_mod_regexp . '*)? | # valid object call - ' . $this->_var_regexp . '(?:' . $this->_mod_regexp . '*)? | # var or quoted string - \-?0[xX][0-9a-fA-F]+|\-?\d+(?:\.\d+)?|\.\d+|!==|===|==|!=|<>|<<|>>|<=|>=|\&\&|\|\||\(|\)|,|\!|\^|=|\&|\~|<|>|\||\%|\+|\-|\/|\*|\@ | # valid non-word token - \b\w+\b | # valid word token - \S+ # anything else - )~x', $tag_args, $match); - - $tokens = $match[0]; - - // make sure we have balanced parenthesis - $token_count = array_count_values($tokens); - if(isset($token_count['(']) && $token_count['('] != $token_count[')']) { - $this->_syntax_error("unbalanced parenthesis in if statement", E_USER_ERROR, __FILE__, __LINE__); - } - - $is_arg_stack = array(); - - for ($i = 0; $i < count($tokens); $i++) { - - $token = &$tokens[$i]; - - switch (strtolower($token)) { - case '!': - case '%': - case '!==': - case '==': - case '===': - case '>': - case '<': - case '!=': - case '<>': - case '<<': - case '>>': - case '<=': - case '>=': - case '&&': - case '||': - case '|': - case '^': - case '&': - case '~': - case ')': - case ',': - case '+': - case '-': - case '*': - case '/': - case '@': - break; - - case 'eq': - $token = '=='; - break; - - case 'ne': - case 'neq': - $token = '!='; - break; - - case 'lt': - $token = '<'; - break; - - case 'le': - case 'lte': - $token = '<='; - break; - - case 'gt': - $token = '>'; - break; - - case 'ge': - case 'gte': - $token = '>='; - break; - - case 'and': - $token = '&&'; - break; - - case 'or': - $token = '||'; - break; - - case 'not': - $token = '!'; - break; - - case 'mod': - $token = '%'; - break; - - case '(': - array_push($is_arg_stack, $i); - break; - - case 'is': - /* If last token was a ')', we operate on the parenthesized - expression. The start of the expression is on the stack. - Otherwise, we operate on the last encountered token. */ - if ($tokens[$i-1] == ')') - $is_arg_start = array_pop($is_arg_stack); - else - $is_arg_start = $i-1; - /* Construct the argument for 'is' expression, so it knows - what to operate on. */ - $is_arg = implode(' ', array_slice($tokens, $is_arg_start, $i - $is_arg_start)); - - /* Pass all tokens from next one until the end to the - 'is' expression parsing function. The function will - return modified tokens, where the first one is the result - of the 'is' expression and the rest are the tokens it - didn't touch. */ - $new_tokens = $this->_parse_is_expr($is_arg, array_slice($tokens, $i+1)); - - /* Replace the old tokens with the new ones. */ - array_splice($tokens, $is_arg_start, count($tokens), $new_tokens); - - /* Adjust argument start so that it won't change from the - current position for the next iteration. */ - $i = $is_arg_start; - break; - - default: - if(preg_match('~^' . $this->_func_regexp . '$~', $token) ) { - // function call - if($this->security && - !in_array($token, $this->security_settings['IF_FUNCS'])) { - $this->_syntax_error("(secure mode) '$token' not allowed in if statement", E_USER_ERROR, __FILE__, __LINE__); - } - } elseif(preg_match('~^' . $this->_obj_call_regexp . '|' . $this->_var_regexp . '(?:' . $this->_mod_regexp . '*)$~', $token)) { - // object or variable - $token = $this->_parse_var_props($token); - } elseif(is_numeric($token)) { - // number, skip it - } else { - $this->_syntax_error("unidentified token '$token'", E_USER_ERROR, __FILE__, __LINE__); - } - break; - } - } - - if ($elseif) - return '<?php elseif ('.implode(' ', $tokens).'): ?>'; - else - return '<?php if ('.implode(' ', $tokens).'): ?>'; - } - - - function _compile_arg_list($type, $name, $attrs, &$cache_code) { - $arg_list = array(); - - if (isset($type) && isset($name) - && isset($this->_plugins[$type]) - && isset($this->_plugins[$type][$name]) - && empty($this->_plugins[$type][$name][4]) - && is_array($this->_plugins[$type][$name][5]) - ) { - /* we have a list of parameters that should be cached */ - $_cache_attrs = $this->_plugins[$type][$name][5]; - $_count = $this->_cache_attrs_count++; - $cache_code = "\$_cache_attrs =& \$this->_smarty_cache_attrs('$this->_cache_serial','$_count');"; - - } else { - /* no parameters are cached */ - $_cache_attrs = null; - } - - foreach ($attrs as $arg_name => $arg_value) { - if (is_bool($arg_value)) - $arg_value = $arg_value ? 'true' : 'false'; - if (is_null($arg_value)) - $arg_value = 'null'; - if ($_cache_attrs && in_array($arg_name, $_cache_attrs)) { - $arg_list[] = "'$arg_name' => (\$this->_cache_including) ? \$_cache_attrs['$arg_name'] : (\$_cache_attrs['$arg_name']=$arg_value)"; - } else { - $arg_list[] = "'$arg_name' => $arg_value"; - } - } - return $arg_list; - } - - /** - * Parse is expression - * - * @param string $is_arg - * @param array $tokens - * @return array - */ - function _parse_is_expr($is_arg, $tokens) - { - $expr_end = 0; - $negate_expr = false; - - if (($first_token = array_shift($tokens)) == 'not') { - $negate_expr = true; - $expr_type = array_shift($tokens); - } else - $expr_type = $first_token; - - switch ($expr_type) { - case 'even': - if (isset($tokens[$expr_end]) && $tokens[$expr_end] == 'by') { - $expr_end++; - $expr_arg = $tokens[$expr_end++]; - $expr = "!(1 & ($is_arg / " . $this->_parse_var_props($expr_arg) . "))"; - } else - $expr = "!(1 & $is_arg)"; - break; - - case 'odd': - if (isset($tokens[$expr_end]) && $tokens[$expr_end] == 'by') { - $expr_end++; - $expr_arg = $tokens[$expr_end++]; - $expr = "(1 & ($is_arg / " . $this->_parse_var_props($expr_arg) . "))"; - } else - $expr = "(1 & $is_arg)"; - break; - - case 'div': - if (@$tokens[$expr_end] == 'by') { - $expr_end++; - $expr_arg = $tokens[$expr_end++]; - $expr = "!($is_arg % " . $this->_parse_var_props($expr_arg) . ")"; - } else { - $this->_syntax_error("expecting 'by' after 'div'", E_USER_ERROR, __FILE__, __LINE__); - } - break; - - default: - $this->_syntax_error("unknown 'is' expression - '$expr_type'", E_USER_ERROR, __FILE__, __LINE__); - break; - } - - if ($negate_expr) { - $expr = "!($expr)"; - } - - array_splice($tokens, 0, $expr_end, $expr); - - return $tokens; - } - - - /** - * Parse attribute string - * - * @param string $tag_args - * @return array - */ - function _parse_attrs($tag_args) - { - - /* Tokenize tag attributes. */ - preg_match_all('~(?:' . $this->_obj_call_regexp . '|' . $this->_qstr_regexp . ' | (?>[^"\'=\s]+) - )+ | - [=] - ~x', $tag_args, $match); - $tokens = $match[0]; - - $attrs = array(); - /* Parse state: - 0 - expecting attribute name - 1 - expecting '=' - 2 - expecting attribute value (not '=') */ - $state = 0; - - foreach ($tokens as $token) { - switch ($state) { - case 0: - /* If the token is a valid identifier, we set attribute name - and go to state 1. */ - if (preg_match('~^\w+$~', $token)) { - $attr_name = $token; - $state = 1; - } else - $this->_syntax_error("invalid attribute name: '$token'", E_USER_ERROR, __FILE__, __LINE__); - break; - - case 1: - /* If the token is '=', then we go to state 2. */ - if ($token == '=') { - $state = 2; - } else - $this->_syntax_error("expecting '=' after attribute name '$last_token'", E_USER_ERROR, __FILE__, __LINE__); - break; - - case 2: - /* If token is not '=', we set the attribute value and go to - state 0. */ - if ($token != '=') { - /* We booleanize the token if it's a non-quoted possible - boolean value. */ - if (preg_match('~^(on|yes|true)$~', $token)) { - $token = 'true'; - } else if (preg_match('~^(off|no|false)$~', $token)) { - $token = 'false'; - } else if ($token == 'null') { - $token = 'null'; - } else if (preg_match('~^' . $this->_num_const_regexp . '|0[xX][0-9a-fA-F]+$~', $token)) { - /* treat integer literally */ - } else if (!preg_match('~^' . $this->_obj_call_regexp . '|' . $this->_var_regexp . '(?:' . $this->_mod_regexp . ')*$~', $token)) { - /* treat as a string, double-quote it escaping quotes */ - $token = '"'.addslashes($token).'"'; - } - - $attrs[$attr_name] = $token; - $state = 0; - } else - $this->_syntax_error("'=' cannot be an attribute value", E_USER_ERROR, __FILE__, __LINE__); - break; - } - $last_token = $token; - } - - if($state != 0) { - if($state == 1) { - $this->_syntax_error("expecting '=' after attribute name '$last_token'", E_USER_ERROR, __FILE__, __LINE__); - } else { - $this->_syntax_error("missing attribute value", E_USER_ERROR, __FILE__, __LINE__); - } - } - - $this->_parse_vars_props($attrs); - - return $attrs; - } - - /** - * compile multiple variables and section properties tokens into - * PHP code - * - * @param array $tokens - */ - function _parse_vars_props(&$tokens) - { - foreach($tokens as $key => $val) { - $tokens[$key] = $this->_parse_var_props($val); - } - } - - /** - * compile single variable and section properties token into - * PHP code - * - * @param string $val - * @param string $tag_attrs - * @return string - */ - function _parse_var_props($val) - { - $val = trim($val); - - if(preg_match('~^(' . $this->_obj_call_regexp . '|' . $this->_dvar_regexp . ')(' . $this->_mod_regexp . '*)$~', $val, $match)) { - // $ variable or object - $return = $this->_parse_var($match[1]); - $modifiers = $match[2]; - if (!empty($this->default_modifiers) && !preg_match('~(^|\|)smarty:nodefaults($|\|)~',$modifiers)) { - $_default_mod_string = implode('|',(array)$this->default_modifiers); - $modifiers = empty($modifiers) ? $_default_mod_string : $_default_mod_string . '|' . $modifiers; - } - $this->_parse_modifiers($return, $modifiers); - return $return; - } elseif (preg_match('~^' . $this->_db_qstr_regexp . '(?:' . $this->_mod_regexp . '*)$~', $val)) { - // double quoted text - preg_match('~^(' . $this->_db_qstr_regexp . ')('. $this->_mod_regexp . '*)$~', $val, $match); - $return = $this->_expand_quoted_text($match[1]); - if($match[2] != '') { - $this->_parse_modifiers($return, $match[2]); - } - return $return; - } - elseif(preg_match('~^' . $this->_num_const_regexp . '(?:' . $this->_mod_regexp . '*)$~', $val)) { - // numerical constant - preg_match('~^(' . $this->_num_const_regexp . ')('. $this->_mod_regexp . '*)$~', $val, $match); - if($match[2] != '') { - $this->_parse_modifiers($match[1], $match[2]); - return $match[1]; - } - } - elseif(preg_match('~^' . $this->_si_qstr_regexp . '(?:' . $this->_mod_regexp . '*)$~', $val)) { - // single quoted text - preg_match('~^(' . $this->_si_qstr_regexp . ')('. $this->_mod_regexp . '*)$~', $val, $match); - if($match[2] != '') { - $this->_parse_modifiers($match[1], $match[2]); - return $match[1]; - } - } - elseif(preg_match('~^' . $this->_cvar_regexp . '(?:' . $this->_mod_regexp . '*)$~', $val)) { - // config var - return $this->_parse_conf_var($val); - } - elseif(preg_match('~^' . $this->_svar_regexp . '(?:' . $this->_mod_regexp . '*)$~', $val)) { - // section var - return $this->_parse_section_prop($val); - } - elseif(!in_array($val, $this->_permitted_tokens) && !is_numeric($val)) { - // literal string - return $this->_expand_quoted_text('"' . $val .'"'); - } - return $val; - } - - /** - * expand quoted text with embedded variables - * - * @param string $var_expr - * @return string - */ - function _expand_quoted_text($var_expr) - { - // if contains unescaped $, expand it - if(preg_match_all('~(?:\`(?<!\\\\)\$' . $this->_dvar_guts_regexp . '(?:' . $this->_obj_ext_regexp . ')*\`)|(?:(?<!\\\\)\$\w+(\[[a-zA-Z0-9]+\])*)~', $var_expr, $_match)) { - $_match = $_match[0]; - rsort($_match); - reset($_match); - foreach($_match as $_var) { - $var_expr = str_replace ($_var, '".(' . $this->_parse_var(str_replace('`','',$_var)) . ')."', $var_expr); - } - $_return = preg_replace('~\.""|(?<!\\\\)""\.~', '', $var_expr); - } else { - $_return = $var_expr; - } - // replace double quoted literal string with single quotes - $_return = preg_replace('~^"([\s\w]+)"$~',"'\\1'",$_return); - return $_return; - } - - /** - * parse variable expression into PHP code - * - * @param string $var_expr - * @param string $output - * @return string - */ - function _parse_var($var_expr) - { - $_has_math = false; - $_math_vars = preg_split('~('.$this->_dvar_math_regexp.'|'.$this->_qstr_regexp.')~', $var_expr, -1, PREG_SPLIT_DELIM_CAPTURE); - - if(count($_math_vars) > 1) { - $_first_var = ""; - $_complete_var = ""; - $_output = ""; - // simple check if there is any math, to stop recursion (due to modifiers with "xx % yy" as parameter) - foreach($_math_vars as $_k => $_math_var) { - $_math_var = $_math_vars[$_k]; - - if(!empty($_math_var) || is_numeric($_math_var)) { - // hit a math operator, so process the stuff which came before it - if(preg_match('~^' . $this->_dvar_math_regexp . '$~', $_math_var)) { - $_has_math = true; - if(!empty($_complete_var) || is_numeric($_complete_var)) { - $_output .= $this->_parse_var($_complete_var); - } - - // just output the math operator to php - $_output .= $_math_var; - - if(empty($_first_var)) - $_first_var = $_complete_var; - - $_complete_var = ""; - } else { - $_complete_var .= $_math_var; - } - } - } - if($_has_math) { - if(!empty($_complete_var) || is_numeric($_complete_var)) - $_output .= $this->_parse_var($_complete_var); - - // get the modifiers working (only the last var from math + modifier is left) - $var_expr = $_complete_var; - } - } - - // prevent cutting of first digit in the number (we _definitly_ got a number if the first char is a digit) - if(is_numeric($var_expr{0})) - $_var_ref = $var_expr; - else - $_var_ref = substr($var_expr, 1); - - if(!$_has_math) { - - // get [foo] and .foo and ->foo and (...) pieces - preg_match_all('~(?:^\w+)|' . $this->_obj_params_regexp . '|(?:' . $this->_var_bracket_regexp . ')|->\$?\w+|\.\$?\w+|\S+~', $_var_ref, $match); - - $_indexes = $match[0]; - $_var_name = array_shift($_indexes); - - /* Handle $smarty.* variable references as a special case. */ - if ($_var_name == 'smarty') { - /* - * If the reference could be compiled, use the compiled output; - * otherwise, fall back on the $smarty variable generated at - * run-time. - */ - if (($smarty_ref = $this->_compile_smarty_ref($_indexes)) !== null) { - $_output = $smarty_ref; - } else { - $_var_name = substr(array_shift($_indexes), 1); - $_output = "\$this->_smarty_vars['$_var_name']"; - } - } elseif(is_numeric($_var_name) && is_numeric($var_expr{0})) { - // because . is the operator for accessing arrays thru inidizes we need to put it together again for floating point numbers - if(count($_indexes) > 0) - { - $_var_name .= implode("", $_indexes); - $_indexes = array(); - } - $_output = $_var_name; - } else { - $_output = "\$this->_tpl_vars['$_var_name']"; - } - - foreach ($_indexes as $_index) { - if ($_index{0} == '[') { - $_index = substr($_index, 1, -1); - if (is_numeric($_index)) { - $_output .= "[$_index]"; - } elseif ($_index{0} == '$') { - if (strpos($_index, '.') !== false) { - $_output .= '[' . $this->_parse_var($_index) . ']'; - } else { - $_output .= "[\$this->_tpl_vars['" . substr($_index, 1) . "']]"; - } - } else { - $_var_parts = explode('.', $_index); - $_var_section = $_var_parts[0]; - $_var_section_prop = isset($_var_parts[1]) ? $_var_parts[1] : 'index'; - $_output .= "[\$this->_sections['$_var_section']['$_var_section_prop']]"; - } - } else if ($_index{0} == '.') { - if ($_index{1} == '$') - $_output .= "[\$this->_tpl_vars['" . substr($_index, 2) . "']]"; - else - $_output .= "['" . substr($_index, 1) . "']"; - } else if (substr($_index,0,2) == '->') { - if(substr($_index,2,2) == '__') { - $this->_syntax_error('call to internal object members is not allowed', E_USER_ERROR, __FILE__, __LINE__); - } elseif($this->security && substr($_index, 2, 1) == '_') { - $this->_syntax_error('(secure) call to private object member is not allowed', E_USER_ERROR, __FILE__, __LINE__); - } elseif ($_index{2} == '$') { - if ($this->security) { - $this->_syntax_error('(secure) call to dynamic object member is not allowed', E_USER_ERROR, __FILE__, __LINE__); - } else { - $_output .= '->{(($_var=$this->_tpl_vars[\''.substr($_index,3).'\']) && substr($_var,0,2)!=\'__\') ? $_var : $this->trigger_error("cannot access property \\"$_var\\"")}'; - } - } else { - $_output .= $_index; - } - } elseif ($_index{0} == '(') { - $_index = $this->_parse_parenth_args($_index); - $_output .= $_index; - } else { - $_output .= $_index; - } - } - } - - return $_output; - } - - /** - * parse arguments in function call parenthesis - * - * @param string $parenth_args - * @return string - */ - function _parse_parenth_args($parenth_args) - { - preg_match_all('~' . $this->_param_regexp . '~',$parenth_args, $match); - $orig_vals = $match = $match[0]; - $this->_parse_vars_props($match); - $replace = array(); - for ($i = 0, $count = count($match); $i < $count; $i++) { - $replace[$orig_vals[$i]] = $match[$i]; - } - return strtr($parenth_args, $replace); - } - - /** - * parse configuration variable expression into PHP code - * - * @param string $conf_var_expr - */ - function _parse_conf_var($conf_var_expr) - { - $parts = explode('|', $conf_var_expr, 2); - $var_ref = $parts[0]; - $modifiers = isset($parts[1]) ? $parts[1] : ''; - - $var_name = substr($var_ref, 1, -1); - - $output = "\$this->_config[0]['vars']['$var_name']"; - - $this->_parse_modifiers($output, $modifiers); - - return $output; - } - - /** - * parse section property expression into PHP code - * - * @param string $section_prop_expr - * @return string - */ - function _parse_section_prop($section_prop_expr) - { - $parts = explode('|', $section_prop_expr, 2); - $var_ref = $parts[0]; - $modifiers = isset($parts[1]) ? $parts[1] : ''; - - preg_match('!%(\w+)\.(\w+)%!', $var_ref, $match); - $section_name = $match[1]; - $prop_name = $match[2]; - - $output = "\$this->_sections['$section_name']['$prop_name']"; - - $this->_parse_modifiers($output, $modifiers); - - return $output; - } - - - /** - * parse modifier chain into PHP code - * - * sets $output to parsed modified chain - * @param string $output - * @param string $modifier_string - */ - function _parse_modifiers(&$output, $modifier_string) - { - preg_match_all('~\|(@?\w+)((?>:(?:'. $this->_qstr_regexp . '|[^|]+))*)~', '|' . $modifier_string, $_match); - list(, $_modifiers, $modifier_arg_strings) = $_match; - - for ($_i = 0, $_for_max = count($_modifiers); $_i < $_for_max; $_i++) { - $_modifier_name = $_modifiers[$_i]; - - if($_modifier_name == 'smarty') { - // skip smarty modifier - continue; - } - - preg_match_all('~:(' . $this->_qstr_regexp . '|[^:]+)~', $modifier_arg_strings[$_i], $_match); - $_modifier_args = $_match[1]; - - if ($_modifier_name{0} == '@') { - $_map_array = false; - $_modifier_name = substr($_modifier_name, 1); - } else { - $_map_array = true; - } - - if (empty($this->_plugins['modifier'][$_modifier_name]) - && !$this->_get_plugin_filepath('modifier', $_modifier_name) - && function_exists($_modifier_name)) { - if ($this->security && !in_array($_modifier_name, $this->security_settings['MODIFIER_FUNCS'])) { - $this->_trigger_fatal_error("[plugin] (secure mode) modifier '$_modifier_name' is not allowed" , $this->_current_file, $this->_current_line_no, __FILE__, __LINE__); - } else { - $this->_plugins['modifier'][$_modifier_name] = array($_modifier_name, null, null, false); - } - } - $this->_add_plugin('modifier', $_modifier_name); - - $this->_parse_vars_props($_modifier_args); - - if($_modifier_name == 'default') { - // supress notifications of default modifier vars and args - if($output{0} == '$') { - $output = '@' . $output; - } - if(isset($_modifier_args[0]) && $_modifier_args[0]{0} == '$') { - $_modifier_args[0] = '@' . $_modifier_args[0]; - } - } - if (count($_modifier_args) > 0) - $_modifier_args = ', '.implode(', ', $_modifier_args); - else - $_modifier_args = ''; - - if ($_map_array) { - $output = "((is_array(\$_tmp=$output)) ? \$this->_run_mod_handler('$_modifier_name', true, \$_tmp$_modifier_args) : " . $this->_compile_plugin_call('modifier', $_modifier_name) . "(\$_tmp$_modifier_args))"; - - } else { - - $output = $this->_compile_plugin_call('modifier', $_modifier_name)."($output$_modifier_args)"; - - } - } - } - - - /** - * add plugin - * - * @param string $type - * @param string $name - * @param boolean? $delayed_loading - */ - function _add_plugin($type, $name, $delayed_loading = null) - { - if (!isset($this->_plugin_info[$type])) { - $this->_plugin_info[$type] = array(); - } - if (!isset($this->_plugin_info[$type][$name])) { - $this->_plugin_info[$type][$name] = array($this->_current_file, - $this->_current_line_no, - $delayed_loading); - } - } - - - /** - * Compiles references of type $smarty.foo - * - * @param string $indexes - * @return string - */ - function _compile_smarty_ref(&$indexes) - { - /* Extract the reference name. */ - $_ref = substr($indexes[0], 1); - foreach($indexes as $_index_no=>$_index) { - if ($_index{0} != '.' && $_index_no<2 || !preg_match('~^(\.|\[|->)~', $_index)) { - $this->_syntax_error('$smarty' . implode('', array_slice($indexes, 0, 2)) . ' is an invalid reference', E_USER_ERROR, __FILE__, __LINE__); - } - } - - switch ($_ref) { - case 'now': - $compiled_ref = 'time()'; - $_max_index = 1; - break; - - case 'foreach': - case 'section': - array_shift($indexes); - $_var = $this->_parse_var_props(substr($indexes[0], 1)); - if ($_ref == 'foreach') - $compiled_ref = "\$this->_foreach[$_var]"; - else - $compiled_ref = "\$this->_sections[$_var]"; - break; - - case 'get': - $compiled_ref = ($this->request_use_auto_globals) ? '$_GET' : "\$GLOBALS['HTTP_GET_VARS']"; - break; - - case 'post': - $compiled_ref = ($this->request_use_auto_globals) ? '$_POST' : "\$GLOBALS['HTTP_POST_VARS']"; - break; - - case 'cookies': - $compiled_ref = ($this->request_use_auto_globals) ? '$_COOKIE' : "\$GLOBALS['HTTP_COOKIE_VARS']"; - break; - - case 'env': - $compiled_ref = ($this->request_use_auto_globals) ? '$_ENV' : "\$GLOBALS['HTTP_ENV_VARS']"; - break; - - case 'server': - $compiled_ref = ($this->request_use_auto_globals) ? '$_SERVER' : "\$GLOBALS['HTTP_SERVER_VARS']"; - break; - - case 'session': - $compiled_ref = ($this->request_use_auto_globals) ? '$_SESSION' : "\$GLOBALS['HTTP_SESSION_VARS']"; - break; - - /* - * These cases are handled either at run-time or elsewhere in the - * compiler. - */ - case 'request': - if ($this->request_use_auto_globals) { - $compiled_ref = '$_REQUEST'; - break; - } else { - $this->_init_smarty_vars = true; - } - return null; - - case 'capture': - return null; - - case 'template': - $compiled_ref = "'$this->_current_file'"; - $_max_index = 1; - break; - - case 'version': - $compiled_ref = "'$this->_version'"; - $_max_index = 1; - break; - - case 'const': - if ($this->security && !$this->security_settings['ALLOW_CONSTANTS']) { - $this->_syntax_error("(secure mode) constants not permitted", - E_USER_WARNING, __FILE__, __LINE__); - return; - } - array_shift($indexes); - $_val = $this->_parse_var_props(substr($indexes[0],1)); - $compiled_ref = '@constant(' . $_val . ')'; - $_max_index = 1; - break; - - case 'config': - $compiled_ref = "\$this->_config[0]['vars']"; - $_max_index = 3; - break; - - case 'ldelim': - $compiled_ref = "'$this->left_delimiter'"; - break; - - case 'rdelim': - $compiled_ref = "'$this->right_delimiter'"; - break; - - default: - $this->_syntax_error('$smarty.' . $_ref . ' is an unknown reference', E_USER_ERROR, __FILE__, __LINE__); - break; - } - - if (isset($_max_index) && count($indexes) > $_max_index) { - $this->_syntax_error('$smarty' . implode('', $indexes) .' is an invalid reference', E_USER_ERROR, __FILE__, __LINE__); - } - - array_shift($indexes); - return $compiled_ref; - } - - /** - * compiles call to plugin of type $type with name $name - * returns a string containing the function-name or method call - * without the paramter-list that would have follow to make the - * call valid php-syntax - * - * @param string $type - * @param string $name - * @return string - */ - function _compile_plugin_call($type, $name) { - if (isset($this->_plugins[$type][$name])) { - /* plugin loaded */ - if (is_array($this->_plugins[$type][$name][0])) { - return ((is_object($this->_plugins[$type][$name][0][0])) ? - "\$this->_plugins['$type']['$name'][0][0]->" /* method callback */ - : (string)($this->_plugins[$type][$name][0][0]).'::' /* class callback */ - ). $this->_plugins[$type][$name][0][1]; - - } else { - /* function callback */ - return $this->_plugins[$type][$name][0]; - - } - } else { - /* plugin not loaded -> auto-loadable-plugin */ - return 'smarty_'.$type.'_'.$name; - - } - } - - /** - * load pre- and post-filters - */ - function _load_filters() - { - if (count($this->_plugins['prefilter']) > 0) { - foreach ($this->_plugins['prefilter'] as $filter_name => $prefilter) { - if ($prefilter === false) { - unset($this->_plugins['prefilter'][$filter_name]); - $_params = array('plugins' => array(array('prefilter', $filter_name, null, null, false))); - require_once(SMARTY_CORE_DIR . 'core.load_plugins.php'); - smarty_core_load_plugins($_params, $this); - } - } - } - if (count($this->_plugins['postfilter']) > 0) { - foreach ($this->_plugins['postfilter'] as $filter_name => $postfilter) { - if ($postfilter === false) { - unset($this->_plugins['postfilter'][$filter_name]); - $_params = array('plugins' => array(array('postfilter', $filter_name, null, null, false))); - require_once(SMARTY_CORE_DIR . 'core.load_plugins.php'); - smarty_core_load_plugins($_params, $this); - } - } - } - } - - - /** - * Quote subpattern references - * - * @param string $string - * @return string - */ - function _quote_replace($string) - { - return strtr($string, array('\\' => '\\\\', '$' => '\\$')); - } - - /** - * display Smarty syntax error - * - * @param string $error_msg - * @param integer $error_type - * @param string $file - * @param integer $line - */ - function _syntax_error($error_msg, $error_type = E_USER_ERROR, $file=null, $line=null) - { - $this->_trigger_fatal_error("syntax error: $error_msg", $this->_current_file, $this->_current_line_no, $file, $line, $error_type); - } - - - /** - * check if the compilation changes from cacheable to - * non-cacheable state with the beginning of the current - * plugin. return php-code to reflect the transition. - * @return string - */ - function _push_cacheable_state($type, $name) { - $_cacheable = !isset($this->_plugins[$type][$name]) || $this->_plugins[$type][$name][4]; - if ($_cacheable - || 0<$this->_cacheable_state++) return ''; - if (!isset($this->_cache_serial)) $this->_cache_serial = md5(uniqid('Smarty')); - $_ret = 'if ($this->caching && !$this->_cache_including) { echo \'{nocache:' - . $this->_cache_serial . '#' . $this->_nocache_count - . '}\';}'; - return $_ret; - } - - - /** - * check if the compilation changes from non-cacheable to - * cacheable state with the end of the current plugin return - * php-code to reflect the transition. - * @return string - */ - function _pop_cacheable_state($type, $name) { - $_cacheable = !isset($this->_plugins[$type][$name]) || $this->_plugins[$type][$name][4]; - if ($_cacheable - || --$this->_cacheable_state>0) return ''; - return 'if ($this->caching && !$this->_cache_including) { echo \'{/nocache:' - . $this->_cache_serial . '#' . ($this->_nocache_count++) - . '}\';}'; - } - - - /** - * push opening tag-name, file-name and line-number on the tag-stack - * @param string the opening tag's name - */ - function _push_tag($open_tag) - { - array_push($this->_tag_stack, array($open_tag, $this->_current_line_no)); - } - - /** - * pop closing tag-name - * raise an error if this stack-top doesn't match with the closing tag - * @param string the closing tag's name - * @return string the opening tag's name - */ - function _pop_tag($close_tag) - { - $message = ''; - if (count($this->_tag_stack)>0) { - list($_open_tag, $_line_no) = array_pop($this->_tag_stack); - if ($close_tag == $_open_tag) { - return $_open_tag; - } - if ($close_tag == 'if' && ($_open_tag == 'else' || $_open_tag == 'elseif' )) { - return $this->_pop_tag($close_tag); - } - if ($close_tag == 'section' && $_open_tag == 'sectionelse') { - $this->_pop_tag($close_tag); - return $_open_tag; - } - if ($close_tag == 'foreach' && $_open_tag == 'foreachelse') { - $this->_pop_tag($close_tag); - return $_open_tag; - } - if ($_open_tag == 'else' || $_open_tag == 'elseif') { - $_open_tag = 'if'; - } elseif ($_open_tag == 'sectionelse') { - $_open_tag = 'section'; - } elseif ($_open_tag == 'foreachelse') { - $_open_tag = 'foreach'; - } - $message = " expected {/$_open_tag} (opened line $_line_no)."; - } - $this->_syntax_error("mismatched tag {/$close_tag}.$message", - E_USER_ERROR, __FILE__, __LINE__); - } - -} - -/** - * compare to values by their string length - * - * @access private - * @param string $a - * @param string $b - * @return 0|-1|1 - */ -function _smarty_sort_length($a, $b) -{ - if($a == $b) - return 0; - - if(strlen($a) == strlen($b)) - return ($a > $b) ? -1 : 1; - - return (strlen($a) > strlen($b)) ? -1 : 1; -} - - -/* vim: set et: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/debug.tpl b/livesupport/modules/htmlUI/var/html/Smarty/libs/debug.tpl deleted file mode 100644 index 7f1c9d425..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/debug.tpl +++ /dev/null @@ -1,64 +0,0 @@ -{* Smarty *} - -{* debug.tpl, last updated version 2.0.1 *} - -{assign_debug_info} - -{if isset($_smarty_debug_output) and $_smarty_debug_output eq "html"} - <table border=0 width=100%> - <tr bgcolor=#cccccc><th colspan=2>Smarty Debug Console</th></tr> - <tr bgcolor=#cccccc><td colspan=2><b>included templates & config files (load time in seconds):</b></td></tr> - {section name=templates loop=$_debug_tpls} - <tr bgcolor={if %templates.index% is even}#eeeeee{else}#fafafa{/if}><td colspan=2><tt>{section name=indent loop=$_debug_tpls[templates].depth} {/section}<font color={if $_debug_tpls[templates].type eq "template"}brown{elseif $_debug_tpls[templates].type eq "insert"}black{else}green{/if}>{$_debug_tpls[templates].filename|escape:html}</font>{if isset($_debug_tpls[templates].exec_time)} <font size=-1><i>({$_debug_tpls[templates].exec_time|string_format:"%.5f"}){if %templates.index% eq 0} (total){/if}</i></font>{/if}</tt></td></tr> - {sectionelse} - <tr bgcolor=#eeeeee><td colspan=2><tt><i>no templates included</i></tt></td></tr> - {/section} - <tr bgcolor=#cccccc><td colspan=2><b>assigned template variables:</b></td></tr> - {section name=vars loop=$_debug_keys} - <tr bgcolor={if %vars.index% is even}#eeeeee{else}#fafafa{/if}><td valign=top><tt><font color=blue>{ldelim}${$_debug_keys[vars]}{rdelim}</font></tt></td><td nowrap><tt><font color=green>{$_debug_vals[vars]|@debug_print_var}</font></tt></td></tr> - {sectionelse} - <tr bgcolor=#eeeeee><td colspan=2><tt><i>no template variables assigned</i></tt></td></tr> - {/section} - <tr bgcolor=#cccccc><td colspan=2><b>assigned config file variables (outer template scope):</b></td></tr> - {section name=config_vars loop=$_debug_config_keys} - <tr bgcolor={if %config_vars.index% is even}#eeeeee{else}#fafafa{/if}><td valign=top><tt><font color=maroon>{ldelim}#{$_debug_config_keys[config_vars]}#{rdelim}</font></tt></td><td><tt><font color=green>{$_debug_config_vals[config_vars]|@debug_print_var}</font></tt></td></tr> - {sectionelse} - <tr bgcolor=#eeeeee><td colspan=2><tt><i>no config vars assigned</i></tt></td></tr> - {/section} - </table> -</BODY></HTML> -{else} -<SCRIPT language=javascript> - if( self.name == '' ) {ldelim} - var title = 'Console'; - {rdelim} - else {ldelim} - var title = 'Console_' + self.name; - {rdelim} - _smarty_console = window.open("",title.value,"width=680,height=600,resizable,scrollbars=yes"); - _smarty_console.document.write("<HTML><HEAD><TITLE>Smarty Debug Console_"+self.name+"</TITLE></HEAD><BODY bgcolor=#ffffff>"); - _smarty_console.document.write("<table border=0 width=100%>"); - _smarty_console.document.write("<tr bgcolor=#cccccc><th colspan=2>Smarty Debug Console</th></tr>"); - _smarty_console.document.write("<tr bgcolor=#cccccc><td colspan=2><b>included templates & config files (load time in seconds):</b></td></tr>"); - {section name=templates loop=$_debug_tpls} - _smarty_console.document.write("<tr bgcolor={if %templates.index% is even}#eeeeee{else}#fafafa{/if}><td colspan=2><tt>{section name=indent loop=$_debug_tpls[templates].depth} {/section}<font color={if $_debug_tpls[templates].type eq "template"}brown{elseif $_debug_tpls[templates].type eq "insert"}black{else}green{/if}>{$_debug_tpls[templates].filename|escape:html|escape:javascript}</font>{if isset($_debug_tpls[templates].exec_time)} <font size=-1><i>({$_debug_tpls[templates].exec_time|string_format:"%.5f"}){if %templates.index% eq 0} (total){/if}</i></font>{/if}</tt></td></tr>"); - {sectionelse} - _smarty_console.document.write("<tr bgcolor=#eeeeee><td colspan=2><tt><i>no templates included</i></tt></td></tr>"); - {/section} - _smarty_console.document.write("<tr bgcolor=#cccccc><td colspan=2><b>assigned template variables:</b></td></tr>"); - {section name=vars loop=$_debug_keys} - _smarty_console.document.write("<tr bgcolor={if %vars.index% is even}#eeeeee{else}#fafafa{/if}><td valign=top><tt><font color=blue>{ldelim}${$_debug_keys[vars]}{rdelim}</font></tt></td><td nowrap><tt><font color=green>{$_debug_vals[vars]|@debug_print_var|escape:javascript}</font></tt></td></tr>"); - {sectionelse} - _smarty_console.document.write("<tr bgcolor=#eeeeee><td colspan=2><tt><i>no template variables assigned</i></tt></td></tr>"); - {/section} - _smarty_console.document.write("<tr bgcolor=#cccccc><td colspan=2><b>assigned config file variables (outer template scope):</b></td></tr>"); - {section name=config_vars loop=$_debug_config_keys} - _smarty_console.document.write("<tr bgcolor={if %config_vars.index% is even}#eeeeee{else}#fafafa{/if}><td valign=top><tt><font color=maroon>{ldelim}#{$_debug_config_keys[config_vars]}#{rdelim}</font></tt></td><td><tt><font color=green>{$_debug_config_vals[config_vars]|@debug_print_var|escape:javascript}</font></tt></td></tr>"); - {sectionelse} - _smarty_console.document.write("<tr bgcolor=#eeeeee><td colspan=2><tt><i>no config vars assigned</i></tt></td></tr>"); - {/section} - _smarty_console.document.write("</table>"); - _smarty_console.document.write("</BODY></HTML>"); - _smarty_console.document.close(); -</SCRIPT> -{/if} diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.assemble_plugin_filepath.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.assemble_plugin_filepath.php deleted file mode 100644 index 690d3ddbc..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.assemble_plugin_filepath.php +++ /dev/null @@ -1,67 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * assemble filepath of requested plugin - * - * @param string $type - * @param string $name - * @return string|false - */ -function smarty_core_assemble_plugin_filepath($params, &$smarty) -{ - static $_filepaths_cache = array(); - - $_plugin_filename = $params['type'] . '.' . $params['name'] . '.php'; - if (isset($_filepaths_cache[$_plugin_filename])) { - return $_filepaths_cache[$_plugin_filename]; - } - $_return = false; - - foreach ((array)$smarty->plugins_dir as $_plugin_dir) { - - $_plugin_filepath = $_plugin_dir . DIRECTORY_SEPARATOR . $_plugin_filename; - - // see if path is relative - if (!preg_match("/^([\/\\\\]|[a-zA-Z]:[\/\\\\])/", $_plugin_dir)) { - $_relative_paths[] = $_plugin_dir; - // relative path, see if it is in the SMARTY_DIR - if (@is_readable(SMARTY_DIR . $_plugin_filepath)) { - $_return = SMARTY_DIR . $_plugin_filepath; - break; - } - } - // try relative to cwd (or absolute) - if (@is_readable($_plugin_filepath)) { - $_return = $_plugin_filepath; - break; - } - } - - if($_return === false) { - // still not found, try PHP include_path - if(isset($_relative_paths)) { - foreach ((array)$_relative_paths as $_plugin_dir) { - - $_plugin_filepath = $_plugin_dir . DIRECTORY_SEPARATOR . $_plugin_filename; - - $_params = array('file_path' => $_plugin_filepath); - require_once(SMARTY_CORE_DIR . 'core.get_include_path.php'); - if(smarty_core_get_include_path($_params, $smarty)) { - $_return = $_params['new_file_path']; - break; - } - } - } - } - $_filepaths_cache[$_plugin_filename] = $_return; - return $_return; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.assign_smarty_interface.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.assign_smarty_interface.php deleted file mode 100644 index 7e65a73ec..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.assign_smarty_interface.php +++ /dev/null @@ -1,43 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Smarty assign_smarty_interface core plugin - * - * Type: core<br> - * Name: assign_smarty_interface<br> - * Purpose: assign the $smarty interface variable - * @param array Format: null - * @param Smarty - */ -function smarty_core_assign_smarty_interface($params, &$smarty) -{ - if (isset($smarty->_smarty_vars) && isset($smarty->_smarty_vars['request'])) { - return; - } - - $_globals_map = array('g' => 'HTTP_GET_VARS', - 'p' => 'HTTP_POST_VARS', - 'c' => 'HTTP_COOKIE_VARS', - 's' => 'HTTP_SERVER_VARS', - 'e' => 'HTTP_ENV_VARS'); - - $_smarty_vars_request = array(); - - foreach (preg_split('!!', strtolower($smarty->request_vars_order)) as $_c) { - if (isset($_globals_map[$_c])) { - $_smarty_vars_request = array_merge($_smarty_vars_request, $GLOBALS[$_globals_map[$_c]]); - } - } - $_smarty_vars_request = @array_merge($_smarty_vars_request, $GLOBALS['HTTP_SESSION_VARS']); - - $smarty->_smarty_vars['request'] = $_smarty_vars_request; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.create_dir_structure.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.create_dir_structure.php deleted file mode 100644 index 999cf5930..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.create_dir_structure.php +++ /dev/null @@ -1,79 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * create full directory structure - * - * @param string $dir - */ - -// $dir - -function smarty_core_create_dir_structure($params, &$smarty) -{ - if (!file_exists($params['dir'])) { - $_open_basedir_ini = ini_get('open_basedir'); - - if (DIRECTORY_SEPARATOR=='/') { - /* unix-style paths */ - $_dir = $params['dir']; - $_dir_parts = preg_split('!/+!', $_dir, -1, PREG_SPLIT_NO_EMPTY); - $_new_dir = ($_dir{0}=='/') ? '/' : getcwd().'/'; - if($_use_open_basedir = !empty($_open_basedir_ini)) { - $_open_basedirs = explode(':', $_open_basedir_ini); - } - - } else { - /* other-style paths */ - $_dir = str_replace('\\','/', $params['dir']); - $_dir_parts = preg_split('!/+!', $_dir, -1, PREG_SPLIT_NO_EMPTY); - if (preg_match('!^((//)|([a-zA-Z]:/))!', $_dir, $_root_dir)) { - /* leading "//" for network volume, or "[letter]:/" for full path */ - $_new_dir = $_root_dir[1]; - /* remove drive-letter from _dir_parts */ - if (isset($_root_dir[3])) array_shift($_dir_parts); - - } else { - $_new_dir = str_replace('\\', '/', getcwd()).'/'; - - } - - if($_use_open_basedir = !empty($_open_basedir_ini)) { - $_open_basedirs = explode(';', str_replace('\\', '/', $_open_basedir_ini)); - } - - } - - /* all paths use "/" only from here */ - foreach ($_dir_parts as $_dir_part) { - $_new_dir .= $_dir_part; - - if ($_use_open_basedir) { - // do not attempt to test or make directories outside of open_basedir - $_make_new_dir = false; - foreach ($_open_basedirs as $_open_basedir) { - if (substr($_new_dir, 0, strlen($_open_basedir)) == $_open_basedir) { - $_make_new_dir = true; - break; - } - } - } else { - $_make_new_dir = true; - } - - if ($_make_new_dir && !file_exists($_new_dir) && !@mkdir($_new_dir, $smarty->_dir_perms) && !is_dir($_new_dir)) { - $smarty->trigger_error("problem creating directory '" . $_new_dir . "'"); - return false; - } - $_new_dir .= '/'; - } - } -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.display_debug_console.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.display_debug_console.php deleted file mode 100644 index a5d72913c..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.display_debug_console.php +++ /dev/null @@ -1,61 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Smarty debug_console function plugin - * - * Type: core<br> - * Name: display_debug_console<br> - * Purpose: display the javascript debug console window - * @param array Format: null - * @param Smarty - */ -function smarty_core_display_debug_console($params, &$smarty) -{ - // we must force compile the debug template in case the environment - // changed between separate applications. - - if(empty($smarty->debug_tpl)) { - // set path to debug template from SMARTY_DIR - $smarty->debug_tpl = SMARTY_DIR . 'debug.tpl'; - if($smarty->security && is_file($smarty->debug_tpl)) { - $smarty->secure_dir[] = dirname(realpath($smarty->debug_tpl)); - } - $smarty->debug_tpl = 'file:' . SMARTY_DIR . 'debug.tpl'; - } - - $_ldelim_orig = $smarty->left_delimiter; - $_rdelim_orig = $smarty->right_delimiter; - - $smarty->left_delimiter = '{'; - $smarty->right_delimiter = '}'; - - $_compile_id_orig = $smarty->_compile_id; - $smarty->_compile_id = null; - - $_compile_path = $smarty->_get_compile_path($smarty->debug_tpl); - if ($smarty->_compile_resource($smarty->debug_tpl, $_compile_path)) - { - ob_start(); - $smarty->_include($_compile_path); - $_results = ob_get_contents(); - ob_end_clean(); - } else { - $_results = ''; - } - - $smarty->_compile_id = $_compile_id_orig; - - $smarty->left_delimiter = $_ldelim_orig; - $smarty->right_delimiter = $_rdelim_orig; - - return $_results; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.get_include_path.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.get_include_path.php deleted file mode 100644 index 43432412b..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.get_include_path.php +++ /dev/null @@ -1,44 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Get path to file from include_path - * - * @param string $file_path - * @param string $new_file_path - * @return boolean - * @staticvar array|null - */ - -// $file_path, &$new_file_path - -function smarty_core_get_include_path(&$params, &$smarty) -{ - static $_path_array = null; - - if(!isset($_path_array)) { - $_ini_include_path = ini_get('include_path'); - - if(strstr($_ini_include_path,';')) { - // windows pathnames - $_path_array = explode(';',$_ini_include_path); - } else { - $_path_array = explode(':',$_ini_include_path); - } - } - foreach ($_path_array as $_include_path) { - if (@is_readable($_include_path . DIRECTORY_SEPARATOR . $params['file_path'])) { - $params['new_file_path'] = $_include_path . DIRECTORY_SEPARATOR . $params['file_path']; - return true; - } - } - return false; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.get_microtime.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.get_microtime.php deleted file mode 100644 index f1a28e042..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.get_microtime.php +++ /dev/null @@ -1,23 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Get seconds and microseconds - * @return double - */ -function smarty_core_get_microtime($params, &$smarty) -{ - $mtime = microtime(); - $mtime = explode(" ", $mtime); - $mtime = (double)($mtime[1]) + (double)($mtime[0]); - return ($mtime); -} - - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.get_php_resource.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.get_php_resource.php deleted file mode 100644 index 786d4e78e..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.get_php_resource.php +++ /dev/null @@ -1,80 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Retrieves PHP script resource - * - * sets $php_resource to the returned resource - * @param string $resource - * @param string $resource_type - * @param $php_resource - * @return boolean - */ - -function smarty_core_get_php_resource(&$params, &$smarty) -{ - - $params['resource_base_path'] = $smarty->trusted_dir; - $smarty->_parse_resource_name($params, $smarty); - - /* - * Find out if the resource exists. - */ - - if ($params['resource_type'] == 'file') { - $_readable = false; - if(file_exists($params['resource_name']) && is_readable($params['resource_name'])) { - $_readable = true; - } else { - // test for file in include_path - $_params = array('file_path' => $params['resource_name']); - require_once(SMARTY_CORE_DIR . 'core.get_include_path.php'); - if(smarty_core_get_include_path($_params, $smarty)) { - $_include_path = $_params['new_file_path']; - $_readable = true; - } - } - } else if ($params['resource_type'] != 'file') { - $_template_source = null; - $_readable = is_callable($smarty->_plugins['resource'][$params['resource_type']][0][0]) - && call_user_func_array($smarty->_plugins['resource'][$params['resource_type']][0][0], - array($params['resource_name'], &$_template_source, &$smarty)); - } - - /* - * Set the error function, depending on which class calls us. - */ - if (method_exists($smarty, '_syntax_error')) { - $_error_funcc = '_syntax_error'; - } else { - $_error_funcc = 'trigger_error'; - } - - if ($_readable) { - if ($smarty->security) { - require_once(SMARTY_CORE_DIR . 'core.is_trusted.php'); - if (!smarty_core_is_trusted($params, $smarty)) { - $smarty->$_error_funcc('(secure mode) ' . $params['resource_type'] . ':' . $params['resource_name'] . ' is not trusted'); - return false; - } - } - } else { - $smarty->$_error_funcc($params['resource_type'] . ':' . $params['resource_name'] . ' is not readable'); - return false; - } - - if ($params['resource_type'] == 'file') { - $params['php_resource'] = $params['resource_name']; - } else { - $params['php_resource'] = $_template_source; - } - return true; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.is_secure.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.is_secure.php deleted file mode 100644 index 342f3aff8..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.is_secure.php +++ /dev/null @@ -1,56 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * determines if a resource is secure or not. - * - * @param string $resource_type - * @param string $resource_name - * @return boolean - */ - -// $resource_type, $resource_name - -function smarty_core_is_secure($params, &$smarty) -{ - if (!$smarty->security || $smarty->security_settings['INCLUDE_ANY']) { - return true; - } - - if ($params['resource_type'] == 'file') { - $_rp = realpath($params['resource_name']); - if (isset($params['resource_base_path'])) { - foreach ((array)$params['resource_base_path'] as $curr_dir) { - if ( ($_cd = realpath($curr_dir)) !== false && - strncmp($_rp, $_cd, strlen($_cd)) == 0 && - $_rp{strlen($_cd)} == DIRECTORY_SEPARATOR ) { - return true; - } - } - } - if (!empty($smarty->secure_dir)) { - foreach ((array)$smarty->secure_dir as $curr_dir) { - if ( ($_cd = realpath($curr_dir)) !== false && - strncmp($_rp, $_cd, strlen($_cd)) == 0 && - $_rp{strlen($_cd)} == DIRECTORY_SEPARATOR ) { - return true; - } - } - } - } else { - // resource is not on local file system - return call_user_func_array( - $smarty->_plugins['resource'][$params['resource_type']][0][2], - array($params['resource_name'], &$smarty)); - } - - return false; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.is_trusted.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.is_trusted.php deleted file mode 100644 index f0bd2fb8c..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.is_trusted.php +++ /dev/null @@ -1,47 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * determines if a resource is trusted or not - * - * @param string $resource_type - * @param string $resource_name - * @return boolean - */ - - // $resource_type, $resource_name - -function smarty_core_is_trusted($params, &$smarty) -{ - $_smarty_trusted = false; - if ($params['resource_type'] == 'file') { - if (!empty($smarty->trusted_dir)) { - $_rp = realpath($params['resource_name']); - foreach ((array)$smarty->trusted_dir as $curr_dir) { - if (!empty($curr_dir) && is_readable ($curr_dir)) { - $_cd = realpath($curr_dir); - if (strncmp($_rp, $_cd, strlen($_cd)) == 0 - && $_rp{strlen($_cd)} == DIRECTORY_SEPARATOR ) { - $_smarty_trusted = true; - break; - } - } - } - } - - } else { - // resource is not on local file system - $_smarty_trusted = call_user_func_array($smarty->_plugins['resource'][$params['resource_type']][0][3], - array($params['resource_name'], $smarty)); - } - - return $_smarty_trusted; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.load_plugins.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.load_plugins.php deleted file mode 100644 index 6db1dc51d..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.load_plugins.php +++ /dev/null @@ -1,125 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Load requested plugins - * - * @param array $plugins - */ - -// $plugins - -function smarty_core_load_plugins($params, &$smarty) -{ - - foreach ($params['plugins'] as $_plugin_info) { - list($_type, $_name, $_tpl_file, $_tpl_line, $_delayed_loading) = $_plugin_info; - $_plugin = &$smarty->_plugins[$_type][$_name]; - - /* - * We do not load plugin more than once for each instance of Smarty. - * The following code checks for that. The plugin can also be - * registered dynamically at runtime, in which case template file - * and line number will be unknown, so we fill them in. - * - * The final element of the info array is a flag that indicates - * whether the dynamically registered plugin function has been - * checked for existence yet or not. - */ - if (isset($_plugin)) { - if (empty($_plugin[3])) { - if (!is_callable($_plugin[0])) { - $smarty->_trigger_fatal_error("[plugin] $_type '$_name' is not implemented", $_tpl_file, $_tpl_line, __FILE__, __LINE__); - } else { - $_plugin[1] = $_tpl_file; - $_plugin[2] = $_tpl_line; - $_plugin[3] = true; - if (!isset($_plugin[4])) $_plugin[4] = true; /* cacheable */ - } - } - continue; - } else if ($_type == 'insert') { - /* - * For backwards compatibility, we check for insert functions in - * the symbol table before trying to load them as a plugin. - */ - $_plugin_func = 'insert_' . $_name; - if (function_exists($_plugin_func)) { - $_plugin = array($_plugin_func, $_tpl_file, $_tpl_line, true, false); - continue; - } - } - - $_plugin_file = $smarty->_get_plugin_filepath($_type, $_name); - - if (! $_found = ($_plugin_file != false)) { - $_message = "could not load plugin file '$_type.$_name.php'\n"; - } - - /* - * If plugin file is found, it -must- provide the properly named - * plugin function. In case it doesn't, simply output the error and - * do not fall back on any other method. - */ - if ($_found) { - include_once $_plugin_file; - - $_plugin_func = 'smarty_' . $_type . '_' . $_name; - if (!function_exists($_plugin_func)) { - $smarty->_trigger_fatal_error("[plugin] function $_plugin_func() not found in $_plugin_file", $_tpl_file, $_tpl_line, __FILE__, __LINE__); - continue; - } - } - /* - * In case of insert plugins, their code may be loaded later via - * 'script' attribute. - */ - else if ($_type == 'insert' && $_delayed_loading) { - $_plugin_func = 'smarty_' . $_type . '_' . $_name; - $_found = true; - } - - /* - * Plugin specific processing and error checking. - */ - if (!$_found) { - if ($_type == 'modifier') { - /* - * In case modifier falls back on using PHP functions - * directly, we only allow those specified in the security - * context. - */ - if ($smarty->security && !in_array($_name, $smarty->security_settings['MODIFIER_FUNCS'])) { - $_message = "(secure mode) modifier '$_name' is not allowed"; - } else { - if (!function_exists($_name)) { - $_message = "modifier '$_name' is not implemented"; - } else { - $_plugin_func = $_name; - $_found = true; - } - } - } else if ($_type == 'function') { - /* - * This is a catch-all situation. - */ - $_message = "unknown tag - '$_name'"; - } - } - - if ($_found) { - $smarty->_plugins[$_type][$_name] = array($_plugin_func, $_tpl_file, $_tpl_line, true, true); - } else { - // output error - $smarty->_trigger_fatal_error('[plugin] ' . $_message, $_tpl_file, $_tpl_line, __FILE__, __LINE__); - } - } -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.load_resource_plugin.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.load_resource_plugin.php deleted file mode 100644 index a7d37d1af..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.load_resource_plugin.php +++ /dev/null @@ -1,74 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * load a resource plugin - * - * @param string $type - */ - -// $type - -function smarty_core_load_resource_plugin($params, &$smarty) -{ - /* - * Resource plugins are not quite like the other ones, so they are - * handled differently. The first element of plugin info is the array of - * functions provided by the plugin, the second one indicates whether - * all of them exist or not. - */ - - $_plugin = &$smarty->_plugins['resource'][$params['type']]; - if (isset($_plugin)) { - if (!$_plugin[1] && count($_plugin[0])) { - $_plugin[1] = true; - foreach ($_plugin[0] as $_plugin_func) { - if (!is_callable($_plugin_func)) { - $_plugin[1] = false; - break; - } - } - } - - if (!$_plugin[1]) { - $smarty->_trigger_fatal_error("[plugin] resource '" . $params['type'] . "' is not implemented", null, null, __FILE__, __LINE__); - } - - return; - } - - $_plugin_file = $smarty->_get_plugin_filepath('resource', $params['type']); - $_found = ($_plugin_file != false); - - if ($_found) { /* - * If the plugin file is found, it -must- provide the properly named - * plugin functions. - */ - include_once($_plugin_file); - - /* - * Locate functions that we require the plugin to provide. - */ - $_resource_ops = array('source', 'timestamp', 'secure', 'trusted'); - $_resource_funcs = array(); - foreach ($_resource_ops as $_op) { - $_plugin_func = 'smarty_resource_' . $params['type'] . '_' . $_op; - if (!function_exists($_plugin_func)) { - $smarty->_trigger_fatal_error("[plugin] function $_plugin_func() not found in $_plugin_file", null, null, __FILE__, __LINE__); - return; - } else { - $_resource_funcs[] = $_plugin_func; - } - } - - $smarty->_plugins['resource'][$params['type']] = array($_resource_funcs, true); - } -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.process_cached_inserts.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.process_cached_inserts.php deleted file mode 100644 index 29cb007eb..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.process_cached_inserts.php +++ /dev/null @@ -1,71 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Replace cached inserts with the actual results - * - * @param string $results - * @return string - */ -function smarty_core_process_cached_inserts($params, &$smarty) -{ - preg_match_all('!'.$smarty->_smarty_md5.'{insert_cache (.*)}'.$smarty->_smarty_md5.'!Uis', - $params['results'], $match); - list($cached_inserts, $insert_args) = $match; - - for ($i = 0, $for_max = count($cached_inserts); $i < $for_max; $i++) { - if ($smarty->debugging) { - $_params = array(); - require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); - $debug_start_time = smarty_core_get_microtime($_params, $smarty); - } - - $args = unserialize($insert_args[$i]); - $name = $args['name']; - - if (isset($args['script'])) { - $_params = array('resource_name' => $smarty->_dequote($args['script'])); - require_once(SMARTY_CORE_DIR . 'core.get_php_resource.php'); - if(!smarty_core_get_php_resource($_params, $smarty)) { - return false; - } - $resource_type = $_params['resource_type']; - $php_resource = $_params['php_resource']; - - - if ($resource_type == 'file') { - $smarty->_include($php_resource, true); - } else { - $smarty->_eval($php_resource); - } - } - - $function_name = $smarty->_plugins['insert'][$name][0]; - if (empty($args['assign'])) { - $replace = $function_name($args, $smarty); - } else { - $smarty->assign($args['assign'], $function_name($args, $smarty)); - $replace = ''; - } - - $params['results'] = str_replace($cached_inserts[$i], $replace, $params['results']); - if ($smarty->debugging) { - $_params = array(); - require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); - $smarty->_smarty_debug_info[] = array('type' => 'insert', - 'filename' => 'insert_'.$name, - 'depth' => $smarty->_inclusion_depth, - 'exec_time' => smarty_core_get_microtime($_params, $smarty) - $debug_start_time); - } - } - - return $params['results']; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.process_compiled_include.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.process_compiled_include.php deleted file mode 100644 index 3e1d4c15a..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.process_compiled_include.php +++ /dev/null @@ -1,32 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Replace nocache-tags by results of the corresponding non-cacheable - * functions and return it - * - * @param string $compiled_tpl - * @param string $cached_source - * @return string - */ - -function smarty_core_process_compiled_include($params, &$smarty) -{ - $_cache_including = $smarty->_cache_including; - $smarty->_cache_including = true; - - $_return = $params['results']; - foreach ($smarty->_cache_serials as $_include_file_path=>$_cache_serial) { - $_return = preg_replace_callback('!(\{nocache\:('.$_cache_serial.')#(\d+)\})!s', - array(&$smarty, '_process_compiled_include_callback'), - $_return); - } - $smarty->_cache_including = $_cache_including; - return $_return; -} - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.read_cache_file.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.read_cache_file.php deleted file mode 100644 index 2ab428111..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.read_cache_file.php +++ /dev/null @@ -1,111 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * read a cache file, determine if it needs to be - * regenerated or not - * - * @param string $tpl_file - * @param string $cache_id - * @param string $compile_id - * @param string $results - * @return boolean - */ - -// $tpl_file, $cache_id, $compile_id, &$results - -function smarty_core_read_cache_file(&$params, &$smarty) -{ - static $content_cache = array(); - - if ($smarty->force_compile) { - // force compile enabled, always regenerate - return false; - } - - if (isset($content_cache[$params['tpl_file'].','.$params['cache_id'].','.$params['compile_id']])) { - list($params['results'], $smarty->_cache_info) = $content_cache[$params['tpl_file'].','.$params['cache_id'].','.$params['compile_id']]; - return true; - } - - if (!empty($smarty->cache_handler_func)) { - // use cache_handler function - call_user_func_array($smarty->cache_handler_func, - array('read', &$smarty, &$params['results'], $params['tpl_file'], $params['cache_id'], $params['compile_id'], null)); - } else { - // use local cache file - $_auto_id = $smarty->_get_auto_id($params['cache_id'], $params['compile_id']); - $_cache_file = $smarty->_get_auto_filename($smarty->cache_dir, $params['tpl_file'], $_auto_id); - $params['results'] = $smarty->_read_file($_cache_file); - } - - if (empty($params['results'])) { - // nothing to parse (error?), regenerate cache - return false; - } - - $cache_split = explode("\n", $params['results'], 2); - $cache_header = $cache_split[0]; - - $_cache_info = unserialize($cache_header); - - if ($smarty->caching == 2 && isset ($_cache_info['expires'])){ - // caching by expiration time - if ($_cache_info['expires'] > -1 && (time() > $_cache_info['expires'])) { - // cache expired, regenerate - return false; - } - } else { - // caching by lifetime - if ($smarty->cache_lifetime > -1 && (time() - $_cache_info['timestamp'] > $smarty->cache_lifetime)) { - // cache expired, regenerate - return false; - } - } - - if ($smarty->compile_check) { - $_params = array('get_source' => false, 'quiet'=>true); - foreach (array_keys($_cache_info['template']) as $_template_dep) { - $_params['resource_name'] = $_template_dep; - if (!$smarty->_fetch_resource_info($_params) || $_cache_info['timestamp'] < $_params['resource_timestamp']) { - // template file has changed, regenerate cache - return false; - } - } - - if (isset($_cache_info['config'])) { - $_params = array('resource_base_path' => $smarty->config_dir, 'get_source' => false, 'quiet'=>true); - foreach (array_keys($_cache_info['config']) as $_config_dep) { - $_params['resource_name'] = $_config_dep; - if (!$smarty->_fetch_resource_info($_params) || $_cache_info['timestamp'] < $_params['resource_timestamp']) { - // config file has changed, regenerate cache - return false; - } - } - } - } - - foreach ($_cache_info['cache_serials'] as $_include_file_path=>$_cache_serial) { - if (empty($smarty->_cache_serials[$_include_file_path])) { - $smarty->_include($_include_file_path, true); - } - - if ($smarty->_cache_serials[$_include_file_path] != $_cache_serial) { - /* regenerate */ - return false; - } - } - $params['results'] = $cache_split[1]; - $content_cache[$params['tpl_file'].','.$params['cache_id'].','.$params['compile_id']] = array($params['results'], $_cache_info); - - $smarty->_cache_info = $_cache_info; - return true; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.rm_auto.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.rm_auto.php deleted file mode 100644 index b251f6491..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.rm_auto.php +++ /dev/null @@ -1,71 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * delete an automagically created file by name and id - * - * @param string $auto_base - * @param string $auto_source - * @param string $auto_id - * @param integer $exp_time - * @return boolean - */ - -// $auto_base, $auto_source = null, $auto_id = null, $exp_time = null - -function smarty_core_rm_auto($params, &$smarty) -{ - if (!@is_dir($params['auto_base'])) - return false; - - if(!isset($params['auto_id']) && !isset($params['auto_source'])) { - $_params = array( - 'dirname' => $params['auto_base'], - 'level' => 0, - 'exp_time' => $params['exp_time'] - ); - require_once(SMARTY_CORE_DIR . 'core.rmdir.php'); - $_res = smarty_core_rmdir($_params, $smarty); - } else { - $_tname = $smarty->_get_auto_filename($params['auto_base'], $params['auto_source'], $params['auto_id']); - - if(isset($params['auto_source'])) { - if (isset($params['extensions'])) { - $_res = false; - foreach ((array)$params['extensions'] as $_extension) - $_res |= $smarty->_unlink($_tname.$_extension, $params['exp_time']); - } else { - $_res = $smarty->_unlink($_tname, $params['exp_time']); - } - } elseif ($smarty->use_sub_dirs) { - $_params = array( - 'dirname' => $_tname, - 'level' => 1, - 'exp_time' => $params['exp_time'] - ); - require_once(SMARTY_CORE_DIR . 'core.rmdir.php'); - $_res = smarty_core_rmdir($_params, $smarty); - } else { - // remove matching file names - $_handle = opendir($params['auto_base']); - $_res = true; - while (false !== ($_filename = readdir($_handle))) { - if($_filename == '.' || $_filename == '..') { - continue; - } elseif (substr($params['auto_base'] . DIRECTORY_SEPARATOR . $_filename, 0, strlen($_tname)) == $_tname) { - $_res &= (bool)$smarty->_unlink($params['auto_base'] . DIRECTORY_SEPARATOR . $_filename, $params['exp_time']); - } - } - } - } - - return $_res; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.rmdir.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.rmdir.php deleted file mode 100644 index 4fdbccc95..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.rmdir.php +++ /dev/null @@ -1,55 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * delete a dir recursively (level=0 -> keep root) - * WARNING: no tests, it will try to remove what you tell it! - * - * @param string $dirname - * @param integer $level - * @param integer $exp_time - * @return boolean - */ - -// $dirname, $level = 1, $exp_time = null - -function smarty_core_rmdir($params, &$smarty) -{ - if(!isset($params['level'])) { $params['level'] = 1; } - if(!isset($params['exp_time'])) { $params['exp_time'] = null; } - - if($_handle = @opendir($params['dirname'])) { - - while (false !== ($_entry = readdir($_handle))) { - if ($_entry != '.' && $_entry != '..') { - if (@is_dir($params['dirname'] . DIRECTORY_SEPARATOR . $_entry)) { - $_params = array( - 'dirname' => $params['dirname'] . DIRECTORY_SEPARATOR . $_entry, - 'level' => $params['level'] + 1, - 'exp_time' => $params['exp_time'] - ); - require_once(SMARTY_CORE_DIR . 'core.rmdir.php'); - smarty_core_rmdir($_params, $smarty); - } - else { - $smarty->_unlink($params['dirname'] . DIRECTORY_SEPARATOR . $_entry, $params['exp_time']); - } - } - } - closedir($_handle); - } - - if ($params['level']) { - return @rmdir($params['dirname']); - } - return (bool)$_handle; - -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.run_insert_handler.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.run_insert_handler.php deleted file mode 100644 index 71c384508..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.run_insert_handler.php +++ /dev/null @@ -1,71 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Handle insert tags - * - * @param array $args - * @return string - */ -function smarty_core_run_insert_handler($params, &$smarty) -{ - - require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); - if ($smarty->debugging) { - $_params = array(); - $_debug_start_time = smarty_core_get_microtime($_params, $smarty); - } - - if ($smarty->caching) { - $_arg_string = serialize($params['args']); - $_name = $params['args']['name']; - if (!isset($smarty->_cache_info['insert_tags'][$_name])) { - $smarty->_cache_info['insert_tags'][$_name] = array('insert', - $_name, - $smarty->_plugins['insert'][$_name][1], - $smarty->_plugins['insert'][$_name][2], - !empty($params['args']['script']) ? true : false); - } - return $smarty->_smarty_md5."{insert_cache $_arg_string}".$smarty->_smarty_md5; - } else { - if (isset($params['args']['script'])) { - $_params = array('resource_name' => $smarty->_dequote($params['args']['script'])); - require_once(SMARTY_CORE_DIR . 'core.get_php_resource.php'); - if(!smarty_core_get_php_resource($_params, $smarty)) { - return false; - } - - if ($_params['resource_type'] == 'file') { - $smarty->_include($_params['php_resource'], true); - } else { - $smarty->_eval($_params['php_resource']); - } - unset($params['args']['script']); - } - - $_funcname = $smarty->_plugins['insert'][$params['args']['name']][0]; - $_content = $_funcname($params['args'], $smarty); - if ($smarty->debugging) { - $_params = array(); - require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); - $smarty->_smarty_debug_info[] = array('type' => 'insert', - 'filename' => 'insert_'.$params['args']['name'], - 'depth' => $smarty->_inclusion_depth, - 'exec_time' => smarty_core_get_microtime($_params, $smarty) - $_debug_start_time); - } - - if (!empty($params['args']["assign"])) { - $smarty->assign($params['args']["assign"], $_content); - } else { - return $_content; - } - } -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.smarty_include_php.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.smarty_include_php.php deleted file mode 100644 index 30c6e7654..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.smarty_include_php.php +++ /dev/null @@ -1,50 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * called for included php files within templates - * - * @param string $smarty_file - * @param string $smarty_assign variable to assign the included template's - * output into - * @param boolean $smarty_once uses include_once if this is true - * @param array $smarty_include_vars associative array of vars from - * {include file="blah" var=$var} - */ - -// $file, $assign, $once, $_smarty_include_vars - -function smarty_core_smarty_include_php($params, &$smarty) -{ - $_params = array('resource_name' => $params['smarty_file']); - require_once(SMARTY_CORE_DIR . 'core.get_php_resource.php'); - smarty_core_get_php_resource($_params, $smarty); - $_smarty_resource_type = $_params['resource_type']; - $_smarty_php_resource = $_params['php_resource']; - - if (!empty($params['smarty_assign'])) { - ob_start(); - if ($_smarty_resource_type == 'file') { - $smarty->_include($_smarty_php_resource, $params['smarty_once'], $params['smarty_include_vars']); - } else { - $smarty->_eval($_smarty_php_resource, $params['smarty_include_vars']); - } - $smarty->assign($params['smarty_assign'], ob_get_contents()); - ob_end_clean(); - } else { - if ($_smarty_resource_type == 'file') { - $smarty->_include($_smarty_php_resource, $params['smarty_once'], $params['smarty_include_vars']); - } else { - $smarty->_eval($_smarty_php_resource, $params['smarty_include_vars']); - } - } -} - - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_cache_file.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_cache_file.php deleted file mode 100644 index d7a828492..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_cache_file.php +++ /dev/null @@ -1,95 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Prepend the cache information to the cache file - * and write it - * - * @param string $tpl_file - * @param string $cache_id - * @param string $compile_id - * @param string $results - * @return true|null - */ - - // $tpl_file, $cache_id, $compile_id, $results - -function smarty_core_write_cache_file($params, &$smarty) -{ - - // put timestamp in cache header - $smarty->_cache_info['timestamp'] = time(); - if ($smarty->cache_lifetime > -1){ - // expiration set - $smarty->_cache_info['expires'] = $smarty->_cache_info['timestamp'] + $smarty->cache_lifetime; - } else { - // cache will never expire - $smarty->_cache_info['expires'] = -1; - } - - // collapse nocache.../nocache-tags - if (preg_match_all('!\{(/?)nocache\:[0-9a-f]{32}#\d+\}!', $params['results'], $match, PREG_PATTERN_ORDER)) { - // remove everything between every pair of outermost noache.../nocache-tags - // and replace it by a single nocache-tag - // this new nocache-tag will be replaced by dynamic contents in - // smarty_core_process_compiled_includes() on a cache-read - - $match_count = count($match[0]); - $results = preg_split('!(\{/?nocache\:[0-9a-f]{32}#\d+\})!', $params['results'], -1, PREG_SPLIT_DELIM_CAPTURE); - - $level = 0; - $j = 0; - for ($i=0, $results_count = count($results); $i < $results_count && $j < $match_count; $i++) { - if ($results[$i] == $match[0][$j]) { - // nocache tag - if ($match[1][$j]) { // closing tag - $level--; - unset($results[$i]); - } else { // opening tag - if ($level++ > 0) unset($results[$i]); - } - $j++; - } elseif ($level > 0) { - unset($results[$i]); - } - } - $params['results'] = implode('', $results); - } - $smarty->_cache_info['cache_serials'] = $smarty->_cache_serials; - - // prepend the cache header info into cache file - $params['results'] = serialize($smarty->_cache_info)."\n".$params['results']; - - if (!empty($smarty->cache_handler_func)) { - // use cache_handler function - call_user_func_array($smarty->cache_handler_func, - array('write', &$smarty, &$params['results'], $params['tpl_file'], $params['cache_id'], $params['compile_id'], null)); - } else { - // use local cache file - - if(!@is_writable($smarty->cache_dir)) { - // cache_dir not writable, see if it exists - if(!@is_dir($smarty->cache_dir)) { - $smarty->trigger_error('the $cache_dir \'' . $smarty->cache_dir . '\' does not exist, or is not a directory.', E_USER_ERROR); - return false; - } - $smarty->trigger_error('unable to write to $cache_dir \'' . realpath($smarty->cache_dir) . '\'. Be sure $cache_dir is writable by the web server user.', E_USER_ERROR); - return false; - } - - $_auto_id = $smarty->_get_auto_id($params['cache_id'], $params['compile_id']); - $_cache_file = $smarty->_get_auto_filename($smarty->cache_dir, $params['tpl_file'], $_auto_id); - $_params = array('filename' => $_cache_file, 'contents' => $params['results'], 'create_dirs' => true); - require_once(SMARTY_CORE_DIR . 'core.write_file.php'); - smarty_core_write_file($_params, $smarty); - return true; - } -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_compiled_include.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_compiled_include.php deleted file mode 100644 index d17bee11c..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_compiled_include.php +++ /dev/null @@ -1,79 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Extract non-cacheable parts out of compiled template and write it - * - * @param string $compile_path - * @param string $template_compiled - * @return boolean - */ - -function smarty_core_write_compiled_include($params, &$smarty) -{ - $_tag_start = 'if \(\$this->caching && \!\$this->_cache_including\) \{ echo \'\{nocache\:('.$params['cache_serial'].')#(\d+)\}\';\}'; - $_tag_end = 'if \(\$this->caching && \!\$this->_cache_including\) \{ echo \'\{/nocache\:(\\2)#(\\3)\}\';\}'; - - preg_match_all('!('.$_tag_start.'(.*)'.$_tag_end.')!Us', - $params['compiled_content'], $_match_source, PREG_SET_ORDER); - - // no nocache-parts found: done - if (count($_match_source)==0) return; - - // convert the matched php-code to functions - $_include_compiled = "<?php /* Smarty version ".$smarty->_version.", created on ".strftime("%Y-%m-%d %H:%M:%S")."\n"; - $_include_compiled .= " compiled from " . strtr(urlencode($params['resource_name']), array('%2F'=>'/', '%3A'=>':')) . " */\n\n"; - - $_compile_path = $params['include_file_path']; - - $smarty->_cache_serials[$_compile_path] = $params['cache_serial']; - $_include_compiled .= "\$this->_cache_serials['".$_compile_path."'] = '".$params['cache_serial']."';\n\n?>"; - - $_include_compiled .= $params['plugins_code']; - $_include_compiled .= "<?php"; - - $this_varname = ((double)phpversion() >= 5.0) ? '_smarty' : 'this'; - for ($_i = 0, $_for_max = count($_match_source); $_i < $_for_max; $_i++) { - $_match =& $_match_source[$_i]; - $source = $_match[4]; - if ($this_varname == '_smarty') { - /* rename $this to $_smarty in the sourcecode */ - $tokens = token_get_all('<?php ' . $_match[4]); - array_shift($tokens); /* remove the opening <.?.php */ - for ($i=0, $count = count($tokens); $i < $count; $i++) { - if (is_array($tokens[$i])) { - if ($tokens[$i][0] == T_VARIABLE && $tokens[$i][1] == '$this') { - $tokens[$i] = '$' . $this_varname; - } else { - $tokens[$i] = $tokens[$i][1]; - } - } - } - $source = implode('', $tokens); - } - - /* add function to compiled include */ - $_include_compiled .= " -function _smarty_tplfunc_$_match[2]_$_match[3](&\$$this_varname) -{ -$source -} - -"; - } - $_include_compiled .= "\n\n?>\n"; - - $_params = array('filename' => $_compile_path, - 'contents' => $_include_compiled, 'create_dirs' => true); - - require_once(SMARTY_CORE_DIR . 'core.write_file.php'); - smarty_core_write_file($_params, $smarty); - return true; -} - - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_compiled_resource.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_compiled_resource.php deleted file mode 100644 index b902eff3c..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_compiled_resource.php +++ /dev/null @@ -1,35 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * write the compiled resource - * - * @param string $compile_path - * @param string $compiled_content - * @return true - */ -function smarty_core_write_compiled_resource($params, &$smarty) -{ - if(!@is_writable($smarty->compile_dir)) { - // compile_dir not writable, see if it exists - if(!@is_dir($smarty->compile_dir)) { - $smarty->trigger_error('the $compile_dir \'' . $smarty->compile_dir . '\' does not exist, or is not a directory.', E_USER_ERROR); - return false; - } - $smarty->trigger_error('unable to write to $compile_dir \'' . realpath($smarty->compile_dir) . '\'. Be sure $compile_dir is writable by the web server user.', E_USER_ERROR); - return false; - } - - $_params = array('filename' => $params['compile_path'], 'contents' => $params['compiled_content'], 'create_dirs' => true); - require_once(SMARTY_CORE_DIR . 'core.write_file.php'); - smarty_core_write_file($_params, $smarty); - return true; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_file.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_file.php deleted file mode 100644 index 09e169840..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/internals/core.write_file.php +++ /dev/null @@ -1,54 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * write out a file to disk - * - * @param string $filename - * @param string $contents - * @param boolean $create_dirs - * @return boolean - */ -function smarty_core_write_file($params, &$smarty) -{ - $_dirname = dirname($params['filename']); - - if ($params['create_dirs']) { - $_params = array('dir' => $_dirname); - require_once(SMARTY_CORE_DIR . 'core.create_dir_structure.php'); - smarty_core_create_dir_structure($_params, $smarty); - } - - // write to tmp file, then rename it to avoid - // file locking race condition - $_tmp_file = tempnam($_dirname, 'wrt'); - - if (!($fd = @fopen($_tmp_file, 'wb'))) { - $_tmp_file = $_dirname . DIRECTORY_SEPARATOR . uniqid('wrt'); - if (!($fd = @fopen($_tmp_file, 'wb'))) { - $smarty->trigger_error("problem writing temporary file '$_tmp_file'"); - return false; - } - } - - fwrite($fd, $params['contents']); - fclose($fd); - - // Delete the file if it allready exists (this is needed on Win, - // because it cannot overwrite files with rename() - if (file_exists($params['filename'])) { - @unlink($params['filename']); - } - @rename($_tmp_file, $params['filename']); - @chmod($params['filename'], $smarty->_file_perms); - - return true; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/block.textformat.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/block.textformat.php deleted file mode 100644 index aaebab2f5..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/block.textformat.php +++ /dev/null @@ -1,102 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Smarty {textformat}{/textformat} block plugin - * - * Type: block function<br> - * Name: textformat<br> - * Purpose: format text a certain way with preset styles - * or custom wrap/indent settings<br> - * @link http://smarty.php.net/manual/en/language.function.textformat.php {textformat} - * (Smarty online manual) - * @param array - * <pre> - * Params: style: string (email) - * indent: integer (0) - * wrap: integer (80) - * wrap_char string ("\n") - * indent_char: string (" ") - * wrap_boundary: boolean (true) - * </pre> - * @param string contents of the block - * @param Smarty clever simulation of a method - * @return string string $content re-formatted - */ -function smarty_block_textformat($params, $content, &$smarty) -{ - if (is_null($content)) { - return; - } - - $style = null; - $indent = 0; - $indent_first = 0; - $indent_char = ' '; - $wrap = 80; - $wrap_char = "\n"; - $wrap_cut = false; - $assign = null; - - foreach ($params as $_key => $_val) { - switch ($_key) { - case 'style': - case 'indent_char': - case 'wrap_char': - case 'assign': - $$_key = (string)$_val; - break; - - case 'indent': - case 'indent_first': - case 'wrap': - $$_key = (int)$_val; - break; - - case 'wrap_cut': - $$_key = (bool)$_val; - break; - - default: - $smarty->trigger_error("textformat: unknown attribute '$_key'"); - } - } - - if ($style == 'email') { - $wrap = 72; - } - - // split into paragraphs - $_paragraphs = preg_split('![\r\n][\r\n]!',$content); - $_output = ''; - - for($_x = 0, $_y = count($_paragraphs); $_x < $_y; $_x++) { - if ($_paragraphs[$_x] == '') { - continue; - } - // convert mult. spaces & special chars to single space - $_paragraphs[$_x] = preg_replace(array('!\s+!','!(^\s+)|(\s+$)!'), array(' ',''), $_paragraphs[$_x]); - // indent first line - if($indent_first > 0) { - $_paragraphs[$_x] = str_repeat($indent_char, $indent_first) . $_paragraphs[$_x]; - } - // wordwrap sentences - $_paragraphs[$_x] = wordwrap($_paragraphs[$_x], $wrap - $indent, $wrap_char, $wrap_cut); - // indent lines - if($indent > 0) { - $_paragraphs[$_x] = preg_replace('!^!m', str_repeat($indent_char, $indent), $_paragraphs[$_x]); - } - } - $_output = implode($wrap_char . $wrap_char, $_paragraphs); - - return $assign ? $smarty->assign($assign, $_output) : $_output; - -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/compiler.assign.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/compiler.assign.php deleted file mode 100644 index 2e0201779..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/compiler.assign.php +++ /dev/null @@ -1,38 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Smarty {assign} compiler function plugin - * - * Type: compiler function<br> - * Name: assign<br> - * Purpose: assign a value to a template variable - * @link http://smarty.php.net/manual/en/language.custom.functions.php#LANGUAGE.FUNCTION.ASSIGN {assign} - * (Smarty online manual) - * @param string containing var-attribute and value-attribute - * @param Smarty_Compiler - */ -function smarty_compiler_assign($tag_attrs, &$compiler) -{ - $_params = $compiler->_parse_attrs($tag_attrs); - - if (!isset($_params['var'])) { - $compiler->_syntax_error("assign: missing 'var' parameter", E_USER_WARNING); - return; - } - - if (!isset($_params['value'])) { - $compiler->_syntax_error("assign: missing 'value' parameter", E_USER_WARNING); - return; - } - - return "\$this->assign({$_params['var']}, {$_params['value']});"; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.assign_debug_info.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.assign_debug_info.php deleted file mode 100644 index 8015624b1..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.assign_debug_info.php +++ /dev/null @@ -1,39 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Smarty {assign_debug_info} function plugin - * - * Type: function<br> - * Name: assign_debug_info<br> - * Purpose: assign debug info to the template<br> - * @param array unused in this plugin, this plugin uses {@link Smarty::$_config}, - * {@link Smarty::$_tpl_vars} and {@link Smarty::$_smarty_debug_info} - * @param Smarty - */ -function smarty_function_assign_debug_info($params, &$smarty) -{ - $assigned_vars = $smarty->_tpl_vars; - ksort($assigned_vars); - if (@is_array($smarty->_config[0])) { - $config_vars = $smarty->_config[0]; - ksort($config_vars); - $smarty->assign("_debug_config_keys", array_keys($config_vars)); - $smarty->assign("_debug_config_vals", array_values($config_vars)); - } - - $included_templates = $smarty->_smarty_debug_info; - - $smarty->assign("_debug_keys", array_keys($assigned_vars)); - $smarty->assign("_debug_vals", array_values($assigned_vars)); - - $smarty->assign("_debug_tpls", $included_templates); -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.config_load.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.config_load.php deleted file mode 100644 index db7f8f6b9..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.config_load.php +++ /dev/null @@ -1,140 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Smarty {config_load} function plugin - * - * Type: function<br> - * Name: config_load<br> - * Purpose: load config file vars - * @link http://smarty.php.net/manual/en/language.function.config.load.php {config_load} - * (Smarty online manual) - * @param array Format: - * <pre> - * array('file' => required config file name, - * 'section' => optional config file section to load - * 'scope' => local/parent/global - * 'global' => overrides scope, setting to parent if true) - * </pre> - * @param Smarty - */ -function smarty_function_config_load($params, &$smarty) -{ - if ($smarty->debugging) { - $_params = array(); - require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); - $_debug_start_time = smarty_core_get_microtime($_params, $smarty); - } - - $_file = isset($params['file']) ? $smarty->_dequote($params['file']) : null; - $_section = isset($params['section']) ? $smarty->_dequote($params['section']) : null; - $_scope = isset($params['scope']) ? $smarty->_dequote($params['scope']) : 'global'; - $_global = isset($params['global']) ? $smarty->_dequote($params['global']) : false; - - if (!isset($_file) || strlen($_file) == 0) { - $smarty->trigger_error("missing 'file' attribute in config_load tag", E_USER_ERROR, __FILE__, __LINE__); - } - - if (isset($_scope)) { - if ($_scope != 'local' && - $_scope != 'parent' && - $_scope != 'global') { - $smarty->trigger_error("invalid 'scope' attribute value", E_USER_ERROR, __FILE__, __LINE__); - } - } else { - if ($_global) { - $_scope = 'parent'; - } else { - $_scope = 'local'; - } - } - - $_params = array('resource_name' => $_file, - 'resource_base_path' => $smarty->config_dir, - 'get_source' => false); - $smarty->_parse_resource_name($_params); - $_file_path = $_params['resource_type'] . ':' . $_params['resource_name']; - if (isset($_section)) - $_compile_file = $smarty->_get_compile_path($_file_path.'|'.$_section); - else - $_compile_file = $smarty->_get_compile_path($_file_path); - - if($smarty->force_compile || !file_exists($_compile_file)) { - $_compile = true; - } elseif ($smarty->compile_check) { - $_params = array('resource_name' => $_file, - 'resource_base_path' => $smarty->config_dir, - 'get_source' => false); - $_compile = $smarty->_fetch_resource_info($_params) && - $_params['resource_timestamp'] > filemtime($_compile_file); - } else { - $_compile = false; - } - - if($_compile) { - // compile config file - if(!is_object($smarty->_conf_obj)) { - require_once SMARTY_DIR . $smarty->config_class . '.class.php'; - $smarty->_conf_obj = new $smarty->config_class(); - $smarty->_conf_obj->overwrite = $smarty->config_overwrite; - $smarty->_conf_obj->booleanize = $smarty->config_booleanize; - $smarty->_conf_obj->read_hidden = $smarty->config_read_hidden; - $smarty->_conf_obj->fix_newlines = $smarty->config_fix_newlines; - } - - $_params = array('resource_name' => $_file, - 'resource_base_path' => $smarty->config_dir, - $_params['get_source'] = true); - if (!$smarty->_fetch_resource_info($_params)) { - return; - } - $smarty->_conf_obj->set_file_contents($_file, $_params['source_content']); - $_config_vars = array_merge($smarty->_conf_obj->get($_file), - $smarty->_conf_obj->get($_file, $_section)); - if(function_exists('var_export')) { - $_output = '<?php $_config_vars = ' . var_export($_config_vars, true) . '; ?>'; - } else { - $_output = '<?php $_config_vars = unserialize(\'' . strtr(serialize($_config_vars),array('\''=>'\\\'', '\\'=>'\\\\')) . '\'); ?>'; - } - $_params = (array('compile_path' => $_compile_file, 'compiled_content' => $_output, 'resource_timestamp' => $_params['resource_timestamp'])); - require_once(SMARTY_CORE_DIR . 'core.write_compiled_resource.php'); - smarty_core_write_compiled_resource($_params, $smarty); - } else { - include($_compile_file); - } - - if ($smarty->caching) { - $smarty->_cache_info['config'][$_file] = true; - } - - $smarty->_config[0]['vars'] = @array_merge($smarty->_config[0]['vars'], $_config_vars); - $smarty->_config[0]['files'][$_file] = true; - - if ($_scope == 'parent') { - $smarty->_config[1]['vars'] = @array_merge($smarty->_config[1]['vars'], $_config_vars); - $smarty->_config[1]['files'][$_file] = true; - } else if ($_scope == 'global') { - for ($i = 1, $for_max = count($smarty->_config); $i < $for_max; $i++) { - $smarty->_config[$i]['vars'] = @array_merge($smarty->_config[$i]['vars'], $_config_vars); - $smarty->_config[$i]['files'][$_file] = true; - } - } - - if ($smarty->debugging) { - $_params = array(); - require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); - $smarty->_smarty_debug_info[] = array('type' => 'config', - 'filename' => $_file.' ['.$_section.'] '.$_scope, - 'depth' => $smarty->_inclusion_depth, - 'exec_time' => smarty_core_get_microtime($_params, $smarty) - $_debug_start_time); - } - -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.counter.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.counter.php deleted file mode 100644 index cfe5dd886..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.counter.php +++ /dev/null @@ -1,79 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty {counter} function plugin - * - * Type: function<br> - * Name: counter<br> - * Purpose: print out a counter value - * @link http://smarty.php.net/manual/en/language.function.counter.php {counter} - * (Smarty online manual) - * @param array parameters - * @param Smarty - * @return string|null - */ -function smarty_function_counter($params, &$smarty) -{ - static $counters = array(); - - $name = (isset($params['name'])) ? $params['name'] : 'default'; - if (!isset($counters[$name])) { - $counters[$name] = array( - 'start'=>1, - 'skip'=>1, - 'direction'=>'up', - 'count'=>1 - ); - } - $counter =& $counters[$name]; - - if (isset($params['start'])) { - $counter['start'] = $counter['count'] = (int)$params['start']; - } - - if (!empty($params['assign'])) { - $counter['assign'] = $params['assign']; - } - - if (isset($counter['assign'])) { - $smarty->assign($counter['assign'], $counter['count']); - } - - if (isset($params['print'])) { - $print = (bool)$params['print']; - } else { - $print = empty($counter['assign']); - } - - if ($print) { - $retval = $counter['count']; - } else { - $retval = null; - } - - if (isset($params['skip'])) { - $counter['skip'] = $params['skip']; - } - - if (isset($params['direction'])) { - $counter['direction'] = $params['direction']; - } - - if ($counter['direction'] == "down") - $counter['count'] -= $counter['skip']; - else - $counter['count'] += $counter['skip']; - - return $retval; - -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.cycle.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.cycle.php deleted file mode 100644 index f61ff0b13..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.cycle.php +++ /dev/null @@ -1,102 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Smarty {cycle} function plugin - * - * Type: function<br> - * Name: cycle<br> - * Date: May 3, 2002<br> - * Purpose: cycle through given values<br> - * Input: - * - name = name of cycle (optional) - * - values = comma separated list of values to cycle, - * or an array of values to cycle - * (this can be left out for subsequent calls) - * - reset = boolean - resets given var to true - * - print = boolean - print var or not. default is true - * - advance = boolean - whether or not to advance the cycle - * - delimiter = the value delimiter, default is "," - * - assign = boolean, assigns to template var instead of - * printed. - * - * Examples:<br> - * <pre> - * {cycle values="#eeeeee,#d0d0d0d"} - * {cycle name=row values="one,two,three" reset=true} - * {cycle name=row} - * </pre> - * @link http://smarty.php.net/manual/en/language.function.cycle.php {cycle} - * (Smarty online manual) - * @author Monte Ohrt <monte@ispi.net> - * @author credit to Mark Priatel <mpriatel@rogers.com> - * @author credit to Gerard <gerard@interfold.com> - * @author credit to Jason Sweat <jsweat_php@yahoo.com> - * @version 1.3 - * @param array - * @param Smarty - * @return string|null - */ -function smarty_function_cycle($params, &$smarty) -{ - static $cycle_vars; - - $name = (empty($params['name'])) ? 'default' : $params['name']; - $print = (isset($params['print'])) ? (bool)$params['print'] : true; - $advance = (isset($params['advance'])) ? (bool)$params['advance'] : true; - $reset = (isset($params['reset'])) ? (bool)$params['reset'] : false; - - if (!in_array('values', array_keys($params))) { - if(!isset($cycle_vars[$name]['values'])) { - $smarty->trigger_error("cycle: missing 'values' parameter"); - return; - } - } else { - if(isset($cycle_vars[$name]['values']) - && $cycle_vars[$name]['values'] != $params['values'] ) { - $cycle_vars[$name]['index'] = 0; - } - $cycle_vars[$name]['values'] = $params['values']; - } - - $cycle_vars[$name]['delimiter'] = (isset($params['delimiter'])) ? $params['delimiter'] : ','; - - if(is_array($cycle_vars[$name]['values'])) { - $cycle_array = $cycle_vars[$name]['values']; - } else { - $cycle_array = explode($cycle_vars[$name]['delimiter'],$cycle_vars[$name]['values']); - } - - if(!isset($cycle_vars[$name]['index']) || $reset ) { - $cycle_vars[$name]['index'] = 0; - } - - if (isset($params['assign'])) { - $print = false; - $smarty->assign($params['assign'], $cycle_array[$cycle_vars[$name]['index']]); - } - - if($print) { - $retval = $cycle_array[$cycle_vars[$name]['index']]; - } else { - $retval = null; - } - - if($advance) { - if ( $cycle_vars[$name]['index'] >= count($cycle_array) -1 ) { - $cycle_vars[$name]['index'] = 0; - } else { - $cycle_vars[$name]['index']++; - } - } - - return $retval; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.debug.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.debug.php deleted file mode 100644 index 77e710921..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.debug.php +++ /dev/null @@ -1,35 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty {debug} function plugin - * - * Type: function<br> - * Name: debug<br> - * Date: July 1, 2002<br> - * Purpose: popup debug window - * @link http://smarty.php.net/manual/en/language.function.debug.php {debug} - * (Smarty online manual) - * @author Monte Ohrt <monte@ispi.net> - * @version 1.0 - * @param array - * @param Smarty - * @return string output from {@link Smarty::_generate_debug_output()} - */ -function smarty_function_debug($params, &$smarty) -{ - if (isset($params['output'])) { - $smarty->assign('_smarty_debug_output', $params['output']); - } - require_once(SMARTY_CORE_DIR . 'core.display_debug_console.php'); - return smarty_core_display_debug_console(null, $smarty); -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.eval.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.eval.php deleted file mode 100644 index 3a4b8b2b8..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.eval.php +++ /dev/null @@ -1,48 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty {eval} function plugin - * - * Type: function<br> - * Name: eval<br> - * Purpose: evaluate a template variable as a template<br> - * @link http://smarty.php.net/manual/en/language.function.eval.php {eval} - * (Smarty online manual) - * @param array - * @param Smarty - */ -function smarty_function_eval($params, &$smarty) -{ - - if (!isset($params['var'])) { - $smarty->trigger_error("eval: missing 'var' parameter"); - return; - } - - if($params['var'] == '') { - return; - } - - $smarty->_compile_source('evaluated template', $params['var'], $_var_compiled); - - ob_start(); - $smarty->_eval('?>' . $_var_compiled); - $_contents = ob_get_contents(); - ob_end_clean(); - - if (!empty($params['assign'])) { - $smarty->assign($params['assign'], $_contents); - } else { - return $_contents; - } -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.fetch.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.fetch.php deleted file mode 100644 index f5a6987a9..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.fetch.php +++ /dev/null @@ -1,220 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty {fetch} plugin - * - * Type: function<br> - * Name: fetch<br> - * Purpose: fetch file, web or ftp data and display results - * @link http://smarty.php.net/manual/en/language.function.fetch.php {fetch} - * (Smarty online manual) - * @param array - * @param Smarty - * @return string|null if the assign parameter is passed, Smarty assigns the - * result to a template variable - */ -function smarty_function_fetch($params, &$smarty) -{ - if (empty($params['file'])) { - $smarty->_trigger_fatal_error("[plugin] parameter 'file' cannot be empty"); - return; - } - - $content = ''; - if ($smarty->security && !preg_match('!^(http|ftp)://!i', $params['file'])) { - $_params = array('resource_type' => 'file', 'resource_name' => $params['file']); - require_once(SMARTY_CORE_DIR . 'core.is_secure.php'); - if(!smarty_core_is_secure($_params, $smarty)) { - $smarty->_trigger_fatal_error('[plugin] (secure mode) fetch \'' . $params['file'] . '\' is not allowed'); - return; - } - - // fetch the file - if($fp = @fopen($params['file'],'r')) { - while(!feof($fp)) { - $content .= fgets ($fp,4096); - } - fclose($fp); - } else { - $smarty->_trigger_fatal_error('[plugin] fetch cannot read file \'' . $params['file'] . '\''); - return; - } - } else { - // not a local file - if(preg_match('!^http://!i',$params['file'])) { - // http fetch - if($uri_parts = parse_url($params['file'])) { - // set defaults - $host = $server_name = $uri_parts['host']; - $timeout = 30; - $accept = "image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*"; - $agent = "Smarty Template Engine ".$smarty->_version; - $referer = ""; - $uri = !empty($uri_parts['path']) ? $uri_parts['path'] : '/'; - $uri .= !empty($uri_parts['query']) ? '?' . $uri_parts['query'] : ''; - $_is_proxy = false; - if(empty($uri_parts['port'])) { - $port = 80; - } else { - $port = $uri_parts['port']; - } - if(!empty($uri_parts['user'])) { - $user = $uri_parts['user']; - } - if(!empty($uri_parts['pass'])) { - $pass = $uri_parts['pass']; - } - // loop through parameters, setup headers - foreach($params as $param_key => $param_value) { - switch($param_key) { - case "file": - case "assign": - case "assign_headers": - break; - case "user": - if(!empty($param_value)) { - $user = $param_value; - } - break; - case "pass": - if(!empty($param_value)) { - $pass = $param_value; - } - break; - case "accept": - if(!empty($param_value)) { - $accept = $param_value; - } - break; - case "header": - if(!empty($param_value)) { - if(!preg_match('![\w\d-]+: .+!',$param_value)) { - $smarty->_trigger_fatal_error("[plugin] invalid header format '".$param_value."'"); - return; - } else { - $extra_headers[] = $param_value; - } - } - break; - case "proxy_host": - if(!empty($param_value)) { - $proxy_host = $param_value; - } - break; - case "proxy_port": - if(!preg_match('!\D!', $param_value)) { - $proxy_port = (int) $param_value; - } else { - $smarty->_trigger_fatal_error("[plugin] invalid value for attribute '".$param_key."'"); - return; - } - break; - case "agent": - if(!empty($param_value)) { - $agent = $param_value; - } - break; - case "referer": - if(!empty($param_value)) { - $referer = $param_value; - } - break; - case "timeout": - if(!preg_match('!\D!', $param_value)) { - $timeout = (int) $param_value; - } else { - $smarty->_trigger_fatal_error("[plugin] invalid value for attribute '".$param_key."'"); - return; - } - break; - default: - $smarty->_trigger_fatal_error("[plugin] unrecognized attribute '".$param_key."'"); - return; - } - } - if(!empty($proxy_host) && !empty($proxy_port)) { - $_is_proxy = true; - $fp = fsockopen($proxy_host,$proxy_port,$errno,$errstr,$timeout); - } else { - $fp = fsockopen($server_name,$port,$errno,$errstr,$timeout); - } - - if(!$fp) { - $smarty->_trigger_fatal_error("[plugin] unable to fetch: $errstr ($errno)"); - return; - } else { - if($_is_proxy) { - fputs($fp, 'GET ' . $params['file'] . " HTTP/1.0\r\n"); - } else { - fputs($fp, "GET $uri HTTP/1.0\r\n"); - } - if(!empty($host)) { - fputs($fp, "Host: $host\r\n"); - } - if(!empty($accept)) { - fputs($fp, "Accept: $accept\r\n"); - } - if(!empty($agent)) { - fputs($fp, "User-Agent: $agent\r\n"); - } - if(!empty($referer)) { - fputs($fp, "Referer: $referer\r\n"); - } - if(isset($extra_headers) && is_array($extra_headers)) { - foreach($extra_headers as $curr_header) { - fputs($fp, $curr_header."\r\n"); - } - } - if(!empty($user) && !empty($pass)) { - fputs($fp, "Authorization: BASIC ".base64_encode("$user:$pass")."\r\n"); - } - - fputs($fp, "\r\n"); - while(!feof($fp)) { - $content .= fgets($fp,4096); - } - fclose($fp); - $csplit = split("\r\n\r\n",$content,2); - - $content = $csplit[1]; - - if(!empty($params['assign_headers'])) { - $smarty->assign($params['assign_headers'],split("\r\n",$csplit[0])); - } - } - } else { - $smarty->_trigger_fatal_error("[plugin] unable to parse URL, check syntax"); - return; - } - } else { - // ftp fetch - if($fp = @fopen($params['file'],'r')) { - while(!feof($fp)) { - $content .= fgets ($fp,4096); - } - fclose($fp); - } else { - $smarty->_trigger_fatal_error('[plugin] fetch cannot read file \'' . $params['file'] .'\''); - return; - } - } - - } - - - if (!empty($params['assign'])) { - $smarty->assign($params['assign'],$content); - } else { - return $content; - } -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_checkboxes.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_checkboxes.php deleted file mode 100644 index a64d7db7a..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_checkboxes.php +++ /dev/null @@ -1,143 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty {html_checkboxes} function plugin - * - * File: function.html_checkboxes.php<br> - * Type: function<br> - * Name: html_checkboxes<br> - * Date: 24.Feb.2003<br> - * Purpose: Prints out a list of checkbox input types<br> - * Input:<br> - * - name (optional) - string default "checkbox" - * - values (required) - array - * - options (optional) - associative array - * - checked (optional) - array default not set - * - separator (optional) - ie <br> or - * - output (optional) - the output next to each checkbox - * - assign (optional) - assign the output as an array to this variable - * Examples: - * <pre> - * {html_checkboxes values=$ids output=$names} - * {html_checkboxes values=$ids name='box' separator='<br>' output=$names} - * {html_checkboxes values=$ids checked=$checked separator='<br>' output=$names} - * </pre> - * @link http://smarty.php.net/manual/en/language.function.html.checkboxes.php {html_checkboxes} - * (Smarty online manual) - * @author Christopher Kvarme <christopher.kvarme@flashjab.com> - * @author credits to Monte Ohrt <monte@ispi.net> - * @version 1.0 - * @param array - * @param Smarty - * @return string - * @uses smarty_function_escape_special_chars() - */ -function smarty_function_html_checkboxes($params, &$smarty) -{ - require_once $smarty->_get_plugin_filepath('shared','escape_special_chars'); - - $name = 'checkbox'; - $values = null; - $options = null; - $selected = null; - $separator = ''; - $labels = true; - $output = null; - - $extra = ''; - - foreach($params as $_key => $_val) { - switch($_key) { - case 'name': - case 'separator': - $$_key = $_val; - break; - - case 'labels': - $$_key = (bool)$_val; - break; - - case 'options': - $$_key = (array)$_val; - break; - - case 'values': - case 'output': - $$_key = array_values((array)$_val); - break; - - case 'checked': - case 'selected': - $selected = array_map('strval', array_values((array)$_val)); - break; - - case 'checkboxes': - $smarty->trigger_error('html_checkboxes: the use of the "checkboxes" attribute is deprecated, use "options" instead', E_USER_WARNING); - $options = (array)$_val; - break; - - case 'assign': - break; - - default: - if(!is_array($_val)) { - $extra .= ' '.$_key.'="'.smarty_function_escape_special_chars($_val).'"'; - } else { - $smarty->trigger_error("html_checkboxes: extra attribute '$_key' cannot be an array", E_USER_NOTICE); - } - break; - } - } - - if (!isset($options) && !isset($values)) - return ''; /* raise error here? */ - - settype($selected, 'array'); - $_html_result = array(); - - if (is_array($options)) { - - foreach ($options as $_key=>$_val) - $_html_result[] = smarty_function_html_checkboxes_output($name, $_key, $_val, $selected, $extra, $separator, $labels); - - - } else { - foreach ($values as $_i=>$_key) { - $_val = isset($output[$_i]) ? $output[$_i] : ''; - $_html_result[] = smarty_function_html_checkboxes_output($name, $_key, $_val, $selected, $extra, $separator, $labels); - } - - } - - if(!empty($params['assign'])) { - $smarty->assign($params['assign'], $_html_result); - } else { - return implode("\n",$_html_result); - } - -} - -function smarty_function_html_checkboxes_output($name, $value, $output, $selected, $extra, $separator, $labels) { - $_output = ''; - if ($labels) $_output .= '<label>'; - $_output .= '<input type="checkbox" name="' - . smarty_function_escape_special_chars($name) . '[]" value="' - . smarty_function_escape_special_chars($value) . '"'; - - if (in_array((string)$value, $selected)) { - $_output .= ' checked="checked"'; - } - $_output .= $extra . ' />' . $output; - if ($labels) $_output .= '</label>'; - $_output .= $separator; - - return $_output; -} - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_image.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_image.php deleted file mode 100644 index aa2aa1875..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_image.php +++ /dev/null @@ -1,142 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty {html_image} function plugin - * - * Type: function<br> - * Name: html_image<br> - * Date: Feb 24, 2003<br> - * Purpose: format HTML tags for the image<br> - * Input:<br> - * - file = file (and path) of image (required) - * - border = border width (optional, default 0) - * - height = image height (optional, default actual height) - * - image =image width (optional, default actual width) - * - basedir = base directory for absolute paths, default - * is environment variable DOCUMENT_ROOT - * - * Examples: {html_image file="images/masthead.gif"} - * Output: <img src="images/masthead.gif" border=0 width=400 height=23> - * @link http://smarty.php.net/manual/en/language.function.html.image.php {html_image} - * (Smarty online manual) - * @author Monte Ohrt <monte@ispi.net> - * @author credits to Duda <duda@big.hu> - wrote first image function - * in repository, helped with lots of functionality - * @version 1.0 - * @param array - * @param Smarty - * @return string - * @uses smarty_function_escape_special_chars() - */ -function smarty_function_html_image($params, &$smarty) -{ - require_once $smarty->_get_plugin_filepath('shared','escape_special_chars'); - - $alt = ''; - $file = ''; - $border = 0; - $height = ''; - $width = ''; - $extra = ''; - $prefix = ''; - $suffix = ''; - $server_vars = ($smarty->request_use_auto_globals) ? $_SERVER : $GLOBALS['HTTP_SERVER_VARS']; - $basedir = isset($server_vars['DOCUMENT_ROOT']) ? $server_vars['DOCUMENT_ROOT'] : ''; - foreach($params as $_key => $_val) { - switch($_key) { - case 'file': - case 'border': - case 'height': - case 'width': - case 'dpi': - case 'basedir': - $$_key = $_val; - break; - - case 'alt': - if(!is_array($_val)) { - $$_key = smarty_function_escape_special_chars($_val); - } else { - $smarty->trigger_error("html_image: extra attribute '$_key' cannot be an array", E_USER_NOTICE); - } - break; - - case 'link': - case 'href': - $prefix = '<a href="' . $_val . '">'; - $suffix = '</a>'; - break; - - default: - if(!is_array($_val)) { - $extra .= ' '.$_key.'="'.smarty_function_escape_special_chars($_val).'"'; - } else { - $smarty->trigger_error("html_image: extra attribute '$_key' cannot be an array", E_USER_NOTICE); - } - break; - } - } - - if (empty($file)) { - $smarty->trigger_error("html_image: missing 'file' parameter", E_USER_NOTICE); - return; - } - - if (substr($file,0,1) == '/') { - $_image_path = $basedir . $file; - } else { - $_image_path = $file; - } - - if(!isset($params['width']) || !isset($params['height'])) { - if ($smarty->security && - ($_params = array('resource_type' => 'file', 'resource_name' => $_image_path)) && - (require_once(SMARTY_CORE_DIR . 'core.is_secure.php')) && - (!smarty_core_is_secure($_params, $smarty)) ) { - $smarty->trigger_error("html_image: (secure) '$_image_path' not in secure directory", E_USER_NOTICE); - - } elseif (!$_image_data = @getimagesize($_image_path)) { - if(!file_exists($_image_path)) { - $smarty->trigger_error("html_image: unable to find '$_image_path'", E_USER_NOTICE); - return; - } else if(!is_readable($_image_path)) { - $smarty->trigger_error("html_image: unable to read '$_image_path'", E_USER_NOTICE); - return; - } else { - $smarty->trigger_error("html_image: '$_image_path' is not a valid image file", E_USER_NOTICE); - return; - } - } - - if(!isset($params['width'])) { - $width = $_image_data[0]; - } - if(!isset($params['height'])) { - $height = $_image_data[1]; - } - - } - - if(isset($params['dpi'])) { - if(strstr($server_vars['HTTP_USER_AGENT'], 'Mac')) { - $dpi_default = 72; - } else { - $dpi_default = 96; - } - $_resize = $dpi_default/$params['dpi']; - $width = round($width * $_resize); - $height = round($height * $_resize); - } - - return $prefix . '<img src="'.$file.'" alt="'.$alt.'" border="'.$border.'" width="'.$width.'" height="'.$height.'"'.$extra.' />' . $suffix; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_options.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_options.php deleted file mode 100644 index da5571c5b..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_options.php +++ /dev/null @@ -1,121 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty {html_options} function plugin - * - * Type: function<br> - * Name: html_options<br> - * Input:<br> - * - name (optional) - string default "select" - * - values (required if no options supplied) - array - * - options (required if no values supplied) - associative array - * - selected (optional) - string default not set - * - output (required if not options supplied) - array - * Purpose: Prints the list of <option> tags generated from - * the passed parameters - * @link http://smarty.php.net/manual/en/language.function.html.options.php {html_image} - * (Smarty online manual) - * @param array - * @param Smarty - * @return string - * @uses smarty_function_escape_special_chars() - */ -function smarty_function_html_options($params, &$smarty) -{ - require_once $smarty->_get_plugin_filepath('shared','escape_special_chars'); - - $name = null; - $values = null; - $options = null; - $selected = array(); - $output = null; - - $extra = ''; - - foreach($params as $_key => $_val) { - switch($_key) { - case 'name': - $$_key = (string)$_val; - break; - - case 'options': - $$_key = (array)$_val; - break; - - case 'values': - case 'output': - $$_key = array_values((array)$_val); - break; - - case 'selected': - $$_key = array_map('strval', array_values((array)$_val)); - break; - - default: - if(!is_array($_val)) { - $extra .= ' '.$_key.'="'.smarty_function_escape_special_chars($_val).'"'; - } else { - $smarty->trigger_error("html_options: extra attribute '$_key' cannot be an array", E_USER_NOTICE); - } - break; - } - } - - if (!isset($options) && !isset($values)) - return ''; /* raise error here? */ - - $_html_result = ''; - - if (is_array($options)) { - - foreach ($options as $_key=>$_val) - $_html_result .= smarty_function_html_options_optoutput($_key, $_val, $selected); - - } else { - - foreach ((array)$values as $_i=>$_key) { - $_val = isset($output[$_i]) ? $output[$_i] : ''; - $_html_result .= smarty_function_html_options_optoutput($_key, $_val, $selected); - } - - } - - if(!empty($name)) { - $_html_result = '<select name="' . $name . '"' . $extra . '>' . "\n" . $_html_result . '</select>' . "\n"; - } - - return $_html_result; - -} - -function smarty_function_html_options_optoutput($key, $value, $selected) { - if(!is_array($value)) { - $_html_result = '<option label="' . smarty_function_escape_special_chars($value) . '" value="' . - smarty_function_escape_special_chars($key) . '"'; - if (in_array((string)$key, $selected)) - $_html_result .= ' selected="selected"'; - $_html_result .= '>' . smarty_function_escape_special_chars($value) . '</option>' . "\n"; - } else { - $_html_result = smarty_function_html_options_optgroup($key, $value, $selected); - } - return $_html_result; -} - -function smarty_function_html_options_optgroup($key, $values, $selected) { - $optgroup_html = '<optgroup label="' . smarty_function_escape_special_chars($key) . '">' . "\n"; - foreach ($values as $key => $value) { - $optgroup_html .= smarty_function_html_options_optoutput($key, $value, $selected); - } - $optgroup_html .= "</optgroup>\n"; - return $optgroup_html; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_radios.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_radios.php deleted file mode 100644 index c8633c5dd..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_radios.php +++ /dev/null @@ -1,145 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty {html_radios} function plugin - * - * File: function.html_radios.php<br> - * Type: function<br> - * Name: html_radios<br> - * Date: 24.Feb.2003<br> - * Purpose: Prints out a list of radio input types<br> - * Input:<br> - * - name (optional) - string default "radio" - * - values (required) - array - * - options (optional) - associative array - * - checked (optional) - array default not set - * - separator (optional) - ie <br> or - * - output (optional) - the output next to each radio button - * - assign (optional) - assign the output as an array to this variable - * Examples: - * <pre> - * {html_radios values=$ids output=$names} - * {html_radios values=$ids name='box' separator='<br>' output=$names} - * {html_radios values=$ids checked=$checked separator='<br>' output=$names} - * </pre> - * @link http://smarty.php.net/manual/en/language.function.html.radios.php {html_radios} - * (Smarty online manual) - * @author Christopher Kvarme <christopher.kvarme@flashjab.com> - * @author credits to Monte Ohrt <monte@ispi.net> - * @version 1.0 - * @param array - * @param Smarty - * @return string - * @uses smarty_function_escape_special_chars() - */ -function smarty_function_html_radios($params, &$smarty) -{ - require_once $smarty->_get_plugin_filepath('shared','escape_special_chars'); - - $name = 'radio'; - $values = null; - $options = null; - $selected = null; - $separator = ''; - $labels = true; - $output = null; - $extra = ''; - - foreach($params as $_key => $_val) { - switch($_key) { - case 'name': - case 'separator': - $$_key = (string)$_val; - break; - - case 'checked': - case 'selected': - if(is_array($_val)) { - $smarty->trigger_error('html_radios: the "' . $_key . '" attribute cannot be an array', E_USER_WARNING); - } else { - $selected = (string)$_val; - } - break; - - case 'labels': - $$_key = (bool)$_val; - break; - - case 'options': - $$_key = (array)$_val; - break; - - case 'values': - case 'output': - $$_key = array_values((array)$_val); - break; - - case 'radios': - $smarty->trigger_error('html_radios: the use of the "radios" attribute is deprecated, use "options" instead', E_USER_WARNING); - $options = (array)$_val; - break; - - case 'assign': - break; - - default: - if(!is_array($_val)) { - $extra .= ' '.$_key.'="'.smarty_function_escape_special_chars($_val).'"'; - } else { - $smarty->trigger_error("html_radios: extra attribute '$_key' cannot be an array", E_USER_NOTICE); - } - break; - } - } - - if (!isset($options) && !isset($values)) - return ''; /* raise error here? */ - - $_html_result = array(); - - if (isset($options) && is_array($options)) { - - foreach ((array)$options as $_key=>$_val) - $_html_result[] = smarty_function_html_radios_output($name, $_key, $_val, $selected, $extra, $separator, $labels); - - } else { - - foreach ((array)$values as $_i=>$_key) { - $_val = isset($output[$_i]) ? $output[$_i] : ''; - $_html_result[] = smarty_function_html_radios_output($name, $_key, $_val, $selected, $extra, $separator, $labels); - } - - } - - if(!empty($params['assign'])) { - $smarty->assign($params['assign'], $_html_result); - } else { - return implode("\n",$_html_result); - } - -} - -function smarty_function_html_radios_output($name, $value, $output, $selected, $extra, $separator, $labels) { - $_output = ''; - if ($labels) $_output .= '<label>'; - $_output .= '<input type="radio" name="' - . smarty_function_escape_special_chars($name) . '" value="' - . smarty_function_escape_special_chars($value) . '"'; - - if ($value==$selected) { - $_output .= ' checked="checked"'; - } - $_output .= $extra . ' />' . $output; - if ($labels) $_output .= '</label>'; - $_output .= $separator; - - return $_output; -} - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_select_date.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_select_date.php deleted file mode 100644 index fc2d449a8..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_select_date.php +++ /dev/null @@ -1,316 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Smarty {html_select_date} plugin - * - * Type: function<br> - * Name: html_select_date<br> - * Purpose: Prints the dropdowns for date selection. - * - * ChangeLog:<br> - * - 1.0 initial release - * - 1.1 added support for +/- N syntax for begin - * and end year values. (Monte) - * - 1.2 added support for yyyy-mm-dd syntax for - * time value. (Jan Rosier) - * - 1.3 added support for choosing format for - * month values (Gary Loescher) - * - 1.3.1 added support for choosing format for - * day values (Marcus Bointon) - * - 1.3.2 suppport negative timestamps, force year - * dropdown to include given date unless explicitly set (Monte) - * @link http://smarty.php.net/manual/en/language.function.html.select.date.php {html_select_date} - * (Smarty online manual) - * @version 1.3.2 - * @author Andrei Zmievski - * @param array - * @param Smarty - * @return string - */ -function smarty_function_html_select_date($params, &$smarty) -{ - require_once $smarty->_get_plugin_filepath('shared','make_timestamp'); - require_once $smarty->_get_plugin_filepath('function','html_options'); - /* Default values. */ - $prefix = "Date_"; - $start_year = strftime("%Y"); - $end_year = $start_year; - $display_days = true; - $display_months = true; - $display_years = true; - $month_format = "%B"; - /* Write months as numbers by default GL */ - $month_value_format = "%m"; - $day_format = "%02d"; - /* Write day values using this format MB */ - $day_value_format = "%d"; - $year_as_text = false; - /* Display years in reverse order? Ie. 2000,1999,.... */ - $reverse_years = false; - /* Should the select boxes be part of an array when returned from PHP? - e.g. setting it to "birthday", would create "birthday[Day]", - "birthday[Month]" & "birthday[Year]". Can be combined with prefix */ - $field_array = null; - /* <select size>'s of the different <select> tags. - If not set, uses default dropdown. */ - $day_size = null; - $month_size = null; - $year_size = null; - /* Unparsed attributes common to *ALL* the <select>/<input> tags. - An example might be in the template: all_extra ='class ="foo"'. */ - $all_extra = null; - /* Separate attributes for the tags. */ - $day_extra = null; - $month_extra = null; - $year_extra = null; - /* Order in which to display the fields. - "D" -> day, "M" -> month, "Y" -> year. */ - $field_order = 'MDY'; - /* String printed between the different fields. */ - $field_separator = "\n"; - $time = time(); - $all_empty = null; - $day_empty = null; - $month_empty = null; - $year_empty = null; - - foreach ($params as $_key=>$_value) { - switch ($_key) { - case 'prefix': - case 'time': - case 'start_year': - case 'end_year': - case 'month_format': - case 'day_format': - case 'day_value_format': - case 'field_array': - case 'day_size': - case 'month_size': - case 'year_size': - case 'all_extra': - case 'day_extra': - case 'month_extra': - case 'year_extra': - case 'field_order': - case 'field_separator': - case 'month_value_format': - case 'month_empty': - case 'day_empty': - case 'year_empty': - $$_key = (string)$_value; - break; - - case 'all_empty': - $$_key = (string)$_value; - $day_empty = $month_empty = $year_empty = $all_empty; - break; - - case 'display_days': - case 'display_months': - case 'display_years': - case 'year_as_text': - case 'reverse_years': - $$_key = (bool)$_value; - break; - - default: - $smarty->trigger_error("[html_select_date] unknown parameter $_key", E_USER_WARNING); - - } - } - - if(preg_match('!^-\d+$!',$time)) { - // negative timestamp, use date() - $time = date('Y-m-d',$time); - } - // If $time is not in format yyyy-mm-dd - if (!preg_match('/^\d{0,4}-\d{0,2}-\d{0,2}$/', $time)) { - // use smarty_make_timestamp to get an unix timestamp and - // strftime to make yyyy-mm-dd - $time = strftime('%Y-%m-%d', smarty_make_timestamp($time)); - } - // Now split this in pieces, which later can be used to set the select - $time = explode("-", $time); - - // make syntax "+N" or "-N" work with start_year and end_year - if (preg_match('!^(\+|\-)\s*(\d+)$!', $end_year, $match)) { - if ($match[1] == '+') { - $end_year = strftime('%Y') + $match[2]; - } else { - $end_year = strftime('%Y') - $match[2]; - } - } - if (preg_match('!^(\+|\-)\s*(\d+)$!', $start_year, $match)) { - if ($match[1] == '+') { - $start_year = strftime('%Y') + $match[2]; - } else { - $start_year = strftime('%Y') - $match[2]; - } - } - if (strlen($time[0]) > 0) { - if ($start_year > $time[0] && !isset($params['start_year'])) { - // force start year to include given date if not explicitly set - $start_year = $time[0]; - } - if($end_year < $time[0] && !isset($params['end_year'])) { - // force end year to include given date if not explicitly set - $end_year = $time[0]; - } - } - - $field_order = strtoupper($field_order); - - $html_result = $month_result = $day_result = $year_result = ""; - - if ($display_months) { - $month_names = array(); - $month_values = array(); - if(isset($month_empty)) { - $month_names[''] = $month_empty; - $month_values[''] = ''; - } - for ($i = 1; $i <= 12; $i++) { - $month_names[$i] = strftime($month_format, mktime(0, 0, 0, $i, 1, 2000)); - $month_values[$i] = strftime($month_value_format, mktime(0, 0, 0, $i, 1, 2000)); - } - - $month_result .= '<select name='; - if (null !== $field_array){ - $month_result .= '"' . $field_array . '[' . $prefix . 'Month]"'; - } else { - $month_result .= '"' . $prefix . 'Month"'; - } - if (null !== $month_size){ - $month_result .= ' size="' . $month_size . '"'; - } - if (null !== $month_extra){ - $month_result .= ' ' . $month_extra; - } - if (null !== $all_extra){ - $month_result .= ' ' . $all_extra; - } - $month_result .= '>'."\n"; - - $month_result .= smarty_function_html_options(array('output' => $month_names, - 'values' => $month_values, - 'selected' => $a=$time[1] ? strftime($month_value_format, mktime(0, 0, 0, (int)$time[1], 1, 2000)) : '', - 'print_result' => false), - $smarty); - $month_result .= '</select>'; - } - - if ($display_days) { - $days = array(); - if (isset($day_empty)) { - $days[''] = $day_empty; - $day_values[''] = ''; - } - for ($i = 1; $i <= 31; $i++) { - $days[] = sprintf($day_format, $i); - $day_values[] = sprintf($day_value_format, $i); - } - - $day_result .= '<select name='; - if (null !== $field_array){ - $day_result .= '"' . $field_array . '[' . $prefix . 'Day]"'; - } else { - $day_result .= '"' . $prefix . 'Day"'; - } - if (null !== $day_size){ - $day_result .= ' size="' . $day_size . '"'; - } - if (null !== $all_extra){ - $day_result .= ' ' . $all_extra; - } - if (null !== $day_extra){ - $day_result .= ' ' . $day_extra; - } - $day_result .= '>'."\n"; - $day_result .= smarty_function_html_options(array('output' => $days, - 'values' => $day_values, - 'selected' => $time[2], - 'print_result' => false), - $smarty); - $day_result .= '</select>'; - } - - if ($display_years) { - if (null !== $field_array){ - $year_name = $field_array . '[' . $prefix . 'Year]'; - } else { - $year_name = $prefix . 'Year'; - } - if ($year_as_text) { - $year_result .= '<input type="text" name="' . $year_name . '" value="' . $time[0] . '" size="4" maxlength="4"'; - if (null !== $all_extra){ - $year_result .= ' ' . $all_extra; - } - if (null !== $year_extra){ - $year_result .= ' ' . $year_extra; - } - $year_result .= '>'; - } else { - $years = range((int)$start_year, (int)$end_year); - if ($reverse_years) { - rsort($years, SORT_NUMERIC); - } else { - sort($years, SORT_NUMERIC); - } - $yearvals = $years; - if(isset($year_empty)) { - array_unshift($years, $year_empty); - array_unshift($yearvals, ''); - } - $year_result .= '<select name="' . $year_name . '"'; - if (null !== $year_size){ - $year_result .= ' size="' . $year_size . '"'; - } - if (null !== $all_extra){ - $year_result .= ' ' . $all_extra; - } - if (null !== $year_extra){ - $year_result .= ' ' . $year_extra; - } - $year_result .= '>'."\n"; - $year_result .= smarty_function_html_options(array('output' => $years, - 'values' => $yearvals, - 'selected' => $time[0], - 'print_result' => false), - $smarty); - $year_result .= '</select>'; - } - } - - // Loop thru the field_order field - for ($i = 0; $i <= 2; $i++){ - $c = substr($field_order, $i, 1); - switch ($c){ - case 'D': - $html_result .= $day_result; - break; - - case 'M': - $html_result .= $month_result; - break; - - case 'Y': - $html_result .= $year_result; - break; - } - // Add the field seperator - if($i != 2) { - $html_result .= $field_separator; - } - } - - return $html_result; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_select_time.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_select_time.php deleted file mode 100644 index 00cd1ae88..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_select_time.php +++ /dev/null @@ -1,192 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty {html_select_time} function plugin - * - * Type: function<br> - * Name: html_select_time<br> - * Purpose: Prints the dropdowns for time selection - * @link http://smarty.php.net/manual/en/language.function.html.select.time.php {html_select_time} - * (Smarty online manual) - * @param array - * @param Smarty - * @return string - * @uses smarty_make_timestamp() - */ -function smarty_function_html_select_time($params, &$smarty) -{ - require_once $smarty->_get_plugin_filepath('shared','make_timestamp'); - require_once $smarty->_get_plugin_filepath('function','html_options'); - /* Default values. */ - $prefix = "Time_"; - $time = time(); - $display_hours = true; - $display_minutes = true; - $display_seconds = true; - $display_meridian = true; - $use_24_hours = true; - $minute_interval = 1; - $second_interval = 1; - /* Should the select boxes be part of an array when returned from PHP? - e.g. setting it to "birthday", would create "birthday[Hour]", - "birthday[Minute]", "birthday[Seconds]" & "birthday[Meridian]". - Can be combined with prefix. */ - $field_array = null; - $all_extra = null; - $hour_extra = null; - $minute_extra = null; - $second_extra = null; - $meridian_extra = null; - - foreach ($params as $_key=>$_value) { - switch ($_key) { - case 'prefix': - case 'time': - case 'field_array': - case 'all_extra': - case 'hour_extra': - case 'minute_extra': - case 'second_extra': - case 'meridian_extra': - $$_key = (string)$_value; - break; - - case 'display_hours': - case 'display_minutes': - case 'display_seconds': - case 'display_meridian': - case 'use_24_hours': - $$_key = (bool)$_value; - break; - - case 'minute_interval': - case 'second_interval': - $$_key = (int)$_value; - break; - - default: - $smarty->trigger_error("[html_select_time] unknown parameter $_key", E_USER_WARNING); - } - } - - $time = smarty_make_timestamp($time); - - $html_result = ''; - - if ($display_hours) { - $hours = $use_24_hours ? range(0, 23) : range(1, 12); - $hour_fmt = $use_24_hours ? '%H' : '%I'; - for ($i = 0, $for_max = count($hours); $i < $for_max; $i++) - $hours[$i] = sprintf('%02d', $hours[$i]); - $html_result .= '<select name='; - if (null !== $field_array) { - $html_result .= '"' . $field_array . '[' . $prefix . 'Hour]"'; - } else { - $html_result .= '"' . $prefix . 'Hour"'; - } - if (null !== $hour_extra){ - $html_result .= ' ' . $hour_extra; - } - if (null !== $all_extra){ - $html_result .= ' ' . $all_extra; - } - $html_result .= '>'."\n"; - $html_result .= smarty_function_html_options(array('output' => $hours, - 'values' => $hours, - 'selected' => strftime($hour_fmt, $time), - 'print_result' => false), - $smarty); - $html_result .= "</select>\n"; - } - - if ($display_minutes) { - $all_minutes = range(0, 59); - for ($i = 0, $for_max = count($all_minutes); $i < $for_max; $i+= $minute_interval) - $minutes[] = sprintf('%02d', $all_minutes[$i]); - $selected = intval(floor(strftime('%M', $time) / $minute_interval) * $minute_interval); - $html_result .= '<select name='; - if (null !== $field_array) { - $html_result .= '"' . $field_array . '[' . $prefix . 'Minute]"'; - } else { - $html_result .= '"' . $prefix . 'Minute"'; - } - if (null !== $minute_extra){ - $html_result .= ' ' . $minute_extra; - } - if (null !== $all_extra){ - $html_result .= ' ' . $all_extra; - } - $html_result .= '>'."\n"; - - $html_result .= smarty_function_html_options(array('output' => $minutes, - 'values' => $minutes, - 'selected' => $selected, - 'print_result' => false), - $smarty); - $html_result .= "</select>\n"; - } - - if ($display_seconds) { - $all_seconds = range(0, 59); - for ($i = 0, $for_max = count($all_seconds); $i < $for_max; $i+= $second_interval) - $seconds[] = sprintf('%02d', $all_seconds[$i]); - $selected = intval(floor(strftime('%S', $time) / $second_interval) * $second_interval); - $html_result .= '<select name='; - if (null !== $field_array) { - $html_result .= '"' . $field_array . '[' . $prefix . 'Second]"'; - } else { - $html_result .= '"' . $prefix . 'Second"'; - } - - if (null !== $second_extra){ - $html_result .= ' ' . $second_extra; - } - if (null !== $all_extra){ - $html_result .= ' ' . $all_extra; - } - $html_result .= '>'."\n"; - - $html_result .= smarty_function_html_options(array('output' => $seconds, - 'values' => $seconds, - 'selected' => $selected, - 'print_result' => false), - $smarty); - $html_result .= "</select>\n"; - } - - if ($display_meridian && !$use_24_hours) { - $html_result .= '<select name='; - if (null !== $field_array) { - $html_result .= '"' . $field_array . '[' . $prefix . 'Meridian]"'; - } else { - $html_result .= '"' . $prefix . 'Meridian"'; - } - - if (null !== $meridian_extra){ - $html_result .= ' ' . $meridian_extra; - } - if (null !== $all_extra){ - $html_result .= ' ' . $all_extra; - } - $html_result .= '>'."\n"; - - $html_result .= smarty_function_html_options(array('output' => array('AM', 'PM'), - 'values' => array('am', 'pm'), - 'selected' => strtolower(strftime('%p', $time)), - 'print_result' => false), - $smarty); - $html_result .= "</select>\n"; - } - - return $html_result; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_table.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_table.php deleted file mode 100644 index 0f6d03b93..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.html_table.php +++ /dev/null @@ -1,137 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty {html_table} function plugin - * - * Type: function<br> - * Name: html_table<br> - * Date: Feb 17, 2003<br> - * Purpose: make an html table from an array of data<br> - * Input:<br> - * - loop = array to loop through - * - cols = number of columns - * - rows = number of rows - * - table_attr = table attributes - * - tr_attr = table row attributes (arrays are cycled) - * - td_attr = table cell attributes (arrays are cycled) - * - trailpad = value to pad trailing cells with - * - vdir = vertical direction (default: "down", means top-to-bottom) - * - hdir = horizontal direction (default: "right", means left-to-right) - * - inner = inner loop (default "cols": print $loop line by line, - * $loop will be printed column by column otherwise) - * - * - * Examples: - * <pre> - * {table loop=$data} - * {table loop=$data cols=4 tr_attr='"bgcolor=red"'} - * {table loop=$data cols=4 tr_attr=$colors} - * </pre> - * @author Monte Ohrt <monte@ispi.net> - * @version 1.0 - * @link http://smarty.php.net/manual/en/language.function.html.table.php {html_table} - * (Smarty online manual) - * @param array - * @param Smarty - * @return string - */ -function smarty_function_html_table($params, &$smarty) -{ - $table_attr = 'border="1"'; - $tr_attr = ''; - $td_attr = ''; - $cols = 3; - $rows = 3; - $trailpad = ' '; - $vdir = 'down'; - $hdir = 'right'; - $inner = 'cols'; - - if (!isset($params['loop'])) { - $smarty->trigger_error("html_table: missing 'loop' parameter"); - return; - } - - foreach ($params as $_key=>$_value) { - switch ($_key) { - case 'loop': - $$_key = (array)$_value; - break; - - case 'cols': - case 'rows': - $$_key = (int)$_value; - break; - - case 'table_attr': - case 'trailpad': - case 'hdir': - case 'vdir': - case 'inner': - $$_key = (string)$_value; - break; - - case 'tr_attr': - case 'td_attr': - $$_key = $_value; - break; - } - } - - $loop_count = count($loop); - if (empty($params['rows'])) { - /* no rows specified */ - $rows = ceil($loop_count/$cols); - } elseif (empty($params['cols'])) { - if (!empty($params['rows'])) { - /* no cols specified, but rows */ - $cols = ceil($loop_count/$rows); - } - } - - $output = "<table $table_attr>\n"; - - for ($r=0; $r<$rows; $r++) { - $output .= "<tr" . smarty_function_html_table_cycle('tr', $tr_attr, $r) . ">\n"; - $rx = ($vdir == 'down') ? $r*$cols : ($rows-1-$r)*$cols; - - for ($c=0; $c<$cols; $c++) { - $x = ($hdir == 'right') ? $rx+$c : $rx+$cols-1-$c; - if ($inner!='cols') { - /* shuffle x to loop over rows*/ - $x = floor($x/$cols) + ($x%$cols)*$rows; - } - - if ($x<$loop_count) { - $output .= "<td" . smarty_function_html_table_cycle('td', $td_attr, $c) . ">" . $loop[$x] . "</td>\n"; - } else { - $output .= "<td" . smarty_function_html_table_cycle('td', $td_attr, $c) . ">$trailpad</td>\n"; - } - } - $output .= "</tr>\n"; - } - $output .= "</table>\n"; - - return $output; -} - -function smarty_function_html_table_cycle($name, $var, $no) { - if(!is_array($var)) { - $ret = $var; - } else { - $ret = $var[$no % count($var)]; - } - - return ($ret) ? ' '.$ret : ''; -} - - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.mailto.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.mailto.php deleted file mode 100644 index a4f4d2d5d..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.mailto.php +++ /dev/null @@ -1,143 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty {mailto} function plugin - * - * Type: function<br> - * Name: mailto<br> - * Date: May 21, 2002 - * Purpose: automate mailto address link creation, and optionally - * encode them.<br> - * Input:<br> - * - address = e-mail address - * - text = (optional) text to display, default is address - * - encode = (optional) can be one of: - * * none : no encoding (default) - * * javascript : encode with javascript - * * hex : encode with hexidecimal (no javascript) - * - cc = (optional) address(es) to carbon copy - * - bcc = (optional) address(es) to blind carbon copy - * - subject = (optional) e-mail subject - * - newsgroups = (optional) newsgroup(s) to post to - * - followupto = (optional) address(es) to follow up to - * - extra = (optional) extra tags for the href link - * - * Examples: - * <pre> - * {mailto address="me@domain.com"} - * {mailto address="me@domain.com" encode="javascript"} - * {mailto address="me@domain.com" encode="hex"} - * {mailto address="me@domain.com" subject="Hello to you!"} - * {mailto address="me@domain.com" cc="you@domain.com,they@domain.com"} - * {mailto address="me@domain.com" extra='class="mailto"'} - * </pre> - * @link http://smarty.php.net/manual/en/language.function.mailto.php {mailto} - * (Smarty online manual) - * @version 1.2 - * @author Monte Ohrt <monte@ispi.net> - * @author credits to Jason Sweat (added cc, bcc and subject functionality) - * @param array - * @param Smarty - * @return string - */ -function smarty_function_mailto($params, &$smarty) -{ - $extra = ''; - - if (empty($params['address'])) { - $smarty->trigger_error("mailto: missing 'address' parameter"); - return; - } else { - $address = $params['address']; - } - - $text = $address; - - // netscape and mozilla do not decode %40 (@) in BCC field (bug?) - // so, don't encode it. - $mail_parms = array(); - foreach ($params as $var=>$value) { - switch ($var) { - case 'cc': - case 'bcc': - case 'followupto': - if (!empty($value)) - $mail_parms[] = $var.'='.str_replace('%40','@',rawurlencode($value)); - break; - - case 'subject': - case 'newsgroups': - $mail_parms[] = $var.'='.rawurlencode($value); - break; - - case 'extra': - case 'text': - $$var = $value; - - default: - } - } - - $mail_parm_vals = ''; - for ($i=0; $i<count($mail_parms); $i++) { - $mail_parm_vals .= (0==$i) ? '?' : '&'; - $mail_parm_vals .= $mail_parms[$i]; - } - $address .= $mail_parm_vals; - - $encode = (empty($params['encode'])) ? 'none' : $params['encode']; - if (!in_array($encode,array('javascript','hex','none')) ) { - $smarty->trigger_error("mailto: 'encode' parameter must be none, javascript or hex"); - return; - } - - if ($encode == 'javascript' ) { - $string = 'document.write(\'<a href="mailto:'.$address.'" '.$extra.'>'.$text.'</a>\');'; - - $js_encode = ''; - for ($x=0; $x < strlen($string); $x++) { - $js_encode .= '%' . bin2hex($string[$x]); - } - - return '<script type="text/javascript">eval(unescape(\''.$js_encode.'\'))</script>'; - - } elseif ($encode == 'hex') { - - preg_match('!^(.*)(\?.*)$!',$address,$match); - if(!empty($match[2])) { - $smarty->trigger_error("mailto: hex encoding does not work with extra attributes. Try javascript."); - return; - } - $address_encode = ''; - for ($x=0; $x < strlen($address); $x++) { - if(preg_match('!\w!',$address[$x])) { - $address_encode .= '%' . bin2hex($address[$x]); - } else { - $address_encode .= $address[$x]; - } - } - $text_encode = ''; - for ($x=0; $x < strlen($text); $x++) { - $text_encode .= '&#x' . bin2hex($text[$x]).';'; - } - - $mailto = "mailto:"; - return '<a href="'.$mailto.$address_encode.'" '.$extra.'>'.$text_encode.'</a>'; - - } else { - // no encoding - return '<a href="mailto:'.$address.'" '.$extra.'>'.$text.'</a>'; - - } - -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.math.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.math.php deleted file mode 100644 index c080d4dfe..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.math.php +++ /dev/null @@ -1,82 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty {math} function plugin - * - * Type: function<br> - * Name: math<br> - * Purpose: handle math computations in template<br> - * @link http://smarty.php.net/manual/en/language.function.math.php {math} - * (Smarty online manual) - * @param array - * @param Smarty - * @return string - */ -function smarty_function_math($params, &$smarty) -{ - // be sure equation parameter is present - if (empty($params['equation'])) { - $smarty->trigger_error("math: missing equation parameter"); - return; - } - - $equation = $params['equation']; - - // make sure parenthesis are balanced - if (substr_count($equation,"(") != substr_count($equation,")")) { - $smarty->trigger_error("math: unbalanced parenthesis"); - return; - } - - // match all vars in equation, make sure all are passed - preg_match_all("!\!(0x)([a-zA-Z][a-zA-Z0-9_]*)!",$equation, $match); - $allowed_funcs = array('int','abs','ceil','cos','exp','floor','log','log10', - 'max','min','pi','pow','rand','round','sin','sqrt','srand','tan'); - foreach($match[2] as $curr_var) { - if (!in_array($curr_var,array_keys($params)) && !in_array($curr_var, $allowed_funcs)) { - $smarty->trigger_error("math: parameter $curr_var not passed as argument"); - return; - } - } - - foreach($params as $key => $val) { - if ($key != "equation" && $key != "format" && $key != "assign") { - // make sure value is not empty - if (strlen($val)==0) { - $smarty->trigger_error("math: parameter $key is empty"); - return; - } - if (!is_numeric($val)) { - $smarty->trigger_error("math: parameter $key: is not numeric"); - return; - } - $equation = preg_replace("/\b$key\b/",$val, $equation); - } - } - - eval("\$smarty_math_result = ".$equation.";"); - - if (empty($params['format'])) { - if (empty($params['assign'])) { - return $smarty_math_result; - } else { - $smarty->assign($params['assign'],$smarty_math_result); - } - } else { - if (empty($params['assign'])){ - printf($params['format'],$smarty_math_result); - } else { - $smarty->assign($params['assign'],sprintf($params['format'],$smarty_math_result)); - } - } -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.popup.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.popup.php deleted file mode 100644 index 80bd62aaf..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.popup.php +++ /dev/null @@ -1,110 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty {popup} function plugin - * - * Type: function<br> - * Name: popup<br> - * Purpose: make text pop up in windows via overlib - * @link http://smarty.php.net/manual/en/language.function.popup.php {popup} - * (Smarty online manual) - * @param array - * @param Smarty - * @return string - */ -function smarty_function_popup($params, &$smarty) -{ - $append = ''; - foreach ($params as $_key=>$_value) { - switch ($_key) { - case 'text': - case 'trigger': - $$_key = (string)$_value; - break; - - case 'caption': - case 'closetext': - case 'status': - $append .= ',' . strtoupper($_key) . ",'" . str_replace("'","\'",$_value) . "'"; - break; - - case 'fgcolor': - case 'bgcolor': - case 'textcolor': - case 'capcolor': - case 'closecolor': - case 'textfont': - case 'captionfont': - case 'closefont': - case 'fgbackground': - case 'bgbackground': - case 'inarray': - case 'caparray': - case 'capicon': - case 'background': - case 'frame': - case 'function': - $append .= ',' . strtoupper($_key) . ",'$_value'"; - break; - - case 'textsize': - case 'captionsize': - case 'closesize': - case 'width': - case 'height': - case 'border': - case 'offsetx': - case 'offsety': - case 'snapx': - case 'snapy': - case 'fixx': - case 'fixy': - case 'padx': - case 'pady': - case 'timeout': - case 'delay': - $append .= ',' . strtoupper($_key) . ",$_value"; - break; - - case 'sticky': - case 'left': - case 'right': - case 'center': - case 'above': - case 'below': - case 'noclose': - case 'autostatus': - case 'autostatuscap': - case 'fullhtml': - case 'hauto': - case 'vauto': - if ($_value) $append .= ',' . strtoupper($_key); - break; - - default: - $smarty->trigger_error("[popup] unknown parameter $_key", E_USER_WARNING); - } - } - - if (empty($text) && !isset($inarray) && empty($function)) { - $smarty->trigger_error("overlib: attribute 'text' or 'inarray' or 'function' required"); - return false; - } - - if (empty($trigger)) { $trigger = "onmouseover"; } - - $retval = $trigger . '="return overlib(\''.preg_replace(array("!'!","![\r\n]!"),array("\'",'\r'),$text).'\''; - $retval .= $append . ');" onmouseout="nd();"'; - - return $retval; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.popup_init.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.popup_init.php deleted file mode 100644 index f62c33c13..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/function.popup_init.php +++ /dev/null @@ -1,39 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty {popup_init} function plugin - * - * Type: function<br> - * Name: popup_init<br> - * Purpose: initialize overlib - * @link http://smarty.php.net/manual/en/language.function.popup.init.php {popup_init} - * (Smarty online manual) - * @param array - * @param Smarty - * @return string - */ -function smarty_function_popup_init($params, &$smarty) -{ - $zindex = 1000; - - if (!empty($params['zindex'])) { - $zindex = $params['zindex']; - } - - if (!empty($params['src'])) { - return '<div id="overDiv" style="position:absolute; visibility:hidden; z-index:'.$zindex.';"></div>' . "\n" - . '<script type="text/javascript" language="JavaScript" src="'.$params['src'].'"></script>' . "\n"; - } else { - $smarty->trigger_error("popup_init: missing src parameter"); - } -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.capitalize.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.capitalize.php deleted file mode 100644 index 2b9169cef..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.capitalize.php +++ /dev/null @@ -1,42 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty capitalize modifier plugin - * - * Type: modifier<br> - * Name: capitalize<br> - * Purpose: capitalize words in the string - * @link http://smarty.php.net/manual/en/language.modifiers.php#LANGUAGE.MODIFIER.CAPITALIZE - * capitalize (Smarty online manual) - * @param string - * @return string - */ -function smarty_modifier_capitalize($string, $uc_digits = false) -{ - smarty_modifier_capitalize_ucfirst(null, $uc_digits); - return preg_replace_callback('!\b\w+\b!', 'smarty_modifier_capitalize_ucfirst', $string); -} - -function smarty_modifier_capitalize_ucfirst($string, $uc_digits = null) -{ - static $_uc_digits = false; - - if(isset($uc_digits)) { - $_uc_digits = $uc_digits; - return; - } - - if(!preg_match('!\d!',$string[0]) || $_uc_digits) - return ucfirst($string[0]); - else - return $string[0]; -} - - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.cat.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.cat.php deleted file mode 100644 index f5dc3d689..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.cat.php +++ /dev/null @@ -1,33 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty cat modifier plugin - * - * Type: modifier<br> - * Name: cat<br> - * Date: Feb 24, 2003 - * Purpose: catenate a value to a variable - * Input: string to catenate - * Example: {$var|cat:"foo"} - * @link http://smarty.php.net/manual/en/language.modifier.cat.php cat - * (Smarty online manual) - * @author Monte Ohrt <monte@ispi.net> - * @version 1.0 - * @param string - * @param string - * @return string - */ -function smarty_modifier_cat($string, $cat) -{ - return $string . $cat; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_characters.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_characters.php deleted file mode 100644 index 49ce655e8..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_characters.php +++ /dev/null @@ -1,31 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty count_characters modifier plugin - * - * Type: modifier<br> - * Name: count_characteres<br> - * Purpose: count the number of characters in a text - * @link http://smarty.php.net/manual/en/language.modifier.count.characters.php - * count_characters (Smarty online manual) - * @param string - * @param boolean include whitespace in the character count - * @return integer - */ -function smarty_modifier_count_characters($string, $include_spaces = false) -{ - if ($include_spaces) - return(strlen($string)); - - return preg_match_all("/[^\s]/",$string, $match); -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_paragraphs.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_paragraphs.php deleted file mode 100644 index 6a9833c97..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_paragraphs.php +++ /dev/null @@ -1,28 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty count_paragraphs modifier plugin - * - * Type: modifier<br> - * Name: count_paragraphs<br> - * Purpose: count the number of paragraphs in a text - * @link http://smarty.php.net/manual/en/language.modifier.count.paragraphs.php - * count_paragraphs (Smarty online manual) - * @param string - * @return integer - */ -function smarty_modifier_count_paragraphs($string) -{ - // count \r or \n characters - return count(preg_split('/[\r\n]+/', $string)); -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_sentences.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_sentences.php deleted file mode 100644 index 0c210f08f..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_sentences.php +++ /dev/null @@ -1,28 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty count_sentences modifier plugin - * - * Type: modifier<br> - * Name: count_sentences - * Purpose: count the number of sentences in a text - * @link http://smarty.php.net/manual/en/language.modifier.count.paragraphs.php - * count_sentences (Smarty online manual) - * @param string - * @return integer - */ -function smarty_modifier_count_sentences($string) -{ - // find periods with a word before but not after. - return preg_match_all('/[^\s]\.(?!\w)/', $string, $match); -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_words.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_words.php deleted file mode 100644 index 42c8a741c..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.count_words.php +++ /dev/null @@ -1,32 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty count_words modifier plugin - * - * Type: modifier<br> - * Name: count_words<br> - * Purpose: count the number of words in a text - * @link http://smarty.php.net/manual/en/language.modifier.count.words.php - * count_words (Smarty online manual) - * @param string - * @return integer - */ -function smarty_modifier_count_words($string) -{ - // split text by ' ',\r,\n,\f,\t - $split_array = preg_split('/\s+/',$string); - // count matches that contain alphanumerics - $word_count = preg_grep('/[a-zA-Z0-9\\x80-\\xff]/', $split_array); - - return count($word_count); -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.date_format.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.date_format.php deleted file mode 100644 index 2f36b3b79..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.date_format.php +++ /dev/null @@ -1,48 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Include the {@link shared.make_timestamp.php} plugin - */ -require_once $smarty->_get_plugin_filepath('shared','make_timestamp'); -/** - * Smarty date_format modifier plugin - * - * Type: modifier<br> - * Name: date_format<br> - * Purpose: format datestamps via strftime<br> - * Input:<br> - * - string: input date string - * - format: strftime format for output - * - default_date: default date if $string is empty - * @link http://smarty.php.net/manual/en/language.modifier.date.format.php - * date_format (Smarty online manual) - * @param string - * @param string - * @param string - * @return string|void - * @uses smarty_make_timestamp() - */ -function smarty_modifier_date_format($string, $format="%b %e, %Y", $default_date=null) -{ - if (substr(PHP_OS,0,3) == 'WIN') { - $_win_from = array ('%e', '%T', '%D'); - $_win_to = array ('%#d', '%H:%M:%S', '%m/%d/%y'); - $format = str_replace($_win_from, $_win_to, $format); - } - if($string != '') { - return strftime($format, smarty_make_timestamp($string)); - } elseif (isset($default_date) && $default_date != '') { - return strftime($format, smarty_make_timestamp($default_date)); - } else { - return; - } -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.debug_print_var.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.debug_print_var.php deleted file mode 100644 index b9bb18488..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.debug_print_var.php +++ /dev/null @@ -1,56 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty debug_print_var modifier plugin - * - * Type: modifier<br> - * Name: debug_print_var<br> - * Purpose: formats variable contents for display in the console - * @link http://smarty.php.net/manual/en/language.modifier.debug.print.var.php - * debug_print_var (Smarty online manual) - * @param array|object - * @param integer - * @param integer - * @return string - */ -function smarty_modifier_debug_print_var($var, $depth = 0, $length = 40) -{ - $_replace = array("\n"=>'<i>\n</i>', "\r"=>'<i>\r</i>', "\t"=>'<i>\t</i>'); - if (is_array($var)) { - $results = "<b>Array (".count($var).")</b>"; - foreach ($var as $curr_key => $curr_val) { - $return = smarty_modifier_debug_print_var($curr_val, $depth+1, $length); - $results .= "<br>".str_repeat(' ', $depth*2)."<b>".strtr($curr_key, $_replace)."</b> => $return"; - } - } else if (is_object($var)) { - $object_vars = get_object_vars($var); - $results = "<b>".get_class($var)." Object (".count($object_vars).")</b>"; - foreach ($object_vars as $curr_key => $curr_val) { - $return = smarty_modifier_debug_print_var($curr_val, $depth+1, $length); - $results .= "<br>".str_repeat(' ', $depth*2)."<b>$curr_key</b> => $return"; - } - } else if (is_resource($var)) { - $results = '<i>'.(string)$var.'</i>'; - } else if (empty($var) && $var != "0") { - $results = '<i>empty</i>'; - } else { - if (strlen($var) > $length ) { - $results = substr($var, 0, $length-3).'...'; - } else { - $results = $var; - } - $results = htmlspecialchars($results); - $results = strtr($results, $_replace); - } - return $results; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.default.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.default.php deleted file mode 100644 index 8268e396f..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.default.php +++ /dev/null @@ -1,31 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty default modifier plugin - * - * Type: modifier<br> - * Name: default<br> - * Purpose: designate default value for empty variables - * @link http://smarty.php.net/manual/en/language.modifier.default.php - * default (Smarty online manual) - * @param string - * @param string - * @return string - */ -function smarty_modifier_default($string, $default = '') -{ - if (!isset($string) || $string === '') - return $default; - else - return $string; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.escape.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.escape.php deleted file mode 100644 index 0a0270c56..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.escape.php +++ /dev/null @@ -1,89 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty escape modifier plugin - * - * Type: modifier<br> - * Name: escape<br> - * Purpose: Escape the string according to escapement type - * @link http://smarty.php.net/manual/en/language.modifier.escape.php - * escape (Smarty online manual) - * @param string - * @param html|htmlall|url|quotes|hex|hexentity|javascript - * @return string - */ -function smarty_modifier_escape($string, $esc_type = 'html') -{ - switch ($esc_type) { - case 'html': - return htmlspecialchars($string, ENT_QUOTES); - - case 'htmlall': - return htmlentities($string, ENT_QUOTES); - - case 'url': - return urlencode($string); - - case 'quotes': - // escape unescaped single quotes - return preg_replace("%(?<!\\\\)'%", "\\'", $string); - - case 'hex': - // escape every character into hex - $return = ''; - for ($x=0; $x < strlen($string); $x++) { - $return .= '%' . bin2hex($string[$x]); - } - return $return; - - case 'hexentity': - $return = ''; - for ($x=0; $x < strlen($string); $x++) { - $return .= '&#x' . bin2hex($string[$x]) . ';'; - } - return $return; - - case 'decentity': - $return = ''; - for ($x=0; $x < strlen($string); $x++) { - $return .= '&#' . ord($string[$x]) . ';'; - } - return $return; - - case 'javascript': - // escape quotes and backslashes, newlines, etc. - return strtr($string, array('\\'=>'\\\\',"'"=>"\\'",'"'=>'\\"',"\r"=>'\\r',"\n"=>'\\n','</'=>'<\/')); - - case 'mail': - // safe way to display e-mail address on a web page - return str_replace(array('@', '.'),array(' [AT] ', ' [DOT] '), $string); - - case 'nonstd': - // escape non-standard chars, such as ms document quotes - $_res = ''; - for($_i = 0, $_len = strlen($string); $_i < $_len; $_i++) { - $_ord = ord($string{$_i}); - // non-standard char, escape it - if($_ord >= 126){ - $_res .= '&#' . $_ord . ';'; - } - else { - $_res .= $string{$_i}; - } - } - return $_res; - - default: - return $string; - } -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.indent.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.indent.php deleted file mode 100644 index 1642bac3d..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.indent.php +++ /dev/null @@ -1,27 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty indent modifier plugin - * - * Type: modifier<br> - * Name: indent<br> - * Purpose: indent lines of text - * @link http://smarty.php.net/manual/en/language.modifier.indent.php - * indent (Smarty online manual) - * @param string - * @param integer - * @param string - * @return string - */ -function smarty_modifier_indent($string,$chars=4,$char=" ") -{ - return preg_replace('!^!m',str_repeat($char,$chars),$string); -} - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.lower.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.lower.php deleted file mode 100644 index 0b4d1517d..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.lower.php +++ /dev/null @@ -1,25 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty lower modifier plugin - * - * Type: modifier<br> - * Name: lower<br> - * Purpose: convert string to lowercase - * @link http://smarty.php.net/manual/en/language.modifier.lower.php - * lower (Smarty online manual) - * @param string - * @return string - */ -function smarty_modifier_lower($string) -{ - return strtolower($string); -} - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.nl2br.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.nl2br.php deleted file mode 100644 index 86a28d207..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.nl2br.php +++ /dev/null @@ -1,35 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty plugin - * - * Type: modifier<br> - * Name: nl2br<br> - * Date: Feb 26, 2003 - * Purpose: convert \r\n, \r or \n to <<br>> - * Input:<br> - * - contents = contents to replace - * - preceed_test = if true, includes preceeding break tags - * in replacement - * Example: {$text|nl2br} - * @link http://smarty.php.net/manual/en/language.modifier.nl2br.php - * nl2br (Smarty online manual) - * @version 1.0 - * @author Monte Ohrt <monte@ispi.net> - * @param string - * @return string - */ -function smarty_modifier_nl2br($string) -{ - return nl2br($string); -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.regex_replace.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.regex_replace.php deleted file mode 100644 index b9cc865ea..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.regex_replace.php +++ /dev/null @@ -1,29 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty regex_replace modifier plugin - * - * Type: modifier<br> - * Name: regex_replace<br> - * Purpose: regular epxression search/replace - * @link http://smarty.php.net/manual/en/language.modifier.regex.replace.php - * regex_replace (Smarty online manual) - * @param string - * @param string|array - * @param string|array - * @return string - */ -function smarty_modifier_regex_replace($string, $search, $replace) -{ - return preg_replace($search, $replace, $string); -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.replace.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.replace.php deleted file mode 100644 index 2a43515f7..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.replace.php +++ /dev/null @@ -1,29 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty replace modifier plugin - * - * Type: modifier<br> - * Name: replace<br> - * Purpose: simple search/replace - * @link http://smarty.php.net/manual/en/language.modifier.replace.php - * replace (Smarty online manual) - * @param string - * @param string - * @param string - * @return string - */ -function smarty_modifier_replace($string, $search, $replace) -{ - return str_replace($search, $replace, $string); -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.spacify.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.spacify.php deleted file mode 100644 index dad057f9b..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.spacify.php +++ /dev/null @@ -1,29 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty spacify modifier plugin - * - * Type: modifier<br> - * Name: spacify<br> - * Purpose: add spaces between characters in a string - * @link http://smarty.php.net/manual/en/language.modifier.spacify.php - * spacify (Smarty online manual) - * @param string - * @param string - * @return string - */ -function smarty_modifier_spacify($string, $spacify_char = ' ') -{ - return implode($spacify_char, - preg_split('//', $string, -1, PREG_SPLIT_NO_EMPTY)); -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.string_format.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.string_format.php deleted file mode 100644 index efd621506..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.string_format.php +++ /dev/null @@ -1,28 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty string_format modifier plugin - * - * Type: modifier<br> - * Name: string_format<br> - * Purpose: format strings via sprintf - * @link http://smarty.php.net/manual/en/language.modifier.string.format.php - * string_format (Smarty online manual) - * @param string - * @param string - * @return string - */ -function smarty_modifier_string_format($string, $format) -{ - return sprintf($format, $string); -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.strip.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.strip.php deleted file mode 100644 index 738c6407e..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.strip.php +++ /dev/null @@ -1,33 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty strip modifier plugin - * - * Type: modifier<br> - * Name: strip<br> - * Purpose: Replace all repeated spaces, newlines, tabs - * with a single space or supplied replacement string.<br> - * Example: {$var|strip} {$var|strip:" "} - * Date: September 25th, 2002 - * @link http://smarty.php.net/manual/en/language.modifier.strip.php - * strip (Smarty online manual) - * @author Monte Ohrt <monte@ispi.net> - * @version 1.0 - * @param string - * @param string - * @return string - */ -function smarty_modifier_strip($text, $replace = ' ') -{ - return preg_replace('!\s+!', $replace, $text); -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.strip_tags.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.strip_tags.php deleted file mode 100644 index 45f1ec14d..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.strip_tags.php +++ /dev/null @@ -1,31 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty strip_tags modifier plugin - * - * Type: modifier<br> - * Name: strip_tags<br> - * Purpose: strip html tags from text - * @link http://smarty.php.net/manual/en/language.modifier.strip.tags.php - * strip_tags (Smarty online manual) - * @param string - * @param boolean - * @return string - */ -function smarty_modifier_strip_tags($string, $replace_with_space = true) -{ - if ($replace_with_space) - return preg_replace('!<[^>]*?>!', ' ', $string); - else - return strip_tags($string); -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.truncate.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.truncate.php deleted file mode 100644 index 15a26ba97..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.truncate.php +++ /dev/null @@ -1,43 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty truncate modifier plugin - * - * Type: modifier<br> - * Name: truncate<br> - * Purpose: Truncate a string to a certain length if necessary, - * optionally splitting in the middle of a word, and - * appending the $etc string. - * @link http://smarty.php.net/manual/en/language.modifier.truncate.php - * truncate (Smarty online manual) - * @param string - * @param integer - * @param string - * @param boolean - * @return string - */ -function smarty_modifier_truncate($string, $length = 80, $etc = '...', - $break_words = false) -{ - if ($length == 0) - return ''; - - if (strlen($string) > $length) { - $length -= strlen($etc); - if (!$break_words) - $string = preg_replace('/\s+?(\S+)?$/', '', substr($string, 0, $length+1)); - - return substr($string, 0, $length).$etc; - } else - return $string; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.upper.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.upper.php deleted file mode 100644 index 69960ae72..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.upper.php +++ /dev/null @@ -1,25 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty upper modifier plugin - * - * Type: modifier<br> - * Name: upper<br> - * Purpose: convert string to uppercase - * @link http://smarty.php.net/manual/en/language.modifier.upper.php - * upper (Smarty online manual) - * @param string - * @return string - */ -function smarty_modifier_upper($string) -{ - return strtoupper($string); -} - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.wordwrap.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.wordwrap.php deleted file mode 100644 index b9a9fe94b..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/modifier.wordwrap.php +++ /dev/null @@ -1,28 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Smarty wordwrap modifier plugin - * - * Type: modifier<br> - * Name: wordwrap<br> - * Purpose: wrap a string of text at a given length - * @link http://smarty.php.net/manual/en/language.modifier.wordwrap.php - * wordwrap (Smarty online manual) - * @param string - * @param integer - * @param string - * @param boolean - * @return string - */ -function smarty_modifier_wordwrap($string,$length=80,$break="\n",$cut=false) -{ - return wordwrap($string,$length,$break,$cut); -} - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/outputfilter.localizer.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/outputfilter.localizer.php deleted file mode 100755 index 97f1ec610..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/outputfilter.localizer.php +++ /dev/null @@ -1,29 +0,0 @@ -<?php -/* - * Smarty plugin - * ------------------------------------------------------------- - * File: postfilter.localizer.php - * Type: postfilter - * Name: localizer - * Version: 1.0 - * Date: Feb, 2005 - * Purpose: Replace string to translate with translations - * Install: Drop into the plugin directory, call - * $smarty->load_filter('post','localizer'); - * from application. - * Author: Media Development Loan Fund - * ------------------------------------------------------------- - */ - function smarty_outputfiler_localizer_tra($matches) - { - foreach ($matches as $match) { - $key = substr($match, 2, strpos(substr($match, 2), '#')); - } - } - - function smarty_outputfilter_localizer($compiled, &$smarty) - { - $pattern = '/##.*##/U'; - return preg_replace_callback($pattern, 'smarty_outputfiler_localizer_tra', $compiled); - } -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/outputfilter.trimwhitespace.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/outputfilter.trimwhitespace.php deleted file mode 100644 index 9979e8586..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/outputfilter.trimwhitespace.php +++ /dev/null @@ -1,75 +0,0 @@ -<?php -/** - * Smarty plugin - * @package Smarty - * @subpackage plugins - */ - -/** - * Smarty trimwhitespace outputfilter plugin - * - * File: outputfilter.trimwhitespace.php<br> - * Type: outputfilter<br> - * Name: trimwhitespace<br> - * Date: Jan 25, 2003<br> - * Purpose: trim leading white space and blank lines from - * template source after it gets interpreted, cleaning - * up code and saving bandwidth. Does not affect - * <<PRE>></PRE> and <SCRIPT></SCRIPT> blocks.<br> - * Install: Drop into the plugin directory, call - * <code>$smarty->load_filter('output','trimwhitespace');</code> - * from application. - * @author Monte Ohrt <monte@ispi.net> - * @author Contributions from Lars Noschinski <lars@usenet.noschinski.de> - * @version 1.3 - * @param string - * @param Smarty - */ -function smarty_outputfilter_trimwhitespace($source, &$smarty) -{ - // Pull out the script blocks - preg_match_all("!<script[^>]+>.*?</script>!is", $source, $match); - $_script_blocks = $match[0]; - $source = preg_replace("!<script[^>]+>.*?</script>!is", - '@@@SMARTY:TRIM:SCRIPT@@@', $source); - - // Pull out the pre blocks - preg_match_all("!<pre>.*?</pre>!is", $source, $match); - $_pre_blocks = $match[0]; - $source = preg_replace("!<pre>.*?</pre>!is", - '@@@SMARTY:TRIM:PRE@@@', $source); - - // Pull out the textarea blocks - preg_match_all("!<textarea[^>]+>.*?</textarea>!is", $source, $match); - $_textarea_blocks = $match[0]; - $source = preg_replace("!<textarea[^>]+>.*?</textarea>!is", - '@@@SMARTY:TRIM:TEXTAREA@@@', $source); - - // remove all leading spaces, tabs and carriage returns NOT - // preceeded by a php close tag. - $source = trim(preg_replace('/((?<!\?>)\n)[\s]+/m', '\1', $source)); - - // replace script blocks - smarty_outputfilter_trimwhitespace_replace("@@@SMARTY:TRIM:SCRIPT@@@",$_script_blocks, $source); - - // replace pre blocks - smarty_outputfilter_trimwhitespace_replace("@@@SMARTY:TRIM:PRE@@@",$_pre_blocks, $source); - - // replace textarea blocks - smarty_outputfilter_trimwhitespace_replace("@@@SMARTY:TRIM:TEXTAREA@@@",$_textarea_blocks, $source); - - return $source; -} - -function smarty_outputfilter_trimwhitespace_replace($search_str, $replace, &$subject) { - $_len = strlen($search_str); - $_pos = 0; - for ($_i=0, $_count=count($replace); $_i<$_count; $_i++) - if (($_pos=strpos($subject, $search_str, $_pos))!==false) - $subject = substr_replace($subject, $replace[$_i], $_pos, $_len); - else - break; - -} - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/postfilter.template_marker.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/postfilter.template_marker.php deleted file mode 100755 index 9056014bb..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/postfilter.template_marker.php +++ /dev/null @@ -1,21 +0,0 @@ -<?php -/* - * Smarty plugin - * ------------------------------------------------------------- - * File: postfilter.template_marker.php - * Type: postfilter - * Name: template_marker - * Version: 1.0 - * Date: March, 2003 - * Purpose: Mark the Template begin and end - * Install: Drop into the plugin directory, call - * $smarty->load_filter('post','template_marker'); - * from application. - * Author: Erik Seifert <shaggy@gmx.at> - * ------------------------------------------------------------- - */ - function smarty_postfilter_template_marker($compiled, &$smarty) - { - return '<!-- BEGIN : ' . $smarty->_current_file . ' -->' . $compiled . '<!-- END : ' . $smarty->_current_file . ' -->'; - } -?> \ No newline at end of file diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/shared.escape_special_chars.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/shared.escape_special_chars.php deleted file mode 100644 index 515763abe..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/shared.escape_special_chars.php +++ /dev/null @@ -1,30 +0,0 @@ -<?php -/** - * Smarty shared plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * escape_special_chars common function - * - * Function: smarty_function_escape_special_chars<br> - * Purpose: used by other smarty functions to escape - * special chars except for already escaped ones - * @param string - * @return string - */ -function smarty_function_escape_special_chars($string) -{ - if(!is_array($string)) { - $string = preg_replace('!&(#?\w+);!', '%%%SMARTY_START%%%\\1%%%SMARTY_END%%%', $string); - $string = htmlspecialchars($string); - $string = str_replace(array('%%%SMARTY_START%%%','%%%SMARTY_END%%%'), array('&',';'), $string); - } - return $string; -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/shared.make_timestamp.php b/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/shared.make_timestamp.php deleted file mode 100644 index acdd77735..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/libs/plugins/shared.make_timestamp.php +++ /dev/null @@ -1,43 +0,0 @@ -<?php -/** - * Smarty shared plugin - * @package Smarty - * @subpackage plugins - */ - - -/** - * Function: smarty_make_timestamp<br> - * Purpose: used by other smarty functions to make a timestamp - * from a string. - * @param string - * @return string - */ -function smarty_make_timestamp($string) -{ - if(empty($string)) { - $string = "now"; - } - $time = strtotime($string); - if (is_numeric($time) && $time != -1) - return $time; - - // is mysql timestamp format of YYYYMMDDHHMMSS? - if (preg_match('/^\d{14}$/', $string)) { - $time = mktime(substr($string,8,2),substr($string,10,2),substr($string,12,2), - substr($string,4,2),substr($string,6,2),substr($string,0,4)); - - return $time; - } - - // couldn't recognize it, try to return a time - $time = (int) $string; - if ($time > 0) - return $time; - else - return time(); -} - -/* vim: set expandtab: */ - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/misc/smarty_icon.README b/livesupport/modules/htmlUI/var/html/Smarty/misc/smarty_icon.README deleted file mode 100644 index a5b4d05cc..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/misc/smarty_icon.README +++ /dev/null @@ -1,6 +0,0 @@ -Feel free to put the smarty icon on your site. -You can cut-and-paste the following code, be sure -to adjust the path to the image: - -<a href="http://smarty.php.net/"> -<img src="smarty_icon.gif" border="0" height="31" width="88" /></a> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/misc/smarty_icon.gif b/livesupport/modules/htmlUI/var/html/Smarty/misc/smarty_icon.gif deleted file mode 100644 index 5d5196995c01db0c78f6ff1b3191f6dbd8225460..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1102 zcmV-U1hM-^Nk%w1VORhk0K@<Q_44MVp_%v1SXo(K`_^t78y)o6ilCHM`{=Ciy*Q<k z8s*oq`{)Dk!8^gVmDtCbTT2`H;F-_R)3&B&%Az*9tPA1K0Dpddhj}%-y0<tuHu1wt zphyv$K@I=_0Pw&-A^8LV00000EC2ui09XJY000I5peK%GX`X1RuI&1~a4gSsZQpoa zi+b<>K%8hp3>uF}*>IK+L<q4&a@r6O3<iO5DN7I#5kW$_A&6h&G%THHsNLfjJpP)e z1q;U|U|{>DJ02ToY6b{k0s;mR5gTJw1d(D=iHT)q372PX8&;7YW1W>|5f>sC2BMag zT7g8WWf2Y&6Axer2B1z44gn4iVFtVp3kVLs5qSX*1ep;A$G%S+!oLf|3mPH=#lytj zHbaSwj1LD26%z*sV9g&37a9c~1sWF*00Z&^0|oUL{R#}oa3z2~dIB9F2%w>%z6=uP z(HkJ4VM7W1Gz<tQNLK^|3l3CZKvKYg31Phd1Q?-BL;wI1RSZDzK%%^D09KNKD6zl= z2_p(*7$8Ce$3ZU)O;A9xX@djI8W=F;K?8sb{$5hmFtlifmIDAhkf%X{P7MpPvCNQf zTUw%3ubw(uhuVaZO-a(ig@CHSJrcldmFpoa)tLq)n2lEyUrV%$;G!asp(sXr3+TSE zi#Kn&LlLgV6j*HVVZs9#4UJjVR?7<!q)Ik3)}=NL2<SGThG1!41{M_9S_D8sh5%Sk z^(~qc=V=EL`87uHnt<$6)~AY)7yt?d2>u{Ycrk>?BAOySADAW}z&yjwnQxVF+ONUw zj!(rl0GFGU$~y@_fd&*%pum9R4H3!zA|E|~fdwR0aKHk&s5C-9E&<SzP*iz9-*#r9 z5CDKxEzm#&aCrcm01u>y)(7H2AY+Ull&6Xl=U5QjaE`Ee(01Ht=uZJ=4SAeDT(vck zkr@n$Rssevv`qw1c8E#?1$<!C2jdyV1sen$009OVK;Qr)Vl+U2ECICXzygY7aLk)| z9FtZrzYy?%o5u8VC!SP(0F9dlG+@jK83=%-mM>tyC>JoO3D5-qq4b0lZ7diGC!Uzm zX(ExB0f{7`f*R@|nTGlSWskv`K#VhfS7S#}n8Xi1nM48zC~Z9QK?8RD!3HS63hT!j zy-H=DbzBly;CBhq8iQR596$lf9aChx1_AV4kU=Vdd{>Wn<O%Z1x#*^=?z-%@>n^&i zoXe56^wt{)2l(cz@4o!@>+in+2Q09^B6MJ|3?0Ofu)zz%a4^FOe{itE3PWr$#Scd; zvBMHK>@dRxL)`Jg43E6=!zO1;^2!!pEb_@CXZ%9LEq4%d$tBMm@y;Kc{PD^^*Q_zh zFn4S;&pLzbfy*k>d@{~5L(Q_#EFXO|$yV2Vv&tBw{PNQ&Pn>kkT^l_!$3&04HPvjl U?e^Pnzum&zbk}Y7+#vt}JGB<e9smFU diff --git a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/README b/livesupport/modules/htmlUI/var/html/Smarty/unit_test/README deleted file mode 100644 index d4d973130..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/README +++ /dev/null @@ -1,32 +0,0 @@ -Smarty Unit Testing -------------------- - -Smarty unit tests require the PEAR PHPUnit -package to be installed. See if you have that -installed with the following command: - -$> pear list - -If you don't see PHPUnit, install with this: - -$> pear install PHPUnit - -Edit the config.php file, -be sure everything is defined correctly. - -Be sure the following directories are present: - -templates -configs -templates_c (writable) -cache (writable) - -Then run from the command line: -php -q smarty_unit_test.php - -Or from the web browser: -http://www.your_domain.com/path/to/smarty_unit_test_gui.php - -This will run a unit test for every component -of Smarty and dump the results. All should pass -with flying colors. :) diff --git a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/config.php b/livesupport/modules/htmlUI/var/html/Smarty/unit_test/config.php deleted file mode 100644 index 5e7da0561..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/config.php +++ /dev/null @@ -1,5 +0,0 @@ -<?php - -define('SMARTY_DIR', '../libs/'); - -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/configs/globals_double_quotes.conf b/livesupport/modules/htmlUI/var/html/Smarty/unit_test/configs/globals_double_quotes.conf deleted file mode 100644 index 5abc475eb..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/configs/globals_double_quotes.conf +++ /dev/null @@ -1 +0,0 @@ -foo = "bar" diff --git a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/configs/globals_single_quotes.conf b/livesupport/modules/htmlUI/var/html/Smarty/unit_test/configs/globals_single_quotes.conf deleted file mode 100644 index 4517b7bd1..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/configs/globals_single_quotes.conf +++ /dev/null @@ -1 +0,0 @@ -foo = 'bar' diff --git a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/smarty_unit_test.php b/livesupport/modules/htmlUI/var/html/Smarty/unit_test/smarty_unit_test.php deleted file mode 100644 index c56a61a0e..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/smarty_unit_test.php +++ /dev/null @@ -1,10 +0,0 @@ -<?php - -require_once 'test_cases.php'; -require_once 'PHPUnit.php'; - -$suite = new PHPUnit_TestSuite("SmartyTest"); -$result = PHPUnit::run($suite); - -echo $result -> toString(); -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/smarty_unit_test_gui.php b/livesupport/modules/htmlUI/var/html/Smarty/unit_test/smarty_unit_test_gui.php deleted file mode 100644 index 03309d4cb..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/smarty_unit_test_gui.php +++ /dev/null @@ -1,10 +0,0 @@ -<?php - -require_once 'test_cases.php'; -require_once 'PHPUnit.php'; - -$suite = new PHPUnit_TestSuite("SmartyTest"); -$result = PHPUnit::run($suite); - -echo $result -> toHTML(); -?> diff --git a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/assign_var.tpl b/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/assign_var.tpl deleted file mode 100644 index acc4b66a4..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/assign_var.tpl +++ /dev/null @@ -1 +0,0 @@ -{$foo} diff --git a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/constant.tpl b/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/constant.tpl deleted file mode 100644 index 7ae11f1dc..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/constant.tpl +++ /dev/null @@ -1 +0,0 @@ -{$smarty.const.TEST_CONSTANT} diff --git a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/index.tpl b/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/index.tpl deleted file mode 100644 index fb6aad233..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/index.tpl +++ /dev/null @@ -1 +0,0 @@ -TEST STRING diff --git a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/parse_math.tpl b/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/parse_math.tpl deleted file mode 100644 index 0b787d363..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/parse_math.tpl +++ /dev/null @@ -1,12 +0,0 @@ -{foreach name=loop from=$items item=i} -{$smarty.foreach.loop.iteration+2} -{$smarty.foreach.loop.iteration+$flt} -{$smarty.foreach.loop.iteration+$obj->six()} -{$smarty.foreach.loop.iteration+$obj->ten} -{/foreach} -{$obj->ten+$flt} -{$obj->ten*$flt} -{$obj->six()+$obj->ten} -{$obj->ten+$obj->ten} -{$obj->six()+$flt} -{$obj->six()+$items.0} diff --git a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/parse_obj_meth.tpl b/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/parse_obj_meth.tpl deleted file mode 100644 index ab198327f..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/templates/parse_obj_meth.tpl +++ /dev/null @@ -1,8 +0,0 @@ -{$obj->meth($foo, 2.5)} -{$obj->meth(2.5, $foo)} -{$obj->meth(2.5)} -{$obj->meth($obj->val, "foo")} -{$obj->meth("foo", $obj->val)} -{$obj->meth("foo", $foo)} -{$obj->meth($obj->arr.one, 2)} -{$obj->meth($obj->meth("foo", $foo))} diff --git a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/test_cases.php b/livesupport/modules/htmlUI/var/html/Smarty/unit_test/test_cases.php deleted file mode 100644 index 2df920e90..000000000 --- a/livesupport/modules/htmlUI/var/html/Smarty/unit_test/test_cases.php +++ /dev/null @@ -1,450 +0,0 @@ -<?php - -require_once './config.php'; -require_once SMARTY_DIR . 'Smarty.class.php'; -require_once 'PHPUnit.php'; - -class Obj { - var $val = 'val'; - var $arr = array('one' => 'one', 'two' => 2); - var $ten = 10; - - function meth($a="a", $b="b") { - return "$a:$b"; - } - - function six() { - return 6; - } -} - - -class SmartyTest extends PHPUnit_TestCase { - // contains the object handle of the string class - var $abc; - // contains the last triggered error's errorlevel - var $errorlevel; - - // constructor of the test suite - function SmartyTest($name) { - $this->PHPUnit_TestCase($name); - } - - // called before the test functions will be executed - // this function is defined in PHPUnit_TestCase and overwritten - // here - function setUp() { - // create a new instance of String with the - // string 'abc' - $this->smarty = new Smarty; - } - // called after the test functions are executed - // this function is defined in PHPUnit_TestCase and overwritten - // here - function tearDown() { - // delete your instance - unset($this->smarty); - } - - // dummy errorhandler for functions that are supposed to call trigger_error() - function error_handler($errorlevel) { - if ($errorlevel) $this->errorlevel = $errorlevel; - } - - /* DIRECTORY TESTS */ - - // test that template_dir exists - function test_template_dir_exists() { - $this->assertTrue(file_exists($this->smarty->template_dir)); - } - // test that template_dir is a directory - function test_template_dir_is_dir() { - $this->assertTrue(is_dir($this->smarty->template_dir)); - } - // test that template_dir is readable - function test_template_dir_is_readable() { - $this->assertTrue(is_readable($this->smarty->template_dir)); - } - // test that config_dir exists - function test_config_dir_exists() { - $this->assertTrue(file_exists($this->smarty->config_dir)); - } - // test that config_dir is a directory - function test_config_dir_is_dir() { - $this->assertTrue(is_dir($this->smarty->config_dir)); - } - // test that config_dir is readable - function test_config_dir_is_readable() { - $this->assertTrue(is_readable($this->smarty->config_dir)); - } - // test that compile_dir exists - function test_compile_dir_exists() { - $this->assertTrue(file_exists($this->smarty->compile_dir)); - } - // test that compile_dir is a directory - function test_compile_dir_is_dir() { - $this->assertTrue(is_dir($this->smarty->compile_dir)); - } - // test that compile_dir is readable - function test_compile_dir_is_readable() { - $this->assertTrue(is_readable($this->smarty->compile_dir)); - } - // test that compile_dir is writable - function test_compile_dir_is_writable() { - $this->assertTrue(is_writable($this->smarty->compile_dir)); - } - // test that cache_dir exists - function test_cache_dir_exists() { - $this->assertTrue(file_exists($this->smarty->cache_dir)); - } - // test that cache_dir is a directory - function test_cache_dir_is_dir() { - $this->assertTrue(is_dir($this->smarty->cache_dir)); - } - // test that cache_dir is readable - function test_cache_dir_is_readable() { - $this->assertTrue(is_readable($this->smarty->cache_dir)); - } - // test that cache_dir is writable - function test_cache_dir_is_writable() { - $this->assertTrue(is_writable($this->smarty->cache_dir)); - } - - /* METHOD EXISTS TESTS */ - function test_assign_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'assign')); - } - function test_assign_by_ref_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'assign_by_ref')); - } - function test_append_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'append')); - } - function test_append_by_ref_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'append_by_ref')); - } - function test_clear_assign_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'clear_assign')); - } - function test_register_function_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'register_function')); - } - function test_unregister_function_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'unregister_function')); - } - function test_register_object_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'register_object')); - } - function test_unregister_object_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'unregister_object')); - } - function test_register_block_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'register_block')); - } - function test_unregister_block_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'unregister_block')); - } - function test_register_compiler_function_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'register_compiler_function')); - } - function test_unregister_compiler_function_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'unregister_compiler_function')); - } - function test_register_modifier_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'register_modifier')); - } - function test_unregister_modifier_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'unregister_modifier')); - } - function test_register_resource_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'register_resource')); - } - function test_unregister_resource_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'unregister_resource')); - } - function test_register_prefilter_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'register_prefilter')); - } - function test_unregister_prefilter_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'unregister_prefilter')); - } - function test_register_postfilter_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'register_postfilter')); - } - function test_unregister_postfilter_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'unregister_postfilter')); - } - function test_register_outputfilter_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'register_outputfilter')); - } - function test_unregister_outputfilter_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'unregister_outputfilter')); - } - function test_load_filter_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'load_filter')); - } - function test_clear_cache_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'clear_cache')); - } - function test_clear_all_cache_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'clear_all_cache')); - } - function test_is_cached_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'is_cached')); - } - function test_clear_all_assign_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'clear_all_assign')); - } - function test_clear_compiled_tpl_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'clear_compiled_tpl')); - } - function test_template_exists_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'template_exists')); - } - function test_get_template_vars_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'get_template_vars')); - } - function test_get_config_vars_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'get_config_vars')); - } - function test_trigger_error_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'trigger_error')); - } - function test_display_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'display')); - } - function test_fetch_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'fetch')); - } - function test_config_load_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'config_load')); - } - function test_get_registered_object_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'get_registered_object')); - } - function test_clear_config_method_exists() { - $this->assertTrue(method_exists($this->smarty, 'clear_config')); - } - function test_get_plugin_filepath() { - $this->assertTrue(method_exists($this->smarty, '_get_plugin_filepath')); - } - - - function test_clear_compiled_tpl() { - $this->assertTrue($this->smarty->clear_compiled_tpl()); - } - - /* DISPLAY TESTS */ - - // test that display() executes properly - function test_call_to_display() { - ob_start(); - $this->smarty->display('index.tpl'); - $output = ob_get_contents(); - ob_end_clean(); - $this->assertEquals($output, 'TEST STRING'); - } - - /* FETCH TESTS */ - - // test that fetch() executes properly - function test_call_to_fetch() { - $this->assertEquals($this->smarty->fetch('index.tpl'), 'TEST STRING'); - } - - /* ASSIGN TESTS */ - - // test assigning a simple template variable - function test_assign_var() { - $this->smarty->assign('foo', 'bar'); - $this->assertEquals($this->smarty->fetch('assign_var.tpl'), 'bar'); - } - - /* PARSING TESTS */ - - // test assigning and calling an object - function test_parse_obj_meth() { - $obj = new Obj(); - $this->smarty->assign('obj', $obj); - $this->smarty->assign('foo', 'foo'); - $this->assertEquals('foo:2.5 -2.5:foo -2.5:b -val:foo -foo:val -foo:foo -one:2 -foo:foo:b', $this->smarty->fetch('parse_obj_meth.tpl')); - } - - // test assigning and calling an object - function test_parse_math() { - $obj = new Obj(); - $this->smarty->assign('obj', $obj); - $this->smarty->assign('flt', 2.5); - $this->smarty->assign('items', array(1, 2)); - $this->assertEquals('3 -3.5 -7 -11 -4 -4.5 -8 -12 -12.5 -25 -16 -20 -8.5 -7', $this->smarty->fetch('parse_math.tpl')); - } - - /* CONFIG FILE TESTS */ - - // test assigning a double quoted global variable - function test_config_load_globals_double_quotes() { - // load the global var - $this->smarty->config_load('globals_double_quotes.conf'); - // test that it is assigned - $this->assertEquals($this->smarty->_config[0]['vars']['foo'], 'bar'); - } - - // test assigning a single quoted global variable - function test_config_load_globals_single_quotes() { - // load the global var - $this->smarty->config_load('globals_single_quotes.conf'); - // test that it is assigned - $this->assertEquals($this->smarty->_config[0]['vars']['foo'], 'bar'); - } - - // test loading and running modifier.escape.php - function test_escape_modifier_get_plugins_filepath() { - $filepath = $this->smarty->_get_plugin_filepath('modifier', 'escape'); - $this->assertTrue($filepath); - } - - function test_escape_modifier_include_file() { - $filepath = $this->smarty->_get_plugin_filepath('modifier', 'escape'); - $this->assertTrue(include($filepath)); - } - - function test_escape_modifier_function_exists() { - $this->assertTrue(function_exists('smarty_modifier_escape')); - } - - function test_escape_modifier_escape_default() { - $string = smarty_modifier_escape("<html><body></body></html>"); - $this->assertEquals('<html><body></body></html>', - $string); - } - - function test_escape_modifier_escape_html() { - $string = smarty_modifier_escape("<html><body></body></html>", 'html'); - $this->assertEquals('<html><body></body></html>', - $string); - } - - function test_escape_modifier_escape_htmlall() { - $string = smarty_modifier_escape("<html><body></body></html>", 'htmlall'); - $this->assertEquals('<html><body></body></html>', - $string); - } - - function test_escape_modifier_escape_url() { - $string = smarty_modifier_escape("http://test.com?foo=bar", 'url'); - $this->assertEquals('http%3A%2F%2Ftest.com%3Ffoo%3Dbar', $string); - } - - function test_escape_modifier_escape_quotes() { - $string = smarty_modifier_escape("'\\'\\''", 'quotes'); - $this->assertEquals("\\'\\'\\'\\'", $string); - } - - function test_escape_modifier_escape_hex() { - $string = smarty_modifier_escape("abcd", 'hex'); - $this->assertEquals('%61%62%63%64', $string); - } - - function test_escape_modifier_escape_hexentity() { - $string = smarty_modifier_escape("ABCD", 'hexentity'); - $this->assertEquals('ABCD', $string); - } - - function test_escape_modifier_escape_javascript() { - $string = smarty_modifier_escape("\r\n\\", 'javascript'); - $this->assertEquals('\\r\\n\\\\', $string); - } - - - function test_core_is_secure_file_exists() { - $file = SMARTY_CORE_DIR . 'core.is_secure.php'; - $this->assertTrue(file_exists($file)); - } - - function test_core_is_secure_file_include() { - $file = SMARTY_CORE_DIR . 'core.is_secure.php'; - $this->assertTrue(include($file)); - } - - function test_core_is_secure_function_exists() { - $this->assertTrue(function_exists('smarty_core_is_secure')); - } - - function test_core_is_secure_function_is_secure_true() { - $security = $this->smarty->security; - $this->smarty->security = true; - - /* check if index.tpl is secure (should be true) */ - $params = array('resource_type' => 'file', - 'resource_base_path' => dirname(__FILE__) . '/templates', - 'resource_name' => dirname(__FILE__) . '/templates/index.tpl'); - $this->assertTrue(smarty_core_is_secure($params, $this->smarty)); - $this->smarty->security = $security; - } - - function test_core_is_secure_function_is_secure_false() { - $security = $this->smarty->security; - $this->smarty->security = true; - /* check if test_cases.php is secure (should be false) */ - $params = array('resource_type' => 'file', - 'resource_base_path' => dirname(__FILE__) . '/templates', - 'resource_name' => __FILE__); - $this->assertFalse(smarty_core_is_secure($params, $this->smarty)); - $this->smarty->security = $security; - - } - - // test constants and security - function test_core_is_secure_function_smarty_var_const() { - define('TEST_CONSTANT', 'test constant'); - $this->assertEquals('test constant', $this->smarty->fetch('constant.tpl', - null, 'var_const')); - } - - function test_core_is_secure_function_smarty_var_const_allowed() { - $security = $this->smarty->security; - $security_settings = $this->smarty->security_settings; - $this->smarty->security_settings['ALLOW_CONSTANTS'] = true; - $this->smarty->security = true; - $this->assertEquals('test constant', $this->smarty->fetch('constant.tpl', - null, 'var_const_allowed')); - $this->smarty->security_settings = $security_settings; - $this->smarty->security = $security; - } - - function test_core_is_secure_function_smarty_var_const_not_allowed() { - $security = $this->smarty->security; - $this->smarty->security = true; - /* catch errors: */ - $this->errorlevel = null; - set_error_handler(array(&$this, 'error_handler')); - $this->smarty->fetch('constant.tpl', null, 'var_const_not_allowed'); - restore_error_handler(); - - $this->assertEquals( $this->errorlevel, E_USER_WARNING); - $this->smarty->security = $security; - } - -} - -?> diff --git a/livesupport/modules/htmlUI/var/html/templates/ScratchPad.tpl b/livesupport/modules/htmlUI/var/html/templates/ScratchPad.tpl deleted file mode 100755 index 6c3e980d7..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/ScratchPad.tpl +++ /dev/null @@ -1,72 +0,0 @@ -{*Smarty template*} - -<div id="scratchpad"> -<center><b>ScratchPad</b></center> - -{if is_array($ScratchPad)} - <form name="SP"> - <input type="hidden" name="act"> - <table> - <tr> - <th></th> - <th><a href="#" onClick="hpopup('{$UI_HANDLER}?act=SP.reOrder&by=title', 'order');">{tra 0=Title}</a></th> - <th><a href="#" onClick="hpopup('{$UI_HANDLER}?act=SP.reOrder&by=duration', 'order');">{tra 0=Duration}</a></th> - <th><a href="#" onClick="hpopup('{$UI_HANDLER}?act=SP.reOrder&by=type', 'order');">{tra 0=Type}</a></th> - <th>Remove</th> - </tr> - - {foreach from=$ScratchPad item=i} - <tr> - <td><input type="checkbox" name="{$i.id}"></td> - <td>{$i.title}</td> - <td>{$i.duration}</td> - <td>{$i.type} </td> - <th><a href="#" onclick="hpopup('{$UI_HANDLER}?act=SP.removeItem&id={$i.id}', 'SP')">X</th> - </tr> - {/foreach} - <tr> - <td><input type="checkbox" name="all" onClick="SP_switchAll()"></td> - <td colspan="2"><a href="#" onClick="SP_submit()">[Remove Selected]</a></td> - <td colspan="2"><a href="#" onClick="SP_clearAll()">[Clear]</a></td> - </tr> - </table> - </form> -{/if} -</div> - -{literal} -<script type="text/javascript"> -function SP_submit() -{ - var href = '{/literal}{$UI_HANDLER}?act=SP.removeItem{literal}'; - var n; - - for (n=0; n < (document.forms['SP'].elements.length-1); n++) { - if (document.forms['SP'].elements[n].checked) { - href = href + '&id[]=' + document.forms['SP'].elements[n].name; - } - } - hpopup(href, 'SP'); -} - -function SP_switchAll() -{ - var n; - - for (n=0; n < document.forms['SP'].elements.length; n++) { - if (document.forms['SP'].elements[n].type == 'checkbox') { - document.forms['SP'].elements[n].checked = document.forms['SP'].elements['all'].checked; - } - } -} - -function SP_clearAll() -{ - if (confirm("{/literal}{tra 0='Are you sure to clear ScratchPad?'}{literal}")) { - document.forms['SP'].elements['all'].checked = true; - SP_switchAll(); - SP_submit(); - } -} -</script> -{/literal} diff --git a/livesupport/modules/htmlUI/var/html/templates/editMetaData.tpl b/livesupport/modules/htmlUI/var/html/templates/editMetaData.tpl deleted file mode 100755 index 422f1a26b..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/editMetaData.tpl +++ /dev/null @@ -1,120 +0,0 @@ -{literal} -<style type="text/css"> - .dynformelement { - width : 270px; - text-align : right; - } -</style> -{/literal} - -<div id="metadataform"> -{include file="sub/x.tpl"} -<center> - {$editMetaData.tabs} - {$editMetaData.langswitch} - {foreach from=$editMetaData.pages key=key item=dynform} - {include file="sub/dynForm_plain.tpl"} - {/foreach} -</center> -</div> - -<script language="javascript"> -{literal} -function switchMDataLang() -{ - if (validate_editMetaData(document.forms['editMetaData'])) { - document.forms['editMetaData'].elements['langid'].value = document.forms['langswitch'].elements['langid'].value; - document.forms['editMetaData'].submit(); - } - document.forms['langswitch'].elements['langid'].value = document.forms['editMetaData'].elements['langid'].value - showMain(); - return false; -} - -function spread(element, name) -{ - if (document.forms['editMetaData'].elements['Main___' + name]) document.forms['editMetaData'].elements['Main___' + name].value = element.value; - if (document.forms['editMetaData'].elements['Music_Basic___' + name]) document.forms['editMetaData'].elements['Music_Basic___' + name].value = element.value; - if (document.forms['editMetaData'].elements['Music_Advanced___' + name]) document.forms['editMetaData'].elements['Music_Advanced___' + name].value = element.value; - if (document.forms['editMetaData'].elements['Talk_Basic___' + name]) document.forms['editMetaData'].elements['Talk_Basic___' + name].value = element.value; - if (document.forms['editMetaData'].elements['Talk_Advanced___' + name]) document.forms['editMetaData'].elements['Talk_Advanced___' + name].value = element.value; -} - -function showMain() -{ - document.getElementById('metadataform').style.height=400; - document.getElementById('masterpanel').style.height=600; - document.getElementById('div_Main').style.visibility=''; - document.getElementById('div_Main').style.height=''; - document.getElementById('div_Music_Basic').style.visibility='hidden'; - document.getElementById('div_Music_Basic').style.height='0'; - document.getElementById('div_Music_Advanced').style.visibility='hidden'; - document.getElementById('div_Music_Advanced').style.height='0'; - document.getElementById('div_Talk_Basic').style.visibility='hidden'; - document.getElementById('div_Talk_Basic').style.height='0'; - document.getElementById('div_Talk_Advanced').style.visibility='hidden'; - document.getElementById('div_Talk_Advanced').style.height='0'; -} -function showMusic_Basic() -{ - document.getElementById('metadataform').style.height=600; - document.getElementById('masterpanel').style.height=800; - document.getElementById('div_Main').style.visibility='hidden'; - document.getElementById('div_Main').style.height='0'; - document.getElementById('div_Music_Basic').style.visibility=''; - document.getElementById('div_Music_Basic').style.height=''; - document.getElementById('div_Music_Advanced').style.visibility='hidden'; - document.getElementById('div_Music_Advanced').style.height='0'; - document.getElementById('div_Talk_Basic').style.visibility='hidden'; - document.getElementById('div_Talk_Basic').style.height='0'; - document.getElementById('div_Talk_Advanced').style.visibility='hidden'; - document.getElementById('div_Talk_Advanced').style.height='0'; -} -function showMusic_Advanced() -{ - document.getElementById('metadataform').style.height=1300; - document.getElementById('masterpanel').style.height=1500; - document.getElementById('div_Main').style.visibility='hidden'; - document.getElementById('div_Main').style.height='0'; - document.getElementById('div_Music_Basic').style.visibility='hidden'; - document.getElementById('div_Music_Basic').style.height='0'; - document.getElementById('div_Music_Advanced').style.visibility=''; - document.getElementById('div_Music_Advanced').style.height=''; - document.getElementById('div_Talk_Basic').style.visibility='hidden'; - document.getElementById('div_Talk_Basic').style.height='0'; - document.getElementById('div_Talk_Advanced').style.visibility='hidden'; - document.getElementById('div_Talk_Advanced').style.height='0'; -} -function showTalk_Basic() -{ - document.getElementById('metadataform').style.height=400; - document.getElementById('masterpanel').style.height=600; - document.getElementById('div_Main').style.visibility='hidden'; - document.getElementById('div_Main').style.height='0'; - document.getElementById('div_Music_Basic').style.visibility='hidden'; - document.getElementById('div_Music_Basic').style.height='0'; - document.getElementById('div_Music_Advanced').style.visibility='hidden'; - document.getElementById('div_Music_Advanced').style.height='0'; - document.getElementById('div_Talk_Basic').style.visibility=''; - document.getElementById('div_Talk_Basic').style.height=''; - document.getElementById('div_Talk_Advanced').style.visibility='hidden'; - document.getElementById('div_Talk_Advanced').style.height='0'; -} -function showTalk_Advanced() -{ - document.getElementById('metadataform').style.height=400; - document.getElementById('masterpanel').style.height=600; - document.getElementById('div_Main').style.visibility='hidden'; - document.getElementById('div_Main').style.height='0'; - document.getElementById('div_Music_Basic').style.visibility='hidden'; - document.getElementById('div_Music_Basic').style.height='0'; - document.getElementById('div_Music_Advanced').style.visibility='hidden'; - document.getElementById('div_Music_Advanced').style.height='0'; - document.getElementById('div_Talk_Basic').style.visibility='hidden'; - document.getElementById('div_Talk_Basic').style.height='0'; - document.getElementById('div_Talk_Advanced').style.visibility=''; - document.getElementById('div_Talk_Advanced').style.height=''; -} -showMain(); -{/literal} -</script> diff --git a/livesupport/modules/htmlUI/var/html/templates/examples/smarty-dynamic-fancygroup.tpl b/livesupport/modules/htmlUI/var/html/templates/examples/smarty-dynamic-fancygroup.tpl deleted file mode 100644 index 60f1690bd..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/examples/smarty-dynamic-fancygroup.tpl +++ /dev/null @@ -1,28 +0,0 @@ -<!-- $Id: smarty-dynamic-fancygroup.tpl,v 1.6 2005/02/10 14:28:02 sebastian Exp $ --> - -<tr> - <td valign="top" align="right"> - <b{if $element.error} style="color: Red;"{/if}>{if $element.required}<font color="red">*</font>{/if}{$element.label}:</b> - </td> - <td> - <table cellspacing="2" border="0"> - {foreach key=gkey item=gitem from=$element.elements} - <tr> - {if $gitem.type eq "radio"} - <td colspan="2" class="green"> - {$gitem.html} - </td> - {else} - <td class="green" align="right"> - {if $gitem.required}<font color="red">*</font>{/if} - {$gitem.label} - </td> - <td class="green"> - {$gitem.html} - </td> - {/if} - </tr> - {/foreach} - </table> - </td> -</tr> diff --git a/livesupport/modules/htmlUI/var/html/templates/examples/smarty-dynamic-green.tpl b/livesupport/modules/htmlUI/var/html/templates/examples/smarty-dynamic-green.tpl deleted file mode 100644 index 7afa35b7e..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/examples/smarty-dynamic-green.tpl +++ /dev/null @@ -1,9 +0,0 @@ -<!-- $Id: smarty-dynamic-green.tpl,v 1.6 2005/02/10 14:28:02 sebastian Exp $ --> - -<tr> - <td align="right" valign="top" class="green"><b>{$element.label}:</b></td> - <td valign="top" align="left" class="green"> - {if $element.error}<font color="red">{$element.error}</font><br />{/if} - {$element.html}{if $element.required}<font color="red">*</font>{/if} - </td> -</tr> diff --git a/livesupport/modules/htmlUI/var/html/templates/examples/smarty-dynamic.tpl b/livesupport/modules/htmlUI/var/html/templates/examples/smarty-dynamic.tpl deleted file mode 100644 index 2cfea9e02..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/examples/smarty-dynamic.tpl +++ /dev/null @@ -1,134 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> -<!-- $Id: smarty-dynamic.tpl,v 1.6 2005/02/10 14:28:02 sebastian Exp $ --> -<html> -<head> - <title>Smarty template for Array renderer</title> - <style type="text/css"> - {literal} - body, td, th { - font-family: sans-serif; - color: Navy; - background-color : #EEE; - font-size: smaller; - white-space: nowrap; - } - - .maintable { - border: thin dashed #D0D0D0; - background-color: #EEE; - } - - .header { - color: #FFF; - background-color: #999; - } - - .green { - background-color: #CFC; - color: black; - } - {/literal} - </style> - -</head> -<body> - -{$form.javascript} - -<table border="0" class="maintable" align="center"> - <form{$form.attributes}>{$form.hidden} - - {foreach item=sec key=i from=$form.sections} - <tr> - <td class="header" colspan="2"> - <b>{$sec.header}</b></td> - </tr> - - {foreach item=element from=$sec.elements} - - <!-- elements with alternative layout in external template file--> - {if $element.style} - {include file="smarty-dynamic-`$element.style`.tpl} - - {* - NOTE: Another way ist to have smarty template code in - $element.style. In this case you can do: - - {if $element.style} - {eval var=$element.style} - *} - - <!-- submit or reset button (don't display on frozen forms) --> - {elseif $element.type eq "submit" or $element.type eq "reset"} - {if not $form.frozen} - <tr> - <td> </td> - <td align="left">{$element.html}</td> - </tr> - {/if} - - <!-- normal elements --> - {else} - <tr> - {if $element.type eq "textarea"} - <td colspan="2"> - {if $element.required}<font color="red">*</font>{/if}<b>{$element.label}</b><br /> - {else} - <td align="right" valign="top"> - {if $element.required}<font color="red">*</font>{/if}<b>{$element.label}:</b></td> - <td> - {/if} - {if $element.error}<font color="red">{$element.error}</font><br />{/if} - {if $element.type eq "group"} - {foreach key=gkey item=gitem from=$element.elements} - {$gitem.label} - {$gitem.html}{if $gitem.required}<font color="red">*</font>{/if} - {if $element.separator}{cycle values=$element.separator}{/if} - {/foreach} - {else} - {$element.html} - {/if} - <div style="font-size: 80%;">{$element.label_note}</div> - </td> - </tr> - - {/if} - {/foreach} - {/foreach} - - {if $form.requirednote and not $form.frozen} - <tr> - <td> </td> - <td valign="top">{$form.requirednote}</td> - </tr> - {/if} - - </form> -</table> - - -<p><b>Collected Errors:</b><br /> -{foreach key=name item=error from=$form.errors} - <font color="red">{$error}</font> in element [{$name}]<br /> -{/foreach} -</p> - - -<p><strong>Best Practice: </strong><br /> -Use only one dynamic form template like this for your <br /> -Smarty driven project. You include this where <br /> -to place a form with the formdata-Array rendered by <br /> -SmartyDynamic QuickForm Renderer as option:</p> - -<pre style="font-size: 12px;"> -<strong>{ldelim}include file=form-dynamic.tpl form=$formdata{rdelim}</strong> -</pre> - - -<p><strong>The used "Dynamic" Array </strong></p> -<pre style="font-size: 12px;"> -{$dynamic_array|htmlentities} -</pre> - -</body> -</html> diff --git a/livesupport/modules/htmlUI/var/html/templates/fileBrowse/fileBrowse.tpl b/livesupport/modules/htmlUI/var/html/templates/fileBrowse/fileBrowse.tpl deleted file mode 100755 index 91aff64bc..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/fileBrowse/fileBrowse.tpl +++ /dev/null @@ -1,10 +0,0 @@ -{if $showTree} - {include file="fileBrowse/tree.tpl"} -{/if} -{if $showObjects} - {include file="fileBrowse/objects.tpl"} -{/if} - -{if $permissions} - {include file="fileBrowse/permissions.tpl"} -{/if} diff --git a/livesupport/modules/htmlUI/var/html/templates/fileBrowse/objects.tpl b/livesupport/modules/htmlUI/var/html/templates/fileBrowse/objects.tpl deleted file mode 100755 index b9e6caeed..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/fileBrowse/objects.tpl +++ /dev/null @@ -1,58 +0,0 @@ -<div id="objects"> -{include file="sub/x.tpl"} - -<table border="0" align="center"> - {if $GLOBALS.pid} - <tr><td colspan="2" align="right"><a href="{$UI_BROWSER}?act=fileBrowse&id={$GLOBALS.pid}">[go up]</a_</td></tr> - {/if} - {if count($structure.listdata)} - {foreach from=$structure.listdata item=o} - <tr bgcolor="{cycle values='#eeeeee, #dadada"'}"> - <td> - <span id="ID{$o.id}"> - {if $structure.tree} - {str_repeat str=' ' count=$o.level} - {else} - {str_repeat str=' ' count=3} - {/if} - <a {if $o.type eq 'Folder'}href="{$UI_BROWSER}?act=fileBrowse&id={$o.id}" {/if}>[{$o.title}]</a>:{$o.type} - </span> - </td> - - <td> - <a href="javascript:frename('{$o.name}', '{$o.id}')">[rename]</a> - <a href="javascript:fmove('{$o.id}', '.')">[move]</a> - <a href="javascript:fcopy('{$o.id}', '.')">[copy]</a> - <a href="{$UI_BROWSER}?act=permissions&id={$o.id}">[permissions]</a> - <br> - - {if ($delOverride eq $o.id)} - <a href="{$UI_HANDLER}?act=delete&id={$o.id}&delOverride={$o.id}" - onClick="return confirm('Really delete non empty Folder "{$o.name}" now?')">[DEL]</a> - {else} - <a href="{$UI_HANDLER}?act=delete&id={$o.id}" - onClick="return confirm('Delete "{$o.name}"?')">[DEL]</a> - {/if} - {if $o.type != 'Folder'} - <a href="{$UI_BROWSER}?act=getFile&id={$o.id}">[Access]</a> - <a href="{$UI_BROWSER}?act=getMData&id={$o.id}">[vMData]</a> - <a href="{$UI_BROWSER}?act=_analyzeFile&id={$o.id}">[Analyze]</a> - - {if $o.type eq 'webstream'} - <a href="{$UI_BROWSER}?act=addWebstream&id={$o.id}&replace=1">[Replace]</a> - {elseif $o.type eq 'audioclip'} - <a href="{$UI_BROWSER}?act=uploadFile&id={$o.id}&replace=1">[Replace]</a> - {/if} - <a href="{$UI_BROWSER}?act=editMetaData&id={$o.id}">[eMData]</a> - <a href="#" onclick="hpopup('{$UI_HANDLER}?act=SP.addItem&id={$o.id}', '2SP')">[SP]</a> - {/if} - - </td> - </tr> - {/foreach} - {else} - <tr><td align="center" width="400">No objects</td></tr> - {/if} -</table> - -</div> \ No newline at end of file diff --git a/livesupport/modules/htmlUI/var/html/templates/fileBrowse/path.tpl b/livesupport/modules/htmlUI/var/html/templates/fileBrowse/path.tpl deleted file mode 100755 index 9e2282b0a..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/fileBrowse/path.tpl +++ /dev/null @@ -1,12 +0,0 @@ -{*Smarty template*} - -<div id="path"> - <a href="{$UI_BROWSER}?act=fileBrowse&id={$structure.id}&tree=Y" class="button">[Tree view]</a> | - {foreach from=$structure.pathdata item=o} - {if $o.type == 'Folder'} - <a href="{$UI_BROWSER}?act=fileBrowse&id={$o.id}">[{$o.name}]</a> / - {else} - {$o.name} - {/if} - {/foreach} -</div> \ No newline at end of file diff --git a/livesupport/modules/htmlUI/var/html/templates/fileBrowse/permissions.tpl b/livesupport/modules/htmlUI/var/html/templates/fileBrowse/permissions.tpl deleted file mode 100755 index 4aa0a7704..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/fileBrowse/permissions.tpl +++ /dev/null @@ -1,68 +0,0 @@ -<div id="permissions"> -{include file="sub/x.tpl"} - -<table id="tbl" border="0" cellpadding="5"> - <tr><td><b>Subject Name</b></td><td><b>Action</b></td><td><b>Permission</b></td><td></td></tr> - - {if (is_array($permissions.perms) && count($permissions.perms)>0)} - - {foreach from=$permissions.perms item=row} - {if $row.type eq 'A'} - {assign var='da' value='allow'} - {else} - {if $row.type eq 'D'} - {assign var='da' value='deny'} - {else} - {assign var='da' value=$row.type} - {/if} - {/if} - - <tr bgcolor="{cycle values='#eeeeee, #dadada'}"> - <td>{* <a <?php #href="alibExPList.php?id=<?php echo$row['subj']? >"?>> *}{$row.login}</a></td> - <td>{$row.action}</td> - <td>{$da}</td> - <td> - <a href="{$UI_HANDLER}?act=removePerm&permid={$row.permid}&oid={$permissions.id}&id={$permissions.id}" - onClick="return confirm('Delete permission "{$da} {$row.action}" for user {$row.login}?')">[remove]</a> - </td> - </tr> - {/foreach} - {else} - <tr><td colspan="4">No Permissions set.</td></tr> - {/if} -</table> - -<br> - -<form action="{$UI_HANDLER}" method="post"> - -Add Permission -<select name="allowDeny"> - <option value="A">Allow</option> - <option value="D">Deny</option> -</select> - -for Action -<select name="permAction"> - <option value="_all">all</option> - {if is_array($permissions.actions)} - {foreach from=$permissions.actions item='it'} - <option value="{$it}">{$it}</option> - {/foreach} - {/if} -</select> - -to Subject -<select name="subj"> - {if is_array($permissions.subjects)} - {foreach from=$permissions.subjects item='it'} - <option value="{$it.id}">{$it.login}</option> - {/foreach} - {/if} -</select> -<input type="hidden" name="act" value="addPerm"> -<input type="hidden" name="id" value="{$permissions.id}"> -<input type="submit" value="Do it!"> -</form> - -</div> \ No newline at end of file diff --git a/livesupport/modules/htmlUI/var/html/templates/fileBrowse/tree.tpl b/livesupport/modules/htmlUI/var/html/templates/fileBrowse/tree.tpl deleted file mode 100755 index 1b7070083..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/fileBrowse/tree.tpl +++ /dev/null @@ -1,24 +0,0 @@ -{*Smarty template*} - -<div id="tree"> - -{if is_array($structure.treedata)} - {foreach from=$structure.treedata item=o} - <div style="background-color: {cycle values="#eeeeee,#dadada"}"> - {$structure.treedata.type} - {if $structure.treedata.tree} - {str_repeat str=' ' count=3} - {else} - {str_repeat str=' ' count=$o.level} - {/if} - {if $o.type == 'Folder'} - <a href="{$UI_BROWSER}?act=fileBrowse&id={$o.id}">[{$o.name}]</a> - {else} - {$o.name} - {/if} - <br> - </div> - {/foreach} -{/if} - -</div> \ No newline at end of file diff --git a/livesupport/modules/htmlUI/var/html/templates/filedata.tpl b/livesupport/modules/htmlUI/var/html/templates/filedata.tpl deleted file mode 100644 index bc72a49e9..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/filedata.tpl +++ /dev/null @@ -1,15 +0,0 @@ -{* Smarty template *} -<div id="filedata"> -{include file="sub/x.tpl"} -<center> -{if $fMetaData} - <textarea rows="25" cols="90" style="font-size:small">{htmlspecialchars str=$fMetaData}</textarea> -{/if} -{if $_analyzeFile} - {$_analyzeFile} -{/if} -</center> - - - -</div> diff --git a/livesupport/modules/htmlUI/var/html/templates/footer.tpl b/livesupport/modules/htmlUI/var/html/templates/footer.tpl deleted file mode 100644 index c62269fe9..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/footer.tpl +++ /dev/null @@ -1,6 +0,0 @@ -{*Smarty template*} - -<div id="footer">LiveSupport htmlUI V0.1 Copyright (c) 2004 Media Development Loan Fund</div> - -</body> -</html> diff --git a/livesupport/modules/htmlUI/var/html/templates/header.tpl b/livesupport/modules/htmlUI/var/html/templates/header.tpl deleted file mode 100644 index b55a645ec..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/header.tpl +++ /dev/null @@ -1,13 +0,0 @@ -{*Smarty template*} -<html> - -<head> - <link rel="stylesheet" href="templates/styles.css"> - - {include file="script/basics.js.tpl"} - - - -</head> - -<body> \ No newline at end of file diff --git a/livesupport/modules/htmlUI/var/html/templates/login.tpl b/livesupport/modules/htmlUI/var/html/templates/login.tpl deleted file mode 100644 index c14a66c3a..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/login.tpl +++ /dev/null @@ -1,19 +0,0 @@ -{*Smarty template*} - -{include file="header.tpl"} -{$loginform.javascript} - -<center> -<div id="login"> - <form {$loginform.attributes}> - {$loginform.hidden} - <table> - <tr><td align="right">{$loginform.login.label}</td><td>{$loginform.login.html}</td></tr> - <tr><td align="right">{$loginform.pass.label}</td><td>{$loginform.pass.html}</td></tr> - <tr><td>{$loginform.requirednote}</td><td>{$loginform.Submit.html}</td></tr> - </table> - </form> -</div> -</center> -{include file="footer.tpl"} - diff --git a/livesupport/modules/htmlUI/var/html/templates/main.tpl b/livesupport/modules/htmlUI/var/html/templates/main.tpl deleted file mode 100644 index 8b7d67c72..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/main.tpl +++ /dev/null @@ -1,7 +0,0 @@ -{*Smarty template*} - -{include file="header.tpl"} -{include file="masterpanel.tpl"} -{include file="footer.tpl"} - - diff --git a/livesupport/modules/htmlUI/var/html/templates/masterpanel.tpl b/livesupport/modules/htmlUI/var/html/templates/masterpanel.tpl deleted file mode 100644 index e7d2d8549..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/masterpanel.tpl +++ /dev/null @@ -1,48 +0,0 @@ -{*Smarty template*} -<div id="masterpanel"> - -{include file="statusbar.tpl"} - -{if $showMenuTop} - {include file="menu_top.tpl"} -{/if} - -{if $ScratchPad} - {include file="ScratchPad.tpl"} -{/if} - -{if $structure} - {include file="fileBrowse/path.tpl"} -{/if} - -{if $fileBrowse} - {include file="fileBrowse/fileBrowse.tpl"} -{/if} - -{if ($showSearchForm || $showSearchRes)} - {include file="search.tpl"} -{/if} - -{if $showSubjects} - {include file="subjects.tpl"} -{/if} - -{if $showFile} - {include file="filedata.tpl"} -{/if} - -{if $uploadform} - {include file="uploadform.tpl"} -{/if} - -{if $editMetaData} - {include file="editMetaData.tpl"} -{/if} - -{if $editSystemPrefs} - {include file="systemPrefs.tpl"} -{/if} - - -</div> - diff --git a/livesupport/modules/htmlUI/var/html/templates/menu_top.tpl b/livesupport/modules/htmlUI/var/html/templates/menu_top.tpl deleted file mode 100644 index 05a7c5de8..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/menu_top.tpl +++ /dev/null @@ -1,12 +0,0 @@ -<div id="menu_top"> - <a href="{$UI_BROWSER}?act=fileBrowse&id={$GLOBALS.fid}">[File Browser]</a> - <a href="{$UI_BROWSER}?id={$GLOBALS.fid}&act=uploadFileM">[UploadM]</a> - <a href="{$UI_BROWSER}?id={$GLOBALS.fid}&act=uploadFile">[Upload]</a> - <a href="{$UI_BROWSER}?id={$GLOBALS.fid}&act=addWebstream">[Stream]</a> - <a href="javascript:newFolder()">[Create new folder]</a> - <a href="{$UI_BROWSER}?id={$GLOBALS.id}&act=search">[Search]</a> - <a href="{$UI_BROWSER}?id={$GLOBALS.id}&act=subjects">{tra 0='[Subjects]'}</a> - <!-- <br> - <a href="{$UI_BROWSER}?act=MetaDataValues&Main=1">[Metadata]</a> --> - <a href="{$UI_BROWSER}?act=editSystemPrefs">[SystemPrefs]</a> -</div> \ No newline at end of file diff --git a/livesupport/modules/htmlUI/var/html/templates/popup/_close.tpl b/livesupport/modules/htmlUI/var/html/templates/popup/_close.tpl deleted file mode 100644 index 223c4d596..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/popup/_close.tpl +++ /dev/null @@ -1,3 +0,0 @@ -<script type="text/javascript"> - window.close(); -</script> diff --git a/livesupport/modules/htmlUI/var/html/templates/popup/_reload_parent.tpl b/livesupport/modules/htmlUI/var/html/templates/popup/_reload_parent.tpl deleted file mode 100644 index b5884b830..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/popup/_reload_parent.tpl +++ /dev/null @@ -1,4 +0,0 @@ -<script type="text/javascript"> - opener.location.reload(); - //opener.location.href="{$UI_BROWSER}"; -</script> diff --git a/livesupport/modules/htmlUI/var/html/templates/popup/login.tpl b/livesupport/modules/htmlUI/var/html/templates/popup/login.tpl deleted file mode 100644 index f3ee6057e..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/popup/login.tpl +++ /dev/null @@ -1,20 +0,0 @@ -{*Smarty template*} - -{include file="header.tpl"} -{$login.javascript} - -<center> - <form {$login.attributes}> - {$login.hidden} - <table> - <tr><td align="right">{$login.login.label}</td><td>{$login.login.html}</td></tr> - <tr><td align="right">{$login.pass.label}</td><td>{$login.pass.html}</td></tr> - <tr><td align="right">{$login.langid.label}</td><td>{$login.langid.html}</td></tr> - <tr><td>{$login.requirednote}</td><td>{$login.Submit.html} {$login.cancel.html}</td></tr> - </table> - </form> -</center> - -</body> -</html> - diff --git a/livesupport/modules/htmlUI/var/html/templates/popup/logout.tpl b/livesupport/modules/htmlUI/var/html/templates/popup/logout.tpl deleted file mode 100644 index b3300f19c..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/popup/logout.tpl +++ /dev/null @@ -1,20 +0,0 @@ -{*Smarty template*} - -{include file="header.tpl"} - -<center> -<div id="logout"> - <form> - <table border=0> - <tr><td>{tra 0='Are you sure to logout $1' 1=$user.login}</td></tr> - <tr><td align="right"> - <input type="button" value="{tra 0=OK}" onclick="javascript: location.href='{$UI_HANDLER}?act={$logouttype}'"> - <input type="button" value="{tra 0=Cancel}" onclick="javascript: window.close()"> - </td></tr> - </table> - </form> -</div> -</center> - -</body> -</html> diff --git a/livesupport/modules/htmlUI/var/html/templates/popup/signover.tpl b/livesupport/modules/htmlUI/var/html/templates/popup/signover.tpl deleted file mode 100644 index d0d73ae49..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/popup/signover.tpl +++ /dev/null @@ -1,20 +0,0 @@ -{*Smarty template*} - -{include file="header.tpl"} - -<center> -<div id="logout"> - <form> - <table border=0> - <tr><td>{tra 0='Are you sure to logout $1' 1=$user.login}</td></tr> - <tr><td align="right"> - <input type="button" value="{tra 0=OK}" onclick="javascript: location.href='{$UI_HANDLER}?act=signover'"> - <input type="button" value="{tra 0=Cancel}" onclick="javascript: window.close()"> - </td></tr> - </table> - </form> -</div> -</center> - -</body> -</html> \ No newline at end of file diff --git a/livesupport/modules/htmlUI/var/html/templates/script/basics.js.tpl b/livesupport/modules/htmlUI/var/html/templates/script/basics.js.tpl deleted file mode 100644 index 953467e08..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/script/basics.js.tpl +++ /dev/null @@ -1,58 +0,0 @@ -<script type="text/javascript"> - function frename(name, id){literal}{{/literal} - var s=document.getElementById('ID'+id); - s.innerHTML='<form action="{$UI_HANDLER}" method="post" style="display:inline">'+ - '<input type="text" name="newname" value="'+name+'" size="12">'+ - '<input type="hidden" name="id" value="'+id+'">'+ - '<input type="hidden" name="act" value="rename">'+ - '</form>'; - {literal}}{/literal} - function fmove(id, relPath){literal}{{/literal} - var newPath=prompt('Destination folder (relative path):', relPath); - if(newPath==null) return; - location.href='{$UI_HANDLER}?id='+id+'&act=move&newPath='+newPath; - {literal}}{/literal} - function fcopy(id, relPath){literal}{{/literal} - var newPath=prompt('Destination folder (relative path):', relPath); - if(newPath==null) return; - location.href='{$UI_HANDLER}?id='+id+'&act=copy&newPath='+newPath; - {literal}}{/literal} - function freplicate(name, id){literal}{{/literal} - var np=prompt('Destination folder (relative path):', id); - if(np==null) return; - location.href='{$UI_HANDLER}?id='+id+'&act=repl&newparid='+np; - {literal}}{/literal} - function newFolder(){literal}{{/literal} - var nn=prompt('New folder name:'); - if(nn==null) return; - location.href='{$UI_HANDLER}?id={$GLOBALS.id}&act=newFolder&newname='+nn; - {literal}}{/literal} - - {literal} - function popup(url, name, width, height) // popup in center of perent window - { - var screenX; - var screenY; - - screenX = (window.screenX + window.innerWidth/2 - width/2); - screenY = (window.screenY + window.innerHeight/2 - height/2); - arg = 'width='+width+', height='+height+', scrollbars=no, menubar=no, depend=yes, left='+screenX+', top='+screenY; - - popupwin = window.open(url, name, arg); - window.popupwin.focus(); - } - - function hpopup(url, name) //hidden popup! - { - popupwin = window.open(url, name, 'width=1, height=1'); - window.parent.focus(); - } - {/literal} - - {uiBrowser->getAlertMsg assign='alertMsg'} - {if $alertMsg} - alert('{$alertMsg}'); - {/if} - - -</script> diff --git a/livesupport/modules/htmlUI/var/html/templates/script/clock.js.tpl b/livesupport/modules/htmlUI/var/html/templates/script/clock.js.tpl deleted file mode 100644 index 54cec28c6..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/script/clock.js.tpl +++ /dev/null @@ -1,167 +0,0 @@ -{literal} - -<SCRIPT LANGUAGE="JavaScript"> -<!-- Original: Tomleung (lok_2000_tom@hotmail.com) This tag should not be removed--> -<!--Server time ticking clock v2.0 Updated by js-x.com--> -<!-- server time ticking clock modified for livesupport.campware.org using above script--> -function twoDigit(_v) -{ - _v = Math.round(_v); - if(_v<10) _v="0"+_v; - return _v; -} -function MakeArrayday(size) -{ - this.length = size; - for(var i = 1; i <= size; i++) - this[i] = ""; - return this; -} -function MakeArraymonth(size) -{ - this.length = size; - for(var i = 1; i <= size; i++) - this[i] = ""; - return this; -} - -var hours; -var minutes; -var seconds; -var timer=null; -function sClock() -{ - sinterval = 100; // milliseconds - {/literal} - hours = {$smarty.now|date_format:"%H"}; - minutes = {$smarty.now|date_format:"%M"}; - seconds = {$smarty.now|date_format:"%S"}; - {literal} - if(timer){clearInterval(timer);timer=null;} - timer=setInterval("work();", sinterval); -} - -function work() -{ - if (!document.layers && !document.all && !document.getElementById) return; - var runTime = new Date(); - var dn = "AM"; - var shours = hours; - var sminutes = minutes; - var sseconds = seconds; - if (shours >= 12) - { - dn = "PM"; - shours-=12; - } - if (!shours) shours = 12; - sminutes=twoDigit(sminutes); - sseconds=twoDigit(sseconds); - shours =twoDigit(shours ); - movingtime = ""+ shours + ":" + sminutes +":"+sseconds+"" + dn; - if (document.getElementById) - document.getElementById("servertime").innerHTML=movingtime; - else if (document.layers) - { - document.layers.clock.document.open(); - document.layers.clock.document.write(movingtime); - document.layers.clock.document.close(); - } - else if (document.all) - clock.innerHTML = movingtime; - - if((seconds=seconds + sinterval/1000)>59) - { - seconds=0; - if(++minutes>59) - { - minutes=0; - if(++hours>23) - { - hours=0; - } - } - } -} -</script> - -<SCRIPT LANGUAGE="JavaScript"> -<!-- Original: Tomleung (lok_2000_tom@hotmail.com) This tag should not be removed--> -<!-- Local time ticking clock modified for livesupport.campware.org using above script--> -function lMakeArrayday(size) -{ - this.length = size; - for(var i = 1; i <= size; i++) - this[i] = ""; - return this; -} -function lMakeArraymonth(size) -{ - this.length = size; - for(var i = 1; i <= size; i++) - this[i] = ""; - return this; -} - -var lhours; -var lminutes; -var lseconds; -var ltimer=null; -function lClock() -{ - linterval = 100; // milliseconds - var tDate = new Date(); - lhours = tDate.getHours(); - lminutes = tDate.getMinutes(); - lseconds = tDate.getSeconds(); - if(ltimer){clearInterval(ltimer);ltimer=null;} - ltimer=setInterval("lwork();", linterval); -} - -function lwork() -{ - if (!document.layers && !document.all && !document.getElementById) return; - var runTime = new Date(); - var dn = "AM"; - var shours = lhours; - var sminutes = lminutes; - var sseconds = lseconds; - if (shours >= 12) - { - dn = "PM"; - shours-=12; - } - if (!shours) shours = 12; - sminutes=twoDigit(sminutes); - sseconds=twoDigit(sseconds); - shours =twoDigit(shours ); - movingtime = ""+ shours + ":" + sminutes +":"+sseconds+"" + dn; - if (document.getElementById) - document.getElementById("localtime").innerHTML=movingtime; - else if (document.layers) - { - document.layers.clock.document.open(); - document.layers.clock.document.write(movingtime); - document.layers.clock.document.close(); - } - else if (document.all) - clock.innerHTML = movingtime; - - if((lseconds=lseconds + linterval/1000)>59) - { - lseconds=0; - if(++lminutes>59) - { - lminutes=0; - if(++lhours>23) - { - lhours=0; - } - } - } -} - -sClock(); -lClock(); -</script> -{/literal} diff --git a/livesupport/modules/htmlUI/var/html/templates/script/search.js.tpl b/livesupport/modules/htmlUI/var/html/templates/script/search.js.tpl deleted file mode 100644 index d45ec0e4e..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/script/search.js.tpl +++ /dev/null @@ -1,46 +0,0 @@ -<script type='text/javascript'> -{literal} - -function SearchForm_displayRow(row) -{ - document.getElementById('searchRow_' + row).style.visibility = 'visible'; - document.getElementById('searchRow_' + row).style.height = '30px'; -} - -function SearchForm_addRow() -{ - if (document.forms['search'].elements['counter'].value < document.forms['search'].elements['max_rows'].value) { - document.forms['search'].elements['counter'].value++; - SearchForm_displayRow(document.forms['search'].elements['counter'].value); - return true; - } else { - alert('Maximum reached'); - return false; - } -} - - -function SearchForm_hideRow(row) -{ - document.getElementById('searchRow_' + row).style.visibility = 'hidden'; - document.getElementById('searchRow_' + row).style.height = '0px'; - document.forms['search'].elements['row_' + Number(row) + '[0]'].options[0].selected=true; - document.forms['search'].elements['row_' + Number(row) + '[1]'].options[0].selected=true; - document.forms['search'].elements['row_' + Number(row) + '[2]'].value = ''; -} - -function SearchForm_dropRow(row) -{ - var n; - for (n=row; n<document.forms['search'].elements['counter'].value; n++) { - document.forms['search'].elements['row_' + Number(n) + '[0]'].value = document.forms['search'].elements['row_' + (Number(n)+1) + '[0]'].value; - document.forms['search'].elements['row_' + Number(n) + '[1]'].value = document.forms['search'].elements['row_' + (Number(n)+1) + '[1]'].value; - document.forms['search'].elements['row_' + Number(n) + '[2]'].value = document.forms['search'].elements['row_' + (Number(n)+1) + '[2]'].value; - } - document.forms['search'].elements['counter'].value--; - SearchForm_hideRow(Number(n)); - -} -{/literal} -</script> - diff --git a/livesupport/modules/htmlUI/var/html/templates/search.tpl b/livesupport/modules/htmlUI/var/html/templates/search.tpl deleted file mode 100644 index 61c675804..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/search.tpl +++ /dev/null @@ -1,46 +0,0 @@ -{*Smarty template*} - -{include file="script/search.js.tpl"} - -{if $showSearchForm} - {literal} - <style type="text/css"> - .dynformelement { - width : 800px; - } - </style> - {/literal} - <div id="searchform"> - {include file="sub/x.tpl"} - <center> - {foreach from=$searchform item=dynform} - {include file="sub/dynForm_plain.tpl"} - {/foreach} - </center> - </div> -{/if} - -{if $showSearchRes} - <div id="searchres"> - <center> - {if is_array($searchres)} - <table> - <tr><th>{tra 0=Title}</th><th>{tra 0=Duration}</th><th></th></tr> - {foreach from=$searchres item=s} - <tr style="background-color: {cycle values='#eeeeee, #dadada'}"> - <td>{$s.title}</td> - <td>{$s.duration}</td> - <td> - <a href="#" onClick="hpopup('{$UI_HANDLER}?act=PL.addItem&id={$s.id}', '2PL')">[PL]</a> - <a href="#" onClick="hpopup('{$UI_HANDLER}?act=SP.addItem&id={$s.id}', '2SP')">[SP]</a> - </td> - </tr> - </div> - {/foreach} - </table> - {else} - No match found. - {/if} - </center> - </div> -{/if} \ No newline at end of file diff --git a/livesupport/modules/htmlUI/var/html/templates/statusbar.tpl b/livesupport/modules/htmlUI/var/html/templates/statusbar.tpl deleted file mode 100644 index 7d4dd324c..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/statusbar.tpl +++ /dev/null @@ -1,30 +0,0 @@ -{include file="script/clock.js.tpl"} -<div id="statusbar"> - - <div class="statusbaritem"> - server time - <br> - <span id=servertime style="position:relative;"></span> - </div> - - <div class="statusbaritem"> - local time - <br> - <span id=localtime style="position:relative;"></span> - </div> - - <div class="statusbaritem"> - <img src="{$systemPrefs.stationLogoPath}" width="30" height="50"> - </div> - - <div class="statusbaritem"> - {$systemPrefs.stationName} - <br> - {$systemPrefs.frequency} - </div> - - <div class="statusbaritem"> - {include file="userinfo.tpl"} - </div> - -</div> diff --git a/livesupport/modules/htmlUI/var/html/templates/styles.css b/livesupport/modules/htmlUI/var/html/templates/styles.css deleted file mode 100644 index e696db9df..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/styles.css +++ /dev/null @@ -1,160 +0,0 @@ - body { - background-color : ThreedLightShadow; - font-family : monospace; -} - -#masterpanel { - text-align: center; - background-color : ThreedLightShadow; - height: 800px; - font-family : monospace; -} - -#statusbar { - text-align: center; - width: 800px; - border-style : dotted; - padding : 5px; - height : 70px; -} - -.statusbaritem { - width : 100px; - height : 50px; - border-style : dotted; - padding : 3px; - float : left; -} - -#login { - width : 300px; - border-style : dotted; - padding : 5px; - margin-top: 20px; -} - -#tree { - text-align : left; - width: 800px; - border-style : dotted; - padding : 5px; - margin-top: 20px; -} - -#menu_top { - text-align: center; - width: 800px; - border-style : dotted; - padding : 5px; - margin-top: 10px; -} - -#scratchpad { - text-align: center; - width: 800px; - border-style : dotted; - padding : 5px; - margin-top: 10px; -} - -#path { - text-align: center; - width: 800px; - border-style : dotted; - padding : 5px; - margin-top: 10px; -} - -#objects { - width: 800px; - border-style : dotted; - padding : 5px; - margin-top: 10px; -} - - -#permissions { - width: 800px; - border-style : dotted; - padding : 5px; - margin-top: 10px; -} - -#subjects { - width: 800px; - border-style : dotted; - padding : 5px; - margin-top: 10px; -} - -#uploadform { - width: 800px; - border-style : dotted; - padding : 5px; - margin-top: 10px; -} - -#searchform { - width: 800px; - border-style : dotted; - padding : 5px; - margin-top: 10px; -} - -#searchres { - width: 800px; - border-style : dotted; - padding : 5px; - margin-top: 10px; -} - -#footer { - - text-align: center; - width: 98%; - border-style : dotted; - padding : 5px; - margin-top: 20px; - font-size : x-small; -} - -#filedata { - width: 800px; - border-style : dotted; - padding : 5px; - margin-top: 10px; -} - -#metadataform {; - width: 800px; - border-style : dotted; - padding : 5px; - margin-top: 10px; -} - -.dynformelement { - padding-bottom : 6px; -} - -#systemPrefs { - width: 800px; - border-style : dotted; - padding : 5px; - margin-top: 10px; -} - -.closer { - width : 10px; - float : right; - font-weight : bold; - background-color : Gray; -} - -a { - text-decoration: none; -} - -.header { - color: #FFF; - background-color: #999; -} \ No newline at end of file diff --git a/livesupport/modules/htmlUI/var/html/templates/sub/dynForm_plain.tpl b/livesupport/modules/htmlUI/var/html/templates/sub/dynForm_plain.tpl deleted file mode 100644 index 84cf3582e..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/sub/dynForm_plain.tpl +++ /dev/null @@ -1,56 +0,0 @@ -{$dynform.javascript} - -<form{$dynform.attributes}>{$dynform.hidden} - -{foreach item=element from=$dynform.elements} - - <!-- elements with alternative layout in external template file--> - {if $element.style} - {include file="smarty-dynamic-`$element.style`.tpl} - {/if} - {* - NOTE: Another way ist to have smarty template code in - $element.style. In this case you can do: - - {if $element.style} - {eval var=$element.style} - {/if} - *} - - - {if $element.type eq 'static'} - {$element.html} - - {else} - <div class='dynformelement'> - {if $element.required}<font color="red">*</font>{/if} - {if $element.label}<b>{$element.label}:</b>{/if} - - - {if $element.error}<font color="red">{$element.error}</font><br />{/if} - {if $element.type eq "group"} - {foreach key=gkey item=gitem from=$element.elements}{$gitem.label}{$gitem.html}{if $gitem.required}<font color="red">*</font>{/if}{if $element.separator}{cycle values=$element.separator}{/if}{/foreach} - {else} - {$element.html} - {/if} - <div style="font-size: 80%;">{$element.label_note}</div> - - </div> - {/if} -{/foreach} - - {if $dynform.requirednote and not $dynform.frozen} - <div class='dynformelement'> - {$dynform.requirednote} - </div> - {/if} - -</form> - -<!-- - -<p><b>Collected Errors:</b><br /> -{foreach key=name item=error from=$dynform.errors} - <font color="red">{$error}</font> in element [{$name}]<br /> -{/foreach} -</p> --> diff --git a/livesupport/modules/htmlUI/var/html/templates/sub/dynForm_sections.tpl b/livesupport/modules/htmlUI/var/html/templates/sub/dynForm_sections.tpl deleted file mode 100644 index 6581bf304..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/sub/dynForm_sections.tpl +++ /dev/null @@ -1,79 +0,0 @@ -{$dynform.javascript} - -<table border="0" class="maintable"> - <form{$dynform.attributes}>{$dynform.hidden} - - {foreach item=sec key=i from=$dynform.sections} - <tr> - <td class="header" colspan="2"> - <b>{$sec.header}</b></td> - </tr> - - {foreach item=element from=$sec.elements} - - <!-- elements with alternative layout in external template file--> - {if $element.style} - {include file="smarty-dynamic-`$element.style`.tpl} - - {* - NOTE: Another way ist to have smarty template code in - $element.style. In this case you can do: - - {if $element.style} - {eval var=$element.style} - *} - - <!-- submit or reset button (don't display on frozen forms) --> - {elseif $element.type eq "submit" or $element.type eq "reset"} - {if not $dynform.frozen} - <tr> - <td> </td> - <td align="left">{$element.html}</td> - </tr> - {/if} - - <!-- normal elements --> - {else} - <tr> - {if $element.type eq "textarea"} - <td colspan="2"> - {if $element.required}<font color="red">*</font>{/if}<b>{$element.label}</b><br /> - {else} - <td align="right" valign="top"> - {if $element.required}<font color="red">*</font>{/if}<b>{$element.label}:</b></td> - <td> - {/if} - {if $element.error}<font color="red">{$element.error}</font><br />{/if} - {if $element.type eq "group"} - {foreach key=gkey item=gitem from=$element.elements} - {$gitem.label} - {$gitem.html}{if $gitem.required}<font color="red">*</font>{/if} - {if $element.separator}{cycle values=$element.separator}{/if} - {/foreach} - {else} - {$element.html} - {/if} - <div style="font-size: 80%;">{$element.label_note}</div> - </td> - </tr> - - {/if} - {/foreach} - {/foreach} - - {if $dynform.requirednote and not $dynform.frozen} - <tr> - <td> </td> - <td valign="top">{$dynform.requirednote}</td> - </tr> - {/if} - - </form> -</table> - - -<p><b>Collected Errors:</b><br /> -{foreach key=name item=error from=$dynform.errors} - <font color="red">{$error}</font> in element [{$name}]<br /> -{/foreach} -</p> diff --git a/livesupport/modules/htmlUI/var/html/templates/sub/form_error.tpl b/livesupport/modules/htmlUI/var/html/templates/sub/form_error.tpl deleted file mode 100644 index 2b7324e08..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/sub/form_error.tpl +++ /dev/null @@ -1 +0,0 @@ -{if $error}<span style="color: red;">{$error}</span>{/if}{$html} diff --git a/livesupport/modules/htmlUI/var/html/templates/sub/form_required.tpl b/livesupport/modules/htmlUI/var/html/templates/sub/form_required.tpl deleted file mode 100644 index da842f16b..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/sub/form_required.tpl +++ /dev/null @@ -1,10 +0,0 @@ -{if $error} - <font color="red">{$label|upper}</font> -{else} - {$label} - -{/if} - -{if $required} - <font color="red" size="1">*</font> -{/if} diff --git a/livesupport/modules/htmlUI/var/html/templates/sub/form_requirednote.tpl b/livesupport/modules/htmlUI/var/html/templates/sub/form_requirednote.tpl deleted file mode 100644 index 9927d8eed..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/sub/form_requirednote.tpl +++ /dev/null @@ -1 +0,0 @@ -<small><b><font color="red">*</font> are required</b></small> diff --git a/livesupport/modules/htmlUI/var/html/templates/sub/x.tpl b/livesupport/modules/htmlUI/var/html/templates/sub/x.tpl deleted file mode 100755 index bfc3a791d..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/sub/x.tpl +++ /dev/null @@ -1,3 +0,0 @@ -<div class="closer"> - <a href="{$UI_BROWSER}">X</a> -</div> diff --git a/livesupport/modules/htmlUI/var/html/templates/subjects.tpl b/livesupport/modules/htmlUI/var/html/templates/subjects.tpl deleted file mode 100644 index 3aef76379..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/subjects.tpl +++ /dev/null @@ -1,88 +0,0 @@ -{* Smarty template *} -<div id="subjects"> -{include file="sub/x.tpl"} - -{if $chgPasswd} - {$chgPasswd} -{/if} - -{if $groupMembers} - <table id="tree" border="0" cellpadding="5"> - <tr><th colspan="5">Subjects in group {$groupMembers.gname}</th></tr> - - {if (is_array($groupMembers.rows) && count($groupMembers.rows)>0)} - {foreach from=$groupMembers.rows item=row} - <tr bgcolor="{cycle values='#eeeeee, #dadada"'}"> - <td>{$row.id}</td> - <td class="b"> - {if ($row.type=='G')} - <a href="{$UI_BROWSER}?act=addsubj2group&id={$row.id}">{$row.login}</a> - {else} - {$row.login} - {/if} - </td - <td>{if ($row.type=='G')}(G){else}(U){/if}</td> - <td> - <a href="{$UI_HANDLER}?act=removeGroupMember&login={urlencode str=$row.login}&gname={urlencode str=$groupMembers.gname}&reid={$groupMembers.id}"> - [remove from Group] - </a> - </td> - </tr> - {/foreach} - {else} - <tr class="odd"><td colspan="3">No Members</td></tr> - {/if} - - </table> - <br> - {$addGroupMember} -{/if} - -{if $subjects} - <table width="100%" border="0" cellpadding="1"> - <tr><th colspan="4">Subjects</th></tr> - <tr><th>id</th><th>Login</th><th>User/Group</th><td></td></tr> - - {if (is_array($subjects.subj) && count($subjects.subj)>0)} - {foreach from=$subjects.subj item=c} - <tr bgcolor="{cycle values='#eeeeee, #dadada"'}"> - <td>{$c.id}</td> - <td class="b"> - {if ($c.type eq 'G')} - <a href="{$UI_BROWSER}?act=groupMembers&id={$c.id}">{$c.login}</a> - {else} - {$c.login} - {/if} - </td - <td> - {if ($c.type == 'G')} - G: {$c.cnt} - {else} - (U) - {/if} - </td> - <td> - <a class="lnkbutt" href="{$UI_HANDLER}?act=removeSubj&login={urlencode str=$c.login}">[remove]</a> - {if ($c.type != 'G')} - <a class="lnkbutt" href="{$UI_BROWSER}?act=chgPasswd&uid={urlencode str=$c.id}">[change Password]</a> - {/if} - </td> - </tr> - {/foreach} - {else} - <tr><td>no subject</td></tr> - {/if} - - </table> - - <br> - <div align="center"> - <a href='{$UI_BROWSER}?act=addUser'>[Add User]</a> - - <a href='{$UI_BROWSER}?act=addGroup'>[Add Group]</a> - <br><br> - {$addSubjectForm} - </div> -{/if} - -</div> \ No newline at end of file diff --git a/livesupport/modules/htmlUI/var/html/templates/systemPrefs.tpl b/livesupport/modules/htmlUI/var/html/templates/systemPrefs.tpl deleted file mode 100644 index 8087a3160..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/systemPrefs.tpl +++ /dev/null @@ -1,6 +0,0 @@ -<div id="systemPrefs"> -{include file="sub/x.tpl"} -<center> -{include file="sub/dynForm_sections.tpl"} -</center> -</div> diff --git a/livesupport/modules/htmlUI/var/html/templates/uploadform.tpl b/livesupport/modules/htmlUI/var/html/templates/uploadform.tpl deleted file mode 100644 index 110ad0dc9..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/uploadform.tpl +++ /dev/null @@ -1,9 +0,0 @@ -{*Smarty template*} - -<div id="uploadform"> -{include file="sub/x.tpl"} - <center> - {$uploadform} - </center> -</div> - diff --git a/livesupport/modules/htmlUI/var/html/templates/userinfo.tpl b/livesupport/modules/htmlUI/var/html/templates/userinfo.tpl deleted file mode 100644 index 8e7256b76..000000000 --- a/livesupport/modules/htmlUI/var/html/templates/userinfo.tpl +++ /dev/null @@ -1,11 +0,0 @@ -{*Smarty template*} - -{if $user.userid} - Login: {$user.login} - <br> - <a href='javascript: popup("{$UI_BROWSER}?popup[]=logout", "name", "350", "100");'>[{tra 0=logout}]</a> - <a href='javascript: popup("{$UI_BROWSER}?popup[]=signover_1", "name", "350", "160");'>[{tra 0='sign over'}]</a> -{else} - <a href='javascript: popup("{$UI_BROWSER}?popup[]=login", "name", "350", "160");'>{tra 0=login}</a> -{/if} - diff --git a/livesupport/modules/htmlUI/var/html/templates_c/dummy b/livesupport/modules/htmlUI/var/html/templates_c/dummy deleted file mode 100644 index e69de29bb..000000000