summaryrefslogtreecommitdiff
path: root/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0
diff options
context:
space:
mode:
Diffstat (limited to 'buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0')
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/BUGS7
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/COPYING.lib458
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/ChangeLog5421
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/FAQ284
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/INSTALL29
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/NEWS733
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/README80
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/RELEASE_NOTES423
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/TODO12
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Config_File.class.php365
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Smarty.class.php2010
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Smarty_Compiler.class.php2123
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.assemble_plugin_filepath.php62
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.assign_smarty_interface.php43
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.create_dir_structure.php79
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.display_debug_console.php60
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.get_include_path.php44
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.get_microtime.php23
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.get_php_resource.php80
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.is_secure.php59
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.is_trusted.php50
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.load_plugins.php125
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.load_resource_plugin.php74
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.process_cached_inserts.php71
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.process_compiled_include.php32
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.read_cache_file.php111
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.rm_auto.php71
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.rmdir.php55
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.run_insert_handler.php71
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.smarty_include_php.php50
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_cache_file.php73
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_compiled_include.php59
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_compiled_resource.php37
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_file.php48
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/debug.tpl64
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/block.strip.php35
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/block.textformat.php83
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.assign.php38
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.assign_debug_info.php39
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.config_load.php130
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.counter.php88
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.cycle.php119
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.debug.php35
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.eval.php48
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.fetch.php217
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_checkboxes.php135
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_image.php143
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_options.php118
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_radios.php138
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_select_date.php243
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_select_time.php163
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_table.php113
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.mailto.php140
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.math.php82
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.popup.php87
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.popup_init.php39
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.var_dump.php20
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.capitalize.php25
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.cat.php33
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.count_characters.php31
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.count_paragraphs.php28
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.count_sentences.php28
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.count_words.php32
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.date_format.php43
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.debug_print_var.php57
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.default.php31
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.escape.php63
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.htmlentities.php18
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.indent.php27
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.lower.php25
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.nl2br.php35
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.rawurlencode.php18
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.regex_replace.php29
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.replace.php29
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.spacify.php29
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.string_format.php28
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.strip.php33
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.strip_tags.php31
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.truncate.php43
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.upper.php25
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.wordwrap.php28
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/outputfilter.trimwhitespace.php75
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/shared.escape_special_chars.php30
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/shared.make_timestamp.php43
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/misc/smarty_icon.README6
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/misc/smarty_icon.gifbin1102 -> 0 bytes
86 files changed, 0 insertions, 16562 deletions
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/BUGS b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/BUGS
deleted file mode 100644
index fcbe48af..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/COPYING.lib b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/COPYING.lib
deleted file mode 100644
index 3b204400..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/ChangeLog b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/ChangeLog
deleted file mode 100644
index 6dcda589..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/ChangeLog
+++ /dev/null
@@ -1,5421 +0,0 @@
-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.1 2005/10/17 18:37:38 jeichorn 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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/FAQ b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/FAQ
deleted file mode 100644
index b82d39cf..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/INSTALL b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/INSTALL
deleted file mode 100644
index 0df4341b..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/NEWS b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/NEWS
deleted file mode 100644
index 76302980..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/NEWS
+++ /dev/null
@@ -1,733 +0,0 @@
-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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/README b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/README
deleted file mode 100644
index db3cf4e5..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/README
+++ /dev/null
@@ -1,80 +0,0 @@
-NAME:
-
- Smarty - the PHP compiling template engine
-
-VERSION: 2.5.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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/RELEASE_NOTES b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/RELEASE_NOTES
deleted file mode 100644
index 7fa1b4b1..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/TODO b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/TODO
deleted file mode 100644
index 183dd7ae..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/TODO
+++ /dev/null
@@ -1,12 +0,0 @@
-* handle asp style tags in $php_handler
-* support implementations of prefiltes, mods, and others as class methods.
-* ability to concatenate values/strings together
-* 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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Config_File.class.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Config_File.class.php
deleted file mode 100644
index 2b99af21..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Config_File.class.php
+++ /dev/null
@@ -1,365 +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
- *
- * You may contact the author of Config_File by e-mail at:
- * {@link andrei@php.net}
- *
- * The latest version of Config_File can be obtained from:
- * http://smarty.php.net/
- *
- * @link http://smarty.php.net/
- * @version 2.6.0
- * @copyright Copyright: 2001-2003 ispi of Lincoln, Inc.
- * @author Andrei Zmievski <andrei@php.net>
- * @access public
- * @package Smarty
- */
-
-/* $Id: Config_File.class.php,v 1.1 2005/10/17 18:37:39 jeichorn 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 = fread($fp, filesize($config_file));
- fclose($fp);
-
- if($this->fix_newlines) {
- // fix mac/dos formatted newlines
- $contents = preg_replace('!\r\n?!',"\n",$contents);
- }
-
- $config_data = array();
-
- /* replace all multi-line values by placeholders */
- if (preg_match_all('/"""(.*)"""/Us', $contents, $match)) {
- $_triple_quotes = $match[1];
- $_i = 0;
- $contents = preg_replace('/""".*"""/Use', '"\x1b\x1b\x1b".$_i++."\x1b\x1b\x1b"', $contents);
- } else {
- $_triple_quotes = null;
- }
-
- /* Get global variables first. */
- if ($contents{0} != '[' && preg_match("/^(.*?)(\n\[|\Z)/s", $contents, $match))
- $config_data["vars"] = $this->_parse_config_block($match[1], $_triple_quotes);
-
- /* Get section variables. */
- $config_data["sections"] = array();
- preg_match_all("/^\[(.*?)\]/m", $contents, $match);
- foreach ($match[1] as $section) {
- if ($section{0} == '.' && !$this->read_hidden)
- continue;
- if (preg_match("/\[".preg_quote($section, '/')."\](.*?)(\n\[|\Z)/s", $contents, $match))
- if ($section{0} == '.')
- $section = substr($section, 1);
- $config_data["sections"][$section]["vars"] = $this->_parse_config_block($match[1], $_triple_quotes);
- }
-
- $this->_config_data[$config_file] = $config_data;
-
- return true;
- }
-
- /**#@+ @access private */
- /**
- * @var string $config_block
- */
- function _parse_config_block($config_block, $triple_quotes)
- {
- $vars = array();
-
- /* First we grab the multi-line values. */
- if (preg_match_all("/^([^=\n]+)=\s*\x1b\x1b\x1b(\d+)\x1b\x1b\x1b\s*$/ms", $config_block, $match, PREG_SET_ORDER)) {
- for ($i = 0; $i < count($match); $i++) {
- $this->_set_config_var($vars, trim($match[$i][1]), $triple_quotes[$match[$i][2]], false);
- }
- $config_block = preg_replace("/^[^=\n]+=\s*\x1b\x1b\x1b\d+\x1b\x1b\x1b\s*$/ms", "", $config_block);
- }
-
-
- $config_lines = preg_split("/\n+/", $config_block);
-
- foreach ($config_lines as $line) {
- if (preg_match("/^\s*(\.?\w+)\s*=(.*)/", $line, $match)) {
- $var_value = preg_replace('/^([\'"])(.*)\1$/', '\2', trim($match[2]));
- $this->_set_config_var($vars, trim($match[1]), $var_value, $this->booleanize);
- }
- }
-
- return $vars;
- }
-
- /**
- * @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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Smarty.class.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Smarty.class.php
deleted file mode 100644
index 1909acab..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Smarty.class.php
+++ /dev/null
@@ -1,2010 +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
- *
- * You may contact the authors of Smarty by e-mail at:
- * monte@ispi.net
- * andrei@php.net
- *
- * Or, write to:
- * Monte Ohrt
- * Director of Technology, ispi
- * 237 S. 70th suite 220
- * Lincoln, NE 68510
- *
- * The latest version of Smarty can be obtained from:
- * http://smarty.php.net/
- *
- * @link http://smarty.php.net/
- * @copyright 2001-2003 ispi of Lincoln, Inc.
- * @author Monte Ohrt <monte@ispi.net>
- * @author Andrei Zmievski <andrei@php.net>
- * @package Smarty
- * @version 2.6.0
- */
-
-/* $Id: Smarty.class.php,v 1.1 2005/10/17 18:37:39 jeichorn 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);
-}
-
-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;
-
- /**
- * 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 = false;
-
- /**
- * 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 = true;
-
- /**
- * 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;
-
- /**
- * These are the variables from the globals array that are
- * assigned to all templates automatically. This isn't really
- * necessary any more, you can use the $smarty var to access them
- * directly.
- *
- * @var array
- */
- var $global_assign = array('HTTP_SERVER_VARS' => array('SCRIPT_NAME'));
-
- /**
- * The value of "undefined". Leave it alone :-)
- *
- * @var null
- */
- var $undefined = 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
- */
- /**
- * error messages. true/false
- *
- * @var boolean
- */
- var $_error_msg = false;
-
- /**
- * 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.0';
-
- /**
- * 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.
- *
- * @uses $global_assign uses {@link assign()} to assign each corresponding
- * value from $GLOBALS to the template vars
- */
- function Smarty()
- {
- foreach ($this->global_assign as $key => $var_name) {
- if (is_array($var_name)) {
- foreach ($var_name as $var) {
- if (isset($GLOBALS[$key][$var])) {
- $this->assign($var, $GLOBALS[$key][$var]);
- } else {
- $this->assign($var, $this->undefined);
- }
- }
- } else {
- if (isset($GLOBALS[$var_name])) {
- $this->assign($var_name, $GLOBALS[$var_name]);
- } else {
- $this->assign($var_name, $this->undefined);
- }
- }
- }
- }
-
-
- /**
- * 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_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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)
- {
- if (!empty($this->cache_handler_func)) {
- $dummy = null;
- call_user_func_array($this->cache_handler_func,
- array('clear', &$this, &$dummy, null, null, null, $exp_time));
- } else {
- $_params = array('auto_base' => $this->cache_dir,
- 'auto_source' => null,
- 'auto_id' => null,
- 'exp_time' => $exp_time);
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.rm_auto.php');
- return smarty_core_rm_auto($_params, $this);
- }
- }
-
-
- /**
- * 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_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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(error_reporting() & ~E_NOTICE);
-
- if (!$this->debugging && $this->debugging_ctrl == 'URL'
- && @strstr($GLOBALS['HTTP_SERVER_VARS']['QUERY_STRING'], $this->_smarty_debug_id)) {
- // enable debugging from URL
- $this->debugging = true;
- }
-
- if ($this->debugging) {
- // capture time for debugging info
- $_params = array();
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.read_cache_file.php');
- if (smarty_core_read_cache_file($_params, $this)) {
- $_smarty_results = $_params['results'];
- if (@count($this->_cache_info['insert_tags'])) {
- $_params = array('plugins' => $this->_cache_info['insert_tags']);
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.load_plugins.php');
- smarty_core_load_plugins($_params, $this);
- $_params = array('results' => $_smarty_results);
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.process_cached_inserts.php');
- $_smarty_results = smarty_core_process_cached_inserts($_params, $this);
- }
- if (@count($this->_cache_info['cache_serials'])) {
- $_params = array('results' => $_smarty_results);
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.display_debug_console.php');
- $_smarty_results .= smarty_core_display_debug_console($_params, $this);
- }
- if ($this->cache_modified_check) {
- $_last_modified_date = @substr($GLOBALS['HTTP_SERVER_VARS']['HTTP_IF_MODIFIED_SINCE'], 0, strpos($GLOBALS['HTTP_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) {
- 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_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.write_cache_file.php');
- smarty_core_write_cache_file($_params, $this);
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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, $this)) {
- 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'];
- $_resource_timestamp = $_params['resource_timestamp'];
- $_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_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.write_compiled_include.php');
- smarty_core_write_compiled_include(array_merge($this->_cache_include_info, array('compiled_content'=>$_compiled_content)), $this);
- }
-
- $_params = array('compile_path'=>$compile_path, 'compiled_content' => $_compiled_content, 'resource_timestamp' => $_resource_timestamp);
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.write_compiled_resource.php');
- smarty_core_write_compiled_resource($_params, $this);
-
- return true;
- } else {
- $this->trigger_error($smarty_compiler->_error_msg);
- 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->_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;
-
- $smarty_compiler->_cache_serial = null;
- $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'];
-
- 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_DIR . 'core' . DIRECTORY_SEPARATOR . '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
- if (isset($params['resource_base_path'])) {
- $_resource_base_path = (array)$params['resource_base_path'];
- } else {
- $_resource_base_path = (array)$this->template_dir;
- $_resource_base_path[] = '.';
- }
- foreach ($_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_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.get_include_path.php');
- if(smarty_core_get_include_path($_params, $this)) {
- $params['resource_name'] = $_params['new_file_path'];
- return true;
- }
- }
- return false;
- }
- } elseif (empty($this->_plugins['resource'][$params['resource_type']])) {
- $_params = array('type' => $params['resource_type']);
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . '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, $start=null, $lines=null)
- {
- if (!($fd = @fopen($filename, 'r'))) {
- return false;
- }
- flock($fd, LOCK_SH);
- if ($start == null && $lines == null) {
- // read the entire file
- $contents = fread($fd, filesize($filename));
- } else {
- if ( $start > 1 ) {
- // skip the first lines before $start
- for ($loop=1; $loop < $start; $loop++) {
- fgets($fd, 65536);
- }
- }
- if ( $lines == null ) {
- // read the rest of the file
- while (!feof($fd)) {
- $contents .= fgets($fd, 65536);
- }
- } else {
- // read up to $lines lines
- for ($loop=0; $loop < $lines; $loop++) {
- $contents .= fgets($fd, 65536);
- if (feof($fd)) {
- break;
- }
- }
- }
- }
- fclose($fd);
- return $contents;
- }
-
- /**
- * 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 : '^';
-
- if(@is_dir($auto_base)) {
- $_return = $auto_base . DIRECTORY_SEPARATOR;
- } else {
- // auto_base not found, try include_path
- $_params = array('file_path' => $auto_base);
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.get_include_path.php');
- smarty_core_get_include_path($_params, $this);
- $_return = isset($_params['new_file_path']) ? $_params['new_file_path'] . DIRECTORY_SEPARATOR : null;
- }
-
- 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 = crc32($auto_source) . $_compile_dir_sep;
- // prepend %% to avoid name conflicts with
- // with $params['auto_id'] names
- $_crc32 = '%%' . 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 = null;
- }
- if (isset($tpl_line) && isset($tpl_file)) {
- trigger_error("Smarty error: [in " . $tpl_file . " line " .
- $tpl_line . "]: $error_msg$info", $error_type);
- } else {
- trigger_error("Smarty 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_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Smarty_Compiler.class.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Smarty_Compiler.class.php
deleted file mode 100644
index 263591fc..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/Smarty_Compiler.class.php
+++ /dev/null
@@ -1,2123 +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
- *
- * You may contact the authors of Smarty by e-mail at:
- * monte@ispi.net
- * andrei@php.net
- *
- * Or, write to:
- * Monte Ohrt
- * Director of Technology, ispi
- * 237 S. 70th suite 220
- * Lincoln, NE 68510
- *
- * The latest version of Smarty can be obtained from:
- * http://smarty.php.net/
- *
- * @link http://smarty.php.net/
- * @author Monte Ohrt <monte@ispi.net>
- * @author Andrei Zmievski <andrei@php.net>
- * @version 2.6.0
- * @copyright 2001-2003 ispi of Lincoln, Inc.
- * @package Smarty
- */
-
-/* $Id: Smarty_Compiler.class.php,v 1.1 2005/10/17 18:37:39 jeichorn Exp $ */
-
-/**
- * Template compiling class
- * @package Smarty
- */
-class Smarty_Compiler extends Smarty {
-
- // internal vars
- /**#@+
- * @access private
- */
- var $_sectionelse_stack = array(); // keeps track of whether section had 'else' part
- var $_foreachelse_stack = array(); // keeps track of whether foreach had 'else' part
- var $_literal_blocks = array(); // keeps literal template blocks
- var $_php_blocks = array(); // keeps php code 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 $_var_bracket_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 $ 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_num_var_regexp = '\-?\d+(?:\.\d+)?' . $this->_dvar_math_var_regexp;
- $this->_dvar_guts_regexp = '\w+(?:' . $this->_var_bracket_regexp
- . ')*(?:\.\$?\w+(?:' . $this->_var_bracket_regexp . ')*)*(?:' . $this->_dvar_math_regexp . '(?:\-?\d+(?:\.\d+)?|' . $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 (no objects 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()
- $this->_obj_ext_regexp = '\->(?:\$?' . $this->_dvar_guts_regexp . ')';
- $this->_obj_params_regexp = '\((?:\w+|'
- . $this->_var_regexp . '(?:\s*,\s*(?:(?:\w+|'
- . $this->_var_regexp . ')))*)?\)';
- $this->_obj_start_regexp = '(?:' . $this->_dvar_regexp . '(?:' . $this->_obj_ext_regexp . ')+)';
- $this->_obj_call_regexp = '(?:' . $this->_obj_start_regexp . '(?:' . $this->_obj_params_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->_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 . '|\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");
- }
- }
- }
-
- /* Annihilate the comments. */
- $source_content = preg_replace("!({$ldq})\*(.*?)\*({$rdq})!se",
- "'\\1*'.str_repeat(\"\n\", substr_count('\\2', \"\n\")) .'*\\3'",
- $source_content);
-
- /* Pull out the literal blocks. */
- preg_match_all("!{$ldq}\s*literal\s*{$rdq}(.*?){$ldq}\s*/literal\s*{$rdq}!s", $source_content, $_match);
- $this->_literal_blocks = $_match[1];
- $source_content = preg_replace("!{$ldq}\s*literal\s*{$rdq}(.*?){$ldq}\s*/literal\s*{$rdq}!s",
- $this->_quote_replace($this->left_delimiter.'literal'.$this->right_delimiter), $source_content);
-
- /* Pull out the php code blocks. */
- preg_match_all("!{$ldq}php{$rdq}(.*?){$ldq}/php{$rdq}!s", $source_content, $_match);
- $this->_php_blocks = $_match[1];
- $source_content = preg_replace("!{$ldq}php{$rdq}(.*?){$ldq}/php{$rdq}!s",
- $this->_quote_replace($this->left_delimiter.'php'.$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");
- }
-
- $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_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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->_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->_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':
- return $this->_compile_if_tag($tag_args);
-
- case 'else':
- return '<?php else: ?>';
-
- case 'elseif':
- return $this->_compile_if_tag($tag_args, true);
-
- case '/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':
- array_push($this->_sectionelse_stack, false);
- return $this->_compile_section_start($tag_args);
-
- case 'sectionelse':
- $this->_sectionelse_stack[count($this->_sectionelse_stack)-1] = true;
- return "<?php endfor; else: ?>";
-
- case '/section':
- if (array_pop($this->_sectionelse_stack))
- return "<?php endif; ?>";
- else
- return "<?php endfor; endif; ?>";
-
- case 'foreach':
- array_push($this->_foreachelse_stack, false);
- return $this->_compile_foreach_start($tag_args);
- break;
-
- case 'foreachelse':
- $this->_foreachelse_stack[count($this->_foreachelse_stack)-1] = true;
- return "<?php endforeach; unset(\$_from); else: ?>";
-
- case '/foreach':
- if (array_pop($this->_foreachelse_stack))
- return "<?php endif; ?>";
- else
- return "<?php endforeach; unset(\$_from); endif; ?>";
-
- case 'strip':
- case '/strip':
- if ($tag_command{0}=='/') {
- if (--$this->_strip_depth==0) { /* outermost closing {/strip} */
- $this->_additional_newline = "\n";
- return $this->left_delimiter.$tag_command.$this->right_delimiter;
- }
- } else {
- if ($this->_strip_depth++==0) { /* outermost opening {strip} */
- $this->_additional_newline = "";
- return $this->left_delimiter.$tag_command.$this->right_delimiter;
- }
- }
- return '';
-
- case 'literal':
- list (,$literal_block) = each($this->_literal_blocks);
- $this->_current_line_no += substr_count($literal_block, "\n");
- return "<?php echo '".str_replace("'", "\'", str_replace("\\", "\\\\", $literal_block))."'; ?>" . $this->_additional_newline;
-
- case 'php':
- if ($this->security && !$this->security_settings['PHP_TAGS']) {
- $this->_syntax_error("(secure mode) php tags not permitted", E_USER_WARNING, __FILE__, __LINE__);
- return;
- }
- list (,$php_block) = each($this->_php_blocks);
- $this->_current_line_no += substr_count($php_block, "\n");
- return '<?php '.$php_block.' ?>';
-
- 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 {
- return $this->_compile_custom_tag($tag_command, $tag_args, $tag_modifier);
- }
- }
- }
-
-
- /**
- * 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) {
- $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\$_params = \$this->_tag_stack[] = array('$tag_command', array(".implode(',', $arg_list).')); ';
- $output .= $this->_compile_plugin_call('block', $tag_command).'($_params[1], null, $this, $_block_repeat=true); unset($_params);';
- $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)
- {
- $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='');
-
- $_return = $this->_compile_plugin_call('function', $tag_command).'(array('.implode(',', $arg_list)."), \$this)";
- if($tag_modifier != '') {
- $this->_parse_modifiers($_return, $tag_modifier);
- }
-
- if($_return != '') {
- $_return = '<?php ' . $_cacheable_state . $_cache_attrs . 'echo ' . $_return . ';'
- . $this->_pop_cacheable_state('function', $tag_command) . "?>" . $this->_additional_newline;
- }
-
- return $_return;
- }
-
- /**
- * 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");
- } 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'");
- } 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_DIR . 'core' . DIRECTORY_SEPARATOR . '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';
-
- 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(',', (array)$arg_list)."))";
-
- return "<?php require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . '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 .= "if (isset(\$this->_sections[$section_name])) 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'])) {
- $this->_syntax_error("missing 'from' attribute", E_USER_ERROR, __FILE__, __LINE__);
- }
-
- if (empty($attrs['item'])) {
- $this->_syntax_error("missing 'item' attribute", E_USER_ERROR, __FILE__, __LINE__);
- }
-
- $from = $attrs['from'];
- $item = $this->_dequote($attrs['item']);
- if (isset($attrs['name']))
- $name = $attrs['name'];
-
- $output = '<?php ';
- if (isset($name)) {
- $output .= "if (isset(\$this->_foreach[$name])) unset(\$this->_foreach[$name]);\n";
- $foreach_props = "\$this->_foreach[$name]";
- }
-
- $key_part = '';
-
- foreach ($attrs as $attr_name => $attr_value) {
- switch ($attr_name) {
- case 'key':
- $key = $this->_dequote($attrs['key']);
- $key_part = "\$this->_tpl_vars['$key'] => ";
- break;
-
- case 'name':
- $output .= "{$foreach_props}['$attr_name'] = $attr_value;\n";
- break;
- }
- }
-
- if (isset($name)) {
- $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 (@$tokens[$expr_end] == 'by') {
- $expr_end++;
- $expr_arg = $tokens[$expr_end++];
- $expr = "!(($is_arg / $expr_arg) % " . $this->_parse_var_props($expr_arg) . ")";
- } else
- $expr = "!($is_arg % 2)";
- break;
-
- case 'odd':
- if (@$tokens[$expr_end] == 'by') {
- $expr_end++;
- $expr_arg = $tokens[$expr_end++];
- $expr = "(($is_arg / $expr_arg) % ". $this->_parse_var_props($expr_arg) . ")";
- } else
- $expr = "($is_arg % 2)";
- 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('!^-?([0-9]+|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]);
- if($match[2] != '') {
- $this->_parse_modifiers($return, $match[2]);
- }
- 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->_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 . '\`)|(?:(?<!\\\\)\$\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 = "";
- // 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 {
- // fetch multiple -> (like $foo->bar->baz ) which wouldn't get fetched else, because it would only get $foo->bar and treat the ->baz as "-" ">baz" then
- for($_i = $_k + 1; $_i <= count($_math_vars); $_i += 2) {
- // fetch -> because it gets splitted at - and move it back together
- if( /* prevent notice */ (isset($_math_vars[$_i]) && isset($_math_vars[$_i+1])) && ($_math_vars[$_i] === '-' && $_math_vars[$_i+1]{0} === '>')) {
- $_math_var .= $_math_vars[$_i].$_math_vars[$_i+1];
- $_math_vars[$_i] = $_math_vars[$_i+1] = '';
- } else {
- break;
- }
- }
- $_complete_var .= $_math_var;
- }
- }
- }
- if($_has_math) {
- if(!empty($_complete_var) || is_numeric($_complete_var))
- $_output .= $this->_parse_var($_complete_var, true);
-
- // 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);
- $match = $match[0];
- rsort($match);
- reset($match);
- $orig_vals = $match;
- $this->_parse_vars_props($match);
- return str_replace($orig_vals, $match, $parenth_args);
- }
-
- /**
- * 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;
- }
-
- $this->_add_plugin('modifier', $_modifier_name);
- 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" , $_tpl_file, $_tpl_line, __FILE__, __LINE__);
- } else {
- $this->_plugins['modifier'][$_modifier_name] = array($_modifier_name, null, null, false);
- }
- }
-
- $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':
- 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 = 2;
- 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_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.load_plugins.php');
- smarty_core_load_plugins($_params, $this);
- }
- }
- }
- }
-
-
- /**
- * Quote subpattern references
- *
- * @param string $string
- * @return string
- */
- function _quote_replace($string)
- {
- return preg_replace('![\\$]\d!', '\\\\\\0', $string);
- }
-
- /**
- * 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)
- {
- if(isset($file) && isset($line)) {
- $info = ' ('.basename($file).", line $line)";
- } else {
- $info = null;
- }
- trigger_error('Smarty: [in ' . $this->_current_file . ' line ' .
- $this->_current_line_no . "]: syntax error: $error_msg$info", $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) { 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) { echo \'{/nocache:'
- . $this->_cache_serial . '#' . ($this->_nocache_count++)
- . '}\';}';
- }
-
-}
-
-/**
- * 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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.assemble_plugin_filepath.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.assemble_plugin_filepath.php
deleted file mode 100644
index 4c40ae90..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.assemble_plugin_filepath.php
+++ /dev/null
@@ -1,62 +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)
-{
-
- $_plugin_filename = $params['type'] . '.' . $params['name'] . '.php';
- $_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_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.get_include_path.php');
- if(smarty_core_get_include_path($_params, $smarty)) {
- return $_params['new_file_path'];
- }
- }
- }
- }
-
- return $_return;
-}
-
-/* vim: set expandtab: */
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.assign_smarty_interface.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.assign_smarty_interface.php
deleted file mode 100644
index 500ba9a9..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.create_dir_structure.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.create_dir_structure.php
deleted file mode 100644
index b57d50ea..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.display_debug_console.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.display_debug_console.php
deleted file mode 100644
index 252c4478..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.display_debug_console.php
+++ /dev/null
@@ -1,60 +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));
- }
- }
-
- $_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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.get_include_path.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.get_include_path.php
deleted file mode 100644
index 855eed30..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/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 (file_exists($_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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.get_microtime.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.get_microtime.php
deleted file mode 100644
index 3c998a71..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.get_php_resource.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.get_php_resource.php
deleted file mode 100644
index 5279ad21..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/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_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.is_secure.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.is_secure.php
deleted file mode 100644
index d6358208..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.is_secure.php
+++ /dev/null
@@ -1,59 +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)
-{
- static $check_template_dir = true;
-
- if (!$smarty->security || $smarty->security_settings['INCLUDE_ANY']) {
- return true;
- }
-
- $_smarty_secure = false;
- if ($params['resource_type'] == 'file') {
- if($check_template_dir) {
- if (!in_array($smarty->template_dir, $smarty->secure_dir))
- // add template_dir to secure_dir array
- array_unshift($smarty->secure_dir, $smarty->template_dir);
- $check_template_dir = false;
- }
- if (!empty($smarty->secure_dir)) {
- $_rp = realpath($params['resource_name']);
- foreach ((array)$smarty->secure_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_secure = true;
- break;
- }
- }
- }
- }
- } else {
- // resource is not on local file system
- $_smarty_secure = call_user_func_array(
- $smarty->_plugins['resource'][$params['resource_type']][0][2],
- array($params['resource_name'], &$_smarty_secure, &$smarty));
- }
-
- return $_smarty_secure;
-}
-
-/* vim: set expandtab: */
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.is_trusted.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.is_trusted.php
deleted file mode 100644
index 478d3d30..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.is_trusted.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-/**
- * Smarty plugin
- * @package Smarty
- * @subpackage plugins
- */
-
-/**#@+
- * @access private
- */
-/**
- * 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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.load_plugins.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.load_plugins.php
deleted file mode 100644
index 6f412ec9..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.load_resource_plugin.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.load_resource_plugin.php
deleted file mode 100644
index 8a084f1b..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.process_cached_inserts.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.process_cached_inserts.php
deleted file mode 100644
index 42c32698..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/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_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.process_compiled_include.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.process_compiled_include.php
deleted file mode 100644
index 52ecc642..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.read_cache_file.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.read_cache_file.php
deleted file mode 100644
index 60ec924e..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.rm_auto.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.rm_auto.php
deleted file mode 100644
index d3cbfe28..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/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_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.rmdir.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.rmdir.php
deleted file mode 100644
index f149469d..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/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_DIR . 'core' . DIRECTORY_SEPARATOR . '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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.run_insert_handler.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.run_insert_handler.php
deleted file mode 100644
index a40f8b24..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/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_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.smarty_include_php.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.smarty_include_php.php
deleted file mode 100644
index 9efc46ac..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/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_DIR . 'core' . DIRECTORY_SEPARATOR . '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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_cache_file.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_cache_file.php
deleted file mode 100644
index 47f1b8ec..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_cache_file.php
+++ /dev/null
@@ -1,73 +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...}-tags
- $params['results'] = preg_replace('!((\{nocache\:([0-9a-f]{32})#(\d+)\})'
- .'.*'
- .'{/nocache\:\\3#\\4\})!Us'
- ,'\\2'
- ,$params['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_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.write_file.php');
- smarty_core_write_file($_params, $smarty);
- return true;
- }
-}
-
-/* vim: set expandtab: */
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_compiled_include.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_compiled_include.php
deleted file mode 100644
index 4124f355..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_compiled_include.php
+++ /dev/null
@@ -1,59 +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
- * @param integer $template_timestamp
- * @return boolean
- */
-
-function smarty_core_write_compiled_include($params, &$smarty)
-{
- $_tag_start = 'if \(\$this->caching\) \{ echo \'\{nocache\:('.$params['cache_serial'].')#(\d+)\}\';\}';
- $_tag_end = 'if \(\$this->caching\) \{ 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 /* funky header here */\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";
- for ($_i = 0, $_for_max = count($_match_source); $_i < $_for_max; $_i++) {
- $_match =& $_match_source[$_i];
- $_include_compiled .= "
-function _smarty_tplfunc_$_match[2]_$_match[3](&\$this)
-{
-$_match[4]
-}
-
-";
- }
- $_include_compiled .= "\n\n?>\n";
-
- $_params = array('filename' => $_compile_path,
- 'contents' => $_include_compiled, 'create_dirs' => true);
-
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.write_file.php');
- smarty_core_write_file($_params, $smarty);
- return true;
-}
-
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_compiled_resource.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_compiled_resource.php
deleted file mode 100644
index cd5cfb56..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_compiled_resource.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-/**
- * Smarty plugin
- * @package Smarty
- * @subpackage plugins
- */
-
-/**
- * write the compiled resource
- *
- * @param string $compile_path
- * @param string $compiled_content
- * @param integer $resource_timestamp
- * @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_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.write_file.php');
- smarty_core_write_file($_params, $smarty);
- touch($params['compile_path'], $params['resource_timestamp']);
- return true;
-}
-
-/* vim: set expandtab: */
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_file.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_file.php
deleted file mode 100644
index 534a3828..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/core/core.write_file.php
+++ /dev/null
@@ -1,48 +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_DIR . 'core' . DIRECTORY_SEPARATOR . '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 = $_dirname . DIRECTORY_SEPARATOR . uniqid('');
-
- if (!($fd = @fopen($_tmp_file, 'w'))) {
- $smarty->trigger_error("problem writing temporary file '$_tmp_file'");
- return false;
- }
-
- fwrite($fd, $params['contents']);
- fclose($fd);
- 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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/debug.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/debug.tpl
deleted file mode 100644
index ab717db7..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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}&nbsp;&nbsp;&nbsp;{/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><TITLE>Smarty Debug Console_"+self.name+"</TITLE><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}&nbsp;&nbsp;&nbsp;{/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/block.strip.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/block.strip.php
deleted file mode 100644
index a25df360..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/block.strip.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/**
- * Smarty plugin
- * @package Smarty
- * @subpackage plugins
- */
-
-/**
- * Smarty {strip}{/strip} block plugin
- *
- * Type: block function<br>
- * Name: strip<br>
- * Purpose: strip unwanted white space from text<br>
- * @link http://smarty.php.net/manual/en/language.function.strip.php {strip}
- * (Smarty online manual)
- * @param array unused, no parameters for this block
- * @param string content of {strip}{/strip} tags
- * @param Smarty clever method emulation
- * @return string $content stripped of whitespace
- */
-function smarty_block_strip($params, $content, &$this)
-{
- /* Reformat data between 'strip' and '/strip' tags, removing spaces, tabs and newlines. */
- $_strip_search = array(
- "![\t ]+$|^[\t ]+!m", // remove leading/trailing space chars
- '%[\r\n]+%m'); // remove CRs and newlines
- $_strip_replace = array(
- '',
- '');
- return preg_replace($_strip_search, $_strip_replace, $content);
-}
-
-/* vim: set expandtab: */
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/block.textformat.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/block.textformat.php
deleted file mode 100644
index f3462c21..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/block.textformat.php
+++ /dev/null
@@ -1,83 +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)
-{
- $style = null;
- $indent = 0;
- $indent_first = 0;
- $indent_char = ' ';
- $wrap = 80;
- $wrap_char = "\n";
- $wrap_cut = false;
- $assign = null;
-
- if($content == null) {
- return true;
- }
-
- extract($params);
-
- if($style == 'email') {
- $wrap = 72;
- }
-
- // split into paragraphs
- $paragraphs = preg_split('![\r\n][\r\n]!',$content);
- $output = '';
-
- foreach($paragraphs as $paragraph) {
- if($paragraph == '') {
- continue;
- }
- // convert mult. spaces & special chars to single space
- $paragraph = preg_replace(array('!\s+!','!(^\s+)|(\s+$)!'),array(' ',''),$paragraph);
- // indent first line
- if($indent_first > 0) {
- $paragraph = str_repeat($indent_char,$indent_first) . $paragraph;
- }
- // wordwrap sentences
- $paragraph = wordwrap($paragraph, $wrap - $indent, $wrap_char, $wrap_cut);
- // indent lines
- if($indent > 0) {
- $paragraph = preg_replace('!^!m',str_repeat($indent_char,$indent),$paragraph);
- }
- $output .= $paragraph . $wrap_char . $wrap_char;
- }
-
- if($assign != null) {
- $smarty->assign($assign,$output);
- } else {
- return $output;
- }
-}
-
-/* vim: set expandtab: */
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.assign.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.assign.php
deleted file mode 100644
index c04be8bc..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.assign.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-/**
- * Smarty plugin
- * @package Smarty
- * @subpackage plugins
- */
-
-/**
- * Smarty {assign} function plugin
- *
- * Type: 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 array Format: array('var' => variable name, 'value' => value to assign)
- * @param Smarty
- */
-function smarty_function_assign($params, &$smarty)
-{
- extract($params);
-
- if (empty($var)) {
- $smarty->trigger_error("assign: missing 'var' parameter");
- return;
- }
-
- if (!in_array('value', array_keys($params))) {
- $smarty->trigger_error("assign: missing 'value' parameter");
- return;
- }
-
- $smarty->assign($var, $value);
-}
-
-/* vim: set expandtab: */
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.assign_debug_info.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.assign_debug_info.php
deleted file mode 100644
index 59ddaa16..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.config_load.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.config_load.php
deleted file mode 100644
index d9d65b95..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.config_load.php
+++ /dev/null
@@ -1,130 +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_DIR . 'core' . DIRECTORY_SEPARATOR . '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->_syntax_error("missing 'file' attribute in config_load tag", E_USER_ERROR, __FILE__, __LINE__);
- }
-
- if (isset($_scope)) {
- if ($_scope != 'local' &&
- $_scope != 'parent' &&
- $_scope != 'global') {
- $smarty->_syntax_error("invalid 'scope' attribute value", E_USER_ERROR, __FILE__, __LINE__);
- }
- } else {
- if ($_global) {
- $_scope = 'parent';
- } else {
- $_scope = 'local';
- }
- }
-
- if(@is_dir($smarty->config_dir)) {
- $_config_dir = $smarty->config_dir;
- } else {
- // config_dir not found, try include_path
- $_params = array('file_path' => $smarty->config_dir);
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.get_include_path.php');
- smarty_core_get_include_path($_params, $smarty);
- $_config_dir = $_params['new_file_path'];
- }
-
- $_file_path = $_config_dir . DIRECTORY_SEPARATOR . $_file;
- 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)
- || ($smarty->compile_check
- && !$smarty->_is_compiled($_file_path, $_compile_file))) {
- // 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($_config_dir);
- $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;
- $smarty->_conf_obj->set_path = $_config_dir;
- }
- $_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' => filemtime($_file_path)));
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . '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_DIR . 'core' . DIRECTORY_SEPARATOR . '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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.counter.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.counter.php
deleted file mode 100644
index 8d17d2bb..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.counter.php
+++ /dev/null
@@ -1,88 +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();
-
- extract($params);
-
- if (!isset($name)) {
- if(isset($id)) {
- $name = $id;
- } else {
- $name = "default";
- }
- }
-
- if (!isset($counters[$name])) {
- $counters[$name] = array(
- 'start'=>1,
- 'skip'=>1,
- 'direction'=>'up',
- 'count'=>1
- );
- }
- $counter =& $counters[$name];
-
- if (isset($start)) {
- $counter['start'] = $counter['count'] = $start;
- }
-
- if (!empty($assign)) {
- $counter['assign'] = $assign;
- }
-
- if (isset($counter['assign'])) {
- $smarty->assign($counter['assign'], $counter['count']);
- }
-
- if (isset($print)) {
- $print = (bool)$print;
- } else {
- $print = empty($counter['assign']);
- }
-
- if ($print) {
- $retval = $counter['count'];
- } else {
- $retval = null;
- }
-
- if (isset($skip)) {
- $counter['skip'] = $skip;
- }
-
- if (isset($direction)) {
- $counter['direction'] = $direction;
- }
-
- if ($counter['direction'] == "down")
- $counter['count'] -= $counter['skip'];
- else
- $counter['count'] += $counter['skip'];
-
- return $retval;
-
-}
-
-/* vim: set expandtab: */
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.cycle.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.cycle.php
deleted file mode 100644
index c2e899d0..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.cycle.php
+++ /dev/null
@@ -1,119 +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;
-
- extract($params);
-
- if (empty($name)) {
- $name = 'default';
- }
-
- if (!isset($print)) {
- $print = true;
- }
-
- if (!isset($advance)) {
- $advance = true;
- }
-
- if (!isset($reset)) {
- $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'] != $values ) {
- $cycle_vars[$name]['index'] = 0;
- }
- $cycle_vars[$name]['values'] = $values;
- }
-
- if (isset($delimiter)) {
- $cycle_vars[$name]['delimiter'] = $delimiter;
- } elseif (!isset($cycle_vars[$name]['delimiter'])) {
- $cycle_vars[$name]['delimiter'] = ',';
- }
-
- if(!is_array($cycle_vars[$name]['values'])) {
- $cycle_array = explode($cycle_vars[$name]['delimiter'],$cycle_vars[$name]['values']);
- } else {
- $cycle_array = $cycle_vars[$name]['values'];
- }
-
- if(!isset($cycle_vars[$name]['index']) || $reset ) {
- $cycle_vars[$name]['index'] = 0;
- }
-
- if (isset($assign)) {
- $print = false;
- $smarty->assign($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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.debug.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.debug.php
deleted file mode 100644
index 5fe02f30..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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($params['output']) {
- $smarty->assign('_smarty_debug_output',$params['output']);
- }
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.display_debug_console.php');
- return smarty_core_display_debug_console(null, $smarty);
-}
-
-/* vim: set expandtab: */
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.eval.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.eval.php
deleted file mode 100644
index e6943876..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.fetch.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.fetch.php
deleted file mode 100644
index 082c3483..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.fetch.php
+++ /dev/null
@@ -1,217 +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;
- }
-
- if ($smarty->security && !preg_match('!^(http|ftp)://!i', $params['file'])) {
- $_params = array('resource_type' => 'file', 'resource_name' => $params['file']);
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . '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 = '';
- }
- // 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");
- }
-
- $content = '';
- 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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_checkboxes.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_checkboxes.php
deleted file mode 100644
index 6b32c594..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_checkboxes.php
+++ /dev/null
@@ -1,135 +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 &nbsp;
- * - output (optional) - without this one the buttons don't have names
- * 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_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;
-
- 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 = '';
-
- 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);
- }
-
- }
-
- return $_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($value, $selected)) {
- $_output .= ' checked="checked"';
- }
- $_output .= $extra . ' />' . $output;
- if ($labels) $_output .= '</label>';
- $_output .= $separator . "\n";
-
- return $_output;
-}
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_image.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_image.php
deleted file mode 100644
index 5ddbe4a1..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_image.php
+++ /dev/null
@@ -1,143 +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 = '';
- $basedir = isset($GLOBALS['HTTP_SERVER_VARS']['DOCUMENT_ROOT'])
- ? $GLOBALS['HTTP_SERVER_VARS']['DOCUMENT_ROOT'] : '';
- if(strstr($GLOBALS['HTTP_SERVER_VARS']['HTTP_USER_AGENT'], 'Mac')) {
- $dpi_default = 72;
- } else {
- $dpi_default = 96;
- }
-
- 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(!$_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;
- }
- }
- $_params = array('resource_type' => 'file', 'resource_name' => $_image_path);
- require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.is_secure.php');
- if(!$smarty->security && !smarty_core_is_secure($_params, $smarty)) {
- $smarty->trigger_error("html_image: (secure) '$_image_path' not in secure directory", E_USER_NOTICE);
- return;
- }
-
- if(!isset($params['width'])) {
- $width = $_image_data[0];
- }
- if(!isset($params['height'])) {
- $height = $_image_data[1];
- }
-
- }
-
- if(isset($params['dpi'])) {
- $_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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_options.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_options.php
deleted file mode 100644
index dfc38c83..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_options.php
+++ /dev/null
@@ -1,118 +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 'selected':
- case 'values':
- case 'output':
- $$_key = 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($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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_radios.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_radios.php
deleted file mode 100644
index f5052391..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_radios.php
+++ /dev/null
@@ -1,138 +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 &nbsp;
- * - output (optional) - without this one the buttons don't have names
- * 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;
-
-
- 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 = '';
-
- 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);
- }
-
- }
-
- return $_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 . "\n";
-
- return $_output;
-}
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_select_date.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_select_date.php
deleted file mode 100644
index a607f555..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_select_date.php
+++ /dev/null
@@ -1,243 +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)
- * @link http://smarty.php.net/manual/en/language.function.html.select.date.php {html_select_date}
- * (Smarty online manual)
- * @version 1.3
- * @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();
-
-
- extract($params);
-
- // If $time is not in format yyyy-mm-dd
- if (!preg_match('/^\d{4}-\d{2}-\d{2}$/', $time)) {
- // then $time is empty or unix timestamp or mysql timestamp
- // using 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];
- }
- }
-
- $field_order = strtoupper($field_order);
-
- $html_result = $month_result = $day_result = $year_result = "";
-
- if ($display_months) {
- $month_names = array();
- $month_values = array();
-
- for ($i = 1; $i <= 12; $i++) {
- $month_names[] = strftime($month_format, mktime(0, 0, 0, $i, 1, 2000));
- $month_values[] = 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' => $month_values[$time[1]-1],
- 'print_result' => false),
- $smarty);
-
- $month_result .= '</select>';
- }
-
- if ($display_days) {
- $days = array();
- 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);
- }
-
- $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' => $years,
- '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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_select_time.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_select_time.php
deleted file mode 100644
index 4643136b..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_select_time.php
+++ /dev/null
@@ -1,163 +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;
-
- extract($params);
-
- $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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_table.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_table.php
deleted file mode 100644
index ece9c8c5..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.html_table.php
+++ /dev/null
@@ -1,113 +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 = '&nbsp;';
- $vdir = 'down';
- $hdir = 'right';
- $inner = 'cols';
-
- extract($params);
-
- if (!isset($loop)) {
- $smarty->trigger_error("html_table: missing 'loop' parameter");
- return;
- }
-
- $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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.mailto.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.mailto.php
deleted file mode 100644
index 9273ba39..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.mailto.php
+++ /dev/null
@@ -1,140 +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 = '';
- extract($params);
-
- if (empty($address)) {
- $smarty->trigger_error("mailto: missing 'address' parameter");
- return;
- }
-
- if (empty($text)) {
- $text = $address;
- }
-
- // netscape and mozilla do not decode %40 (@) in BCC field (bug?)
- // so, don't encode it.
-
- $mail_parms = array();
- if (!empty($cc)) {
- $mail_parms[] = 'cc='.str_replace('%40','@',rawurlencode($cc));
- }
-
- if (!empty($bcc)) {
- $mail_parms[] = 'bcc='.str_replace('%40','@',rawurlencode($bcc));
- }
-
- if (!empty($subject)) {
- $mail_parms[] = 'subject='.rawurlencode($subject);
- }
-
- if (!empty($newsgroups)) {
- $mail_parms[] = 'newsgroups='.rawurlencode($newsgroups);
- }
-
- if (!empty($followupto)) {
- $mail_parms[] = 'followupto='.str_replace('%40','@',rawurlencode($followupto));
- }
-
- $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;
-
- if (empty($encode)) {
- $encode = 'none';
- } elseif (!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>\');';
-
- for ($x=0; $x < strlen($string); $x++) {
- $js_encode .= '%' . bin2hex($string[$x]);
- }
-
- return '<script type="text/javascript" language="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;
- }
- for ($x=0; $x < strlen($address); $x++) {
- if(preg_match('!\w!',$address[$x])) {
- $address_encode .= '%' . bin2hex($address[$x]);
- } else {
- $address_encode .= $address[$x];
- }
- }
- for ($x=0; $x < strlen($text); $x++) {
- $text_encode .= '&#x' . bin2hex($text[$x]).';';
- }
-
- 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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.math.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.math.php
deleted file mode 100644
index d2b5d829..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.popup.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.popup.php
deleted file mode 100644
index 0eb4fcb3..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.popup.php
+++ /dev/null
@@ -1,87 +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)
-{
- extract($params);
-
- 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).'\'';
- if ($sticky) { $retval .= ",STICKY"; }
- if (!empty($caption)) { $retval .= ",CAPTION,'".str_replace("'","\'",$caption)."'"; }
- if (!empty($fgcolor)) { $retval .= ",FGCOLOR,'$fgcolor'"; }
- if (!empty($bgcolor)) { $retval .= ",BGCOLOR,'$bgcolor'"; }
- if (!empty($textcolor)) { $retval .= ",TEXTCOLOR,'$textcolor'"; }
- if (!empty($capcolor)) { $retval .= ",CAPCOLOR,'$capcolor'"; }
- if (!empty($closecolor)) { $retval .= ",CLOSECOLOR,'$closecolor'"; }
- if (!empty($textfont)) { $retval .= ",TEXTFONT,'$textfont'"; }
- if (!empty($captionfont)) { $retval .= ",CAPTIONFONT,'$captionfont'"; }
- if (!empty($closefont)) { $retval .= ",CLOSEFONT,'$closefont'"; }
- if (!empty($textsize)) { $retval .= ",TEXTSIZE,$textsize"; }
- if (!empty($captionsize)) { $retval .= ",CAPTIONSIZE,$captionsize"; }
- if (!empty($closesize)) { $retval .= ",CLOSESIZE,$closesize"; }
- if (!empty($width)) { $retval .= ",WIDTH,$width"; }
- if (!empty($height)) { $retval .= ",HEIGHT,$height"; }
- if (!empty($left)) { $retval .= ",LEFT"; }
- if (!empty($right)) { $retval .= ",RIGHT"; }
- if (!empty($center)) { $retval .= ",CENTER"; }
- if (!empty($above)) { $retval .= ",ABOVE"; }
- if (!empty($below)) { $retval .= ",BELOW"; }
- if (isset($border)) { $retval .= ",BORDER,$border"; }
- if (isset($offsetx)) { $retval .= ",OFFSETX,$offsetx"; }
- if (isset($offsety)) { $retval .= ",OFFSETY,$offsety"; }
- if (!empty($fgbackground)) { $retval .= ",FGBACKGROUND,'$fgbackground'"; }
- if (!empty($bgbackground)) { $retval .= ",BGBACKGROUND,'$bgbackground'"; }
- if (!empty($closetext)) { $retval .= ",CLOSETEXT,'".str_replace("'","\'",$closetext)."'"; }
- if (!empty($noclose)) { $retval .= ",NOCLOSE"; }
- if (!empty($status)) { $retval .= ",STATUS,'".str_replace("'","\'",$status)."'"; }
- if (!empty($autostatus)) { $retval .= ",AUTOSTATUS"; }
- if (!empty($autostatuscap)) { $retval .= ",AUTOSTATUSCAP"; }
- if (isset($inarray)) { $retval .= ",INARRAY,'$inarray'"; }
- if (isset($caparray)) { $retval .= ",CAPARRAY,'$caparray'"; }
- if (!empty($capicon)) { $retval .= ",CAPICON,'$capicon'"; }
- if (!empty($snapx)) { $retval .= ",SNAPX,$snapx"; }
- if (!empty($snapy)) { $retval .= ",SNAPY,$snapy"; }
- if (isset($fixx)) { $retval .= ",FIXX,$fixx"; }
- if (isset($fixy)) { $retval .= ",FIXY,$fixy"; }
- if (!empty($background)) { $retval .= ",BACKGROUND,'$background'"; }
- if (!empty($padx)) { $retval .= ",PADX,$padx"; }
- if (!empty($pady)) { $retval .= ",PADY,$pady"; }
- if (!empty($fullhtml)) { $retval .= ",FULLHTML"; }
- if (!empty($frame)) { $retval .= ",FRAME,'$frame'"; }
- if (isset($timeout)) { $retval .= ",TIMEOUT,$timeout"; }
- if (!empty($function)) { $retval .= ",FUNCTION,'$function'"; }
- if (isset($delay)) { $retval .= ",DELAY,$delay"; }
- if (!empty($hauto)) { $retval .= ",HAUTO"; }
- if (!empty($vauto)) { $retval .= ",VAUTO"; }
- $retval .= ');" onmouseout="nd();"';
-
- return $retval;
-}
-
-/* vim: set expandtab: */
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.popup_init.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.popup_init.php
deleted file mode 100644
index e06de696..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.var_dump.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.var_dump.php
deleted file mode 100644
index 382032c1..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/function.var_dump.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-/** @package Smarty
-* @subpackage plugins */
-
-/**
- * Smarty plugin
- * -------------------------------------------------------------
- * Type: function
- * Name: assign
- * Purpose: assign a value to a template variable
- * -------------------------------------------------------------
- */
-function smarty_function_var_dump($params, &$smarty)
-{
- var_dump('<pre>',$params,'</pre>');
-}
-
-/* vim: set expandtab: */
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.capitalize.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.capitalize.php
deleted file mode 100644
index 464d5f84..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.capitalize.php
+++ /dev/null
@@ -1,25 +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)
-{
- return ucwords($string);
-}
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.cat.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.cat.php
deleted file mode 100644
index 176ee7ae..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.count_characters.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.count_characters.php
deleted file mode 100644
index 2fb7c898..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.count_paragraphs.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.count_paragraphs.php
deleted file mode 100644
index 5f6278fe..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.count_sentences.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.count_sentences.php
deleted file mode 100644
index 2f3ba65e..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.count_words.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.count_words.php
deleted file mode 100644
index a686e4b4..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.date_format.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.date_format.php
deleted file mode 100644
index ab7e9045..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.date_format.php
+++ /dev/null
@@ -1,43 +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($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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.debug_print_var.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.debug_print_var.php
deleted file mode 100644
index 3158df00..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.debug_print_var.php
+++ /dev/null
@@ -1,57 +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>&#92;n</i>', "\r"=>'<i>&#92;r</i>', "\t"=>'<i>&#92;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('&nbsp;', $depth*2)."<b>".strtr($curr_key, $_replace)."</b> =&gt; $return";
- }
- return $results;
- } 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('&nbsp;', $depth*2)."<b>$curr_key</b> =&gt; $return";
- }
- return $results;
- } else {
- if (empty($var) && $var != "0") {
- return '<i>empty</i>';
- }
- 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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.default.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.default.php
deleted file mode 100644
index 4f1f800a..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.escape.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.escape.php
deleted file mode 100644
index dc5ebc6f..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.escape.php
+++ /dev/null
@@ -1,63 +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 'javascript':
- // escape quotes and backslashes and newlines
- return strtr($string, array('\\'=>'\\\\',"'"=>"\\'",'"'=>'\\"',"\r"=>'\\r',"\n"=>'\\n'));
-
- default:
- return $string;
- }
-}
-
-/* vim: set expandtab: */
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.htmlentities.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.htmlentities.php
deleted file mode 100644
index 72dcf7de..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.htmlentities.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-/** @package Smarty
-* @subpackage plugins */
-
-/**
- * Smarty plugin
- * -------------------------------------------------------------
- * Type: modifier
- * Name: upper
- * Purpose: convert string to uppercase
- * -------------------------------------------------------------
- */
-function smarty_modifier_htmlentities($string)
-{
- return htmlentities($string);
-}
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.indent.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.indent.php
deleted file mode 100644
index 4a8b81c7..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.lower.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.lower.php
deleted file mode 100644
index fecb7168..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.nl2br.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.nl2br.php
deleted file mode 100644
index 2a5f238b..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.rawurlencode.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.rawurlencode.php
deleted file mode 100644
index d2d5e813..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.rawurlencode.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-/** @package Smarty
-* @subpackage plugins */
-
-/**
- * Smarty plugin
- * -------------------------------------------------------------
- * Type: modifier
- * Name: rawurlencode
- * Purpose: encode string for use in PDFdefaultConverter TOC
- * -------------------------------------------------------------
- */
-function smarty_modifier_rawurlencode($string)
-{
- return rawurlencode($string);
-}
-
-?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.regex_replace.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.regex_replace.php
deleted file mode 100644
index a467dfba..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.replace.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.replace.php
deleted file mode 100644
index 590e11b4..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.spacify.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.spacify.php
deleted file mode 100644
index bcc5f941..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.string_format.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.string_format.php
deleted file mode 100644
index 49903137..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.strip.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.strip.php
deleted file mode 100644
index fc675582..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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:"&nbsp;"}
- * 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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.strip_tags.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.strip_tags.php
deleted file mode 100644
index 516a87fc..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.truncate.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.truncate.php
deleted file mode 100644
index 775a20e8..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.upper.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.upper.php
deleted file mode 100644
index 899f6bb9..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.wordwrap.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/modifier.wordwrap.php
deleted file mode 100644
index fe4407fc..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/outputfilter.trimwhitespace.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/outputfilter.trimwhitespace.php
deleted file mode 100644
index 1fa5fe17..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/shared.escape_special_chars.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/shared.escape_special_chars.php
deleted file mode 100644
index 72b8a48c..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/shared.make_timestamp.php b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/libs/plugins/shared.make_timestamp.php
deleted file mode 100644
index 25c7f5c8..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/misc/smarty_icon.README b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/misc/smarty_icon.README
deleted file mode 100644
index bea956fc..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/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/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/misc/smarty_icon.gif b/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/misc/smarty_icon.gif
deleted file mode 100644
index 5d519699..00000000
--- a/buildscripts/PhpDocumentor/phpDocumentor/Smarty-2.6.0/misc/smarty_icon.gif
+++ /dev/null
Binary files differ