2 Commits

Author SHA1 Message Date
geos_one
4c6c1cade7 New upstream version 1.3.2 2025-08-08 11:28:53 +02:00
Mario Fetka
6e2df481d7 Imported Upstream version 1.3.1 2018-03-08 14:20:46 +01:00
25 changed files with 2905 additions and 2978 deletions

View File

@@ -1,36 +0,0 @@
<?php
if (!defined('PHPUnit_MAIN_METHOD')) {
define('PHPUnit_MAIN_METHOD', 'HTML_Template_IT_AllTests::main');
}
require_once 'PHPUnit/TextUI/TestRunner.php';
require_once 'PHPUnit/Framework/TestSuite.php';
require_once 'ITTest.php';
require_once 'ITXTest.php';
class HTML_Template_IT_AllTests
{
public static function main()
{
PHPUnit_TextUI_TestRunner::run(self::suite());
}
public static function suite()
{
$suite = new PHPUnit_Framework_TestSuite('HTML_Template_IT tests');
$suite->addTestSuite('ITTest');
$suite->addTestSuite('ITXTest');
return $suite;
}
}
if (PHPUnit_MAIN_METHOD == 'HTML_Template_IT_AllTests::main') {
HTML_Template_IT_AllTests::main();
}
?>

View File

@@ -1,13 +0,0 @@
<!-- BEGIN block_one -->
{glob}:{var1}#
<!-- END block_one -->
<!-- BEGIN block_two -->
{glob}:{var2}#
<!-- END block_two -->
<!-- BEGIN block_three -->
{glob}:{var3}
<!-- BEGIN block_four -->
|{glob}:{var4}
<!-- END block_four -->
#
<!-- END block_three -->

View File

@@ -11,7 +11,7 @@
* with this package in the file LICENSE, and is available through
* the world-wide-web at
* http://www.opensource.org/licenses/bsd-license.php
* If you did not receive a copy of the new BSDlicense and are unable
* If you did not receive a copy of the new BSD license and are unable
* to obtain it through the world-wide-web, please send a note to
* pajoye@php.net so we can mail you a copy immediately.
*
@@ -23,7 +23,7 @@
* @package HTML_Template_IT
* @author Ulf Wendel <uw@netuse.de>
* @license BSD http://www.opensource.org/licenses/bsd-license.php
* @version CVS: $Id: IT.php 295605 2010-02-28 22:48:07Z gregorycu $
* @version CVS: $Id$
* @link http://pear.php.net/packages/HTML_Template_IT
* @access public
*/
@@ -48,7 +48,7 @@ define('IT_UNKNOWN_OPTION', -6);
* one you can build. template::parse() [phplib template = Isotemplate] requests
* you to name a source and a target where the current block gets parsed into.
* Source and target can be block names or even handler names. This API gives you
* a maximum of fexibility but you always have to know what you do which is
* a maximum of flexibility but you always have to know what you do which is
* quite unusual for php skripter like me.
*
* I noticed that I do not any control on which block gets parsed into which one.
@@ -278,9 +278,9 @@ class HTML_Template_IT
* should be preserved although they are empty (no placeholder replaced).
* Think of a shopping basket. If it's empty you have to drop a message to
* the user. If it's filled you have to show the contents of
* the shopping baseket. Now where do you place the message that the basket
* the shopping basket. Now where do you place the message that the basket
* is empty? It's no good idea to place it in you applications as customers
* tend to like unecessary minor text changes. Having another template file
* tend to like unnecessary minor text changes. Having another template file
* for an empty basket means that it's very likely that one fine day
* the filled and empty basket templates have different layout. I decided
* to introduce blocks that to not contain any placeholder but only
@@ -288,7 +288,7 @@ class HTML_Template_IT
*
* Now if there is no replacement done in such a block the block will
* be recognized as "empty" and by default ($removeEmptyBlocks = true) be
* stripped off. To avoid thisyou can now call touchBlock() to avoid this.
* stripped off. To avoid this you can now call touchBlock() to avoid this.
*
* The array $touchedBlocks stores a list of touched block which must not
* be removed even if they are empty.
@@ -299,14 +299,6 @@ class HTML_Template_IT
*/
var $touchedBlocks = array();
/**
* List of blocks which should not be shown even if not "empty"
* @var array $_hiddenBlocks
* @see hideBlock(), $removeEmptyBlocks
* @access private
*/
var $_hiddenBlocks = array();
/**
* Variable cache.
*
@@ -394,7 +386,7 @@ class HTML_Template_IT
);
/**
* Builds some complex regular expressions and optinally sets the
* Builds some complex regular expressions and optionally sets the
* file root directory.
*
* Make sure that you call this constructor if you derive your template
@@ -407,7 +399,7 @@ class HTML_Template_IT
* @see setRoot()
* @access public
*/
function HTML_Template_IT($root = '', $options = null)
function __construct($root = '', $options = null)
{
if (!is_null($options)) {
$this->setOptions($options);
@@ -748,7 +740,7 @@ class HTML_Template_IT
/**
* Sets a variable value.
*
* The function can be used eighter like setVariable( "varname", "value")
* The function can be used either like setVariable( "varname", "value")
* or with one array $variables["varname"] = "value"
* given setVariable($variables) quite like phplib templates set_var().
*
@@ -869,7 +861,7 @@ class HTML_Template_IT
/**
* Sets the template.
*
* You can eighter load a template file from disk with
* You can either load a template file from disk with
* LoadTemplatefile() or set the template manually using this function.
*
* @param string $template template content
@@ -1002,7 +994,7 @@ class HTML_Template_IT
} // end func getGlobalvariables
/**
* Recusively builds a list of all blocks within the template.
* Recursively builds a list of all blocks within the template.
*
* @param string $string string that gets scanned
*
@@ -1065,7 +1057,7 @@ class HTML_Template_IT
*/
function getFile($filename)
{
if ($filename{0} == '/' && substr($this->fileRoot, -1) == '/') {
if ($filename[0] == '/' && substr($this->fileRoot, -1) == '/') {
$filename = substr($filename, 1);
}
@@ -1088,9 +1080,9 @@ class HTML_Template_IT
$content = fread($fh, $fsize);
fclose($fh);
return preg_replace(
"#<!-- INCLUDE (.*) -->#ime",
"\$this->getFile('\\1')",
return preg_replace_callback(
"#<!-- INCLUDE (.*) -->#im",
function ($m) { return $this->getFile($m[1]); },
$content
);
} // end func getFile

View File

@@ -11,7 +11,7 @@
* with this package in the file LICENSE, and is available through
* the world-wide-web at
* http://www.opensource.org/licenses/bsd-license.php
* If you did not receive a copy of the new BSDlicense and are unable
* If you did not receive a copy of the new BSD license and are unable
* to obtain it through the world-wide-web, please send a note to
* pajoye@php.net so we can mail you a copy immediately.
*
@@ -23,7 +23,7 @@
* @package HTML_Template_IT
* @author Ulf Wendel <uw@netuse.de>
* @license BSD http://www.opensource.org/licenses/bsd-license.php
* @version CVS: $Id: ITX.php 295086 2010-02-15 06:31:36Z clockwerx $
* @version CVS: $Id$
* @link http://pear.php.net/packages/HTML_Template_IT
* @access public
*/
@@ -36,7 +36,7 @@ require_once 'HTML/Template/IT_Error.php';
*
* With this class you get the full power of the phplib template class.
* You may have one file with blocks in it but you have as well one main file
* and multiple files one for each block. This is quite usefull when you have
* and multiple files one for each block. This is quite useful when you have
* user configurable websites. Using blocks not in the main template allows
* you to modify some parts of your layout easily.
*
@@ -136,7 +136,7 @@ class HTML_Template_ITX extends HTML_Template_IT
* @access public
* @see HTML_Template_IT()
*/
function HTML_Template_ITX($root = '')
function __construct($root = '')
{
$this->checkblocknameRegExp = '@' . $this->blocknameRegExp . '@';
@@ -144,7 +144,7 @@ class HTML_Template_ITX extends HTML_Template_IT
$this->functionRegExp = '@' . $this->functionPrefix . '(' .
$this->functionnameRegExp . ')\s*\(@sm';
$this->HTML_Template_IT($root);
parent::__construct($root);
} // end func constructor
/**
@@ -173,7 +173,7 @@ class HTML_Template_ITX extends HTML_Template_IT
* Replaces an existing block with new content.
*
* This function will replace a block of the template and all blocks
* contained in the replaced block and add a new block insted, means
* contained in the replaced block and add a new block instead, means
* you can dynamically change your template.
*
* Note that changing the template structure violates one of the IT[X]
@@ -311,7 +311,7 @@ class HTML_Template_ITX extends HTML_Template_IT
} elseif (count($parents) > 1) {
reset($parents);
while (list($k, $parent) = each($parents)) {
foreach ($parents as $k => $parent) {
$msg .= "$parent, ";
}
$msg = substr($parent, -2);
@@ -373,7 +373,7 @@ class HTML_Template_ITX extends HTML_Template_IT
*
* @return string Name of the (first) block that contains
* the specified placeholder.
* If the placeholder was not found or an error occured
* If the placeholder was not found or an error occurred
* an empty string is returned.
* @throws IT_Error
* @access public
@@ -397,7 +397,7 @@ class HTML_Template_ITX extends HTML_Template_IT
if (is_array($variables = $this->blockvariables[$block])) {
// search the value in the list of blockvariables
reset($variables);
while (list($k, $variable) = each($variables)) {
foreach ($variables as $k => $variable) {
if ($k == $placeholder) {
$found = $block;
break;
@@ -409,7 +409,7 @@ class HTML_Template_ITX extends HTML_Template_IT
// search all blocks and return the name of the first block that
// contains the placeholder
reset($this->blockvariables);
while (list($blockname, $variables) = each($this->blockvariables)) {
foreach ($this->blockvariables as $blockname => $variables) {
if (is_array($variables) && isset($variables[$placeholder])) {
$found = $blockname;
break;
@@ -430,7 +430,7 @@ class HTML_Template_ITX extends HTML_Template_IT
function performCallback()
{
reset($this->functions);
while (list($func_id, $function) = each($this->functions)) {
foreach ($this->functions as $func_id => $function) {
if (isset($this->callback[$function['name']])) {
if ($this->callback[$function['name']]['expandParameters']) {
$callFunction = 'call_user_func_array';
@@ -493,7 +493,7 @@ class HTML_Template_ITX extends HTML_Template_IT
*
* This is an absolutely evil feature. If your application makes heavy
* use of such callbacks and you're even implementing if-then etc. on
* the level of a template engine you're reiventing the wheel... - that's
* the level of a template engine you're reinventing the wheel... - that's
* actually how PHP came into life. Anyway, sometimes it's handy.
*
* Consider also using XML/XSLT or native PHP. And please do not push
@@ -528,7 +528,7 @@ class HTML_Template_ITX extends HTML_Template_IT
* @return boolean False on failure.
* @throws IT_Error
* @access public
* @deprecated The $callbackobject parameter is depricated since
* @deprecated The $callbackobject parameter is deprecated since
* version 1.2 and might be dropped in further versions.
*/
function setCallbackFunction($tplfunction, $callbackfunction,
@@ -536,7 +536,7 @@ class HTML_Template_ITX extends HTML_Template_IT
$expandCallbackParameters = false) {
if ($tplfunction == '' || $callbackfunction == '') {
return new IT_Error("No template function "."('$tplfunction')".
" and/or no callback function ('$callback') given.",
" and/or no callback function ('$callbackfunction') given.",
__FILE__, __LINE__);
}
$this->callback[$tplfunction] = array(
@@ -567,7 +567,7 @@ class HTML_Template_ITX extends HTML_Template_IT
} // end func setCallbackFunctiontable
/**
* Recursively removes all data assiciated with a block, including
* Recursively removes all data associated with a block, including
* all inner blocks
*
* @param string $block block to be removed
@@ -610,7 +610,7 @@ class HTML_Template_ITX extends HTML_Template_IT
} // end func getBlocklist
/**
* Checks wheter a block exists.
* Checks whether a block exists.
*
* @param string $blockname Blockname
*
@@ -647,7 +647,7 @@ class HTML_Template_ITX extends HTML_Template_IT
} // end func getBlockvariables
/**
* Checks wheter a block variable exists.
* Checks whether a block variable exists.
*
* @param string $block Blockname
* @param string $variable Variablename
@@ -696,7 +696,7 @@ class HTML_Template_ITX extends HTML_Template_IT
while ($head != '' && $args2 = $this->getValue($head, ',')) {
$arg2 = trim($args2);
$args[] = ('"' == $arg2{0} || "'" == $arg2{0}) ?
$args[] = ('"' == $arg2[0] || "'" == $arg2[0]) ?
substr($arg2, 1, -1) : $arg2;
if ($arg2 == $head) {
@@ -712,7 +712,7 @@ class HTML_Template_ITX extends HTML_Template_IT
} // end func buildFunctionlist
/**
* Truncates the given code from the first occurence of
* Truncates the given code from the first occurrence of
* $delimiter but ignores $delimiter enclosed by " or '.
*
* @param string $code The code which should be parsed
@@ -782,7 +782,7 @@ class HTML_Template_ITX extends HTML_Template_IT
}
reset($this->blockvariables[$block]);
while (list($varname, $val) = each($this->blockvariables[$block])) {
foreach ($this->blockvariables[$block] as $varname => $val) {
if (isset($variables[$varname])) {
unset($this->blockvariables[$block][$varname]);
}
@@ -840,10 +840,10 @@ class HTML_Template_ITX extends HTML_Template_IT
{
$parents = array();
reset($this->blocklist);
while (list($blockname, $content) = each($this->blocklist)) {
foreach ($this->blocklist as $blockname => $content) {
reset($this->blockvariables[$blockname]);
while (list($varname, $val) = each($this->blockvariables[$blockname])) {
foreach ($this->blockvariables[$blockname] as $varname => $val) {
if ($variable == $varname) {
$parents[] = $blockname;
}
@@ -858,8 +858,8 @@ class HTML_Template_ITX extends HTML_Template_IT
* calls die() depending on the flags
*
* @param string $message Warning
* @param string $file File where the warning occured
* @param int $line Linenumber where the warning occured
* @param string $file File where the warning occurred
* @param int $line Linenumber where the warning occurred
*
* @see $warn, $printWarning, $haltOnWarning
* @access private

View File

@@ -11,7 +11,7 @@
* with this package in the file LICENSE, and is available through
* the world-wide-web at
* http://www.opensource.org/licenses/bsd-license.php
* If you did not receive a copy of the new BSDlicense and are unable
* If you did not receive a copy of the new BSD license and are unable
* to obtain it through the world-wide-web, please send a note to
* pajoye@php.net so we can mail you a copy immediately.
*
@@ -23,7 +23,7 @@
* @package HTML_Template_IT
* @author Ulf Wendel <uw@netuse.de>
* @license BSD http://www.opensource.org/licenses/bsd-license.php
* @version CVS: $Id: IT_Error.php 295117 2010-02-15 23:25:21Z clockwerx $
* @version CVS: $Id$
* @link http://pear.php.net/packages/HTML_Template_IT
* @access public
*/
@@ -53,10 +53,10 @@ class IT_Error extends PEAR_Error
* Creates an cache error object.
*
* @param string $msg error message
* @param string $file file where the error occured
* @param string $line linenumber where the error occured
* @param string $file file where the error occurred
* @param string $line linenumber where the error occurred
*/
function IT_Error($msg, $file = __FILE__, $line = __LINE__)
function __construct($msg, $file = __FILE__, $line = __LINE__)
{
$this->PEAR_Error(sprintf("%s [%s on line %d].", $msg, $file, $line));
} // end func IT_Error

View File

@@ -3,9 +3,13 @@
/**
* An example for the usage of ITX::addBlockfile
*
* @version CVS: $Id: sample_itx_addblockfile.php 216180 2006-07-11 21:56:05Z dsp $
* @version CVS: $Id$
*/
// Show all errors and warnings
error_reporting(E_ALL);
ini_set('display_errors', 1);
require_once 'HTML/Template/ITX.php';
$data = array (array ('packagename'=>'mypackage',

View File

@@ -1,8 +1,15 @@
<?php
require_once 'HTML/Template/IT.php';
require_once 'PHPUnit/Framework/TestCase.php';
class ITTest extends PHPUnit_Framework_TestCase
// As we want to run on PHP < 7.1,
// we can't use return type declaration in fixtures.
// Therefore we use PHPUnitPolyFills snakecase fixtures set_up/tear_down
// instead of setUp/tearDown.
// See https://github.com/Yoast/PHPUnit-Polyfills?tab=readme-ov-file#option-1-yoastphpunitpolyfillstestcasestestcase
use Yoast\PHPUnitPolyfills\TestCases\TestCase;
require_once 'HTML/Template/IT.php';
class ITTest extends Yoast\PHPUnitPolyfills\TestCases\TestCase
{
/**
* An HTML_Template_IT object
@@ -10,12 +17,12 @@ class ITTest extends PHPUnit_Framework_TestCase
*/
var $tpl;
function setUp()
protected function set_up()
{
$this->tpl = new HTML_Template_IT(dirname(__FILE__) . '/templates');
}
function tearDown()
protected function tear_down()
{
unset($this->tpl);
}
@@ -173,56 +180,6 @@ class ITTest extends PHPUnit_Framework_TestCase
// Not available in stock class
/**
*
*/
/*
function testHideBlock()
{
if (!$this->_methodExists('hideBlock')) {
return;
}
$result = $this->tpl->loadTemplateFile('blockiteration.html', false, true);
if (PEAR::isError($result)) {
$this->assertTrue(false, 'Error loading template file: '. $result->getMessage());
}
$this->tpl->setVariable(array(
'outer' => 'data',
'inner' => 'stuff'
));
// inner_block is not empty, but should be removed nonetheless
$this->tpl->hideBlock('inner_block');
$this->assertEquals('data#', $this->_stripWhitespace($this->tpl->get()));
}
*/
/**
*
*/
/*
function testSetGlobalVariable()
{
if (!$this->_methodExists('setGlobalVariable')) {
return;
}
$result = $this->tpl->loadTemplateFile('globals.html', false, true);
if (PEAR::isError($result)) {
$this->assertTrue(false, 'Error loading template file: '. $result->getMessage());
}
$this->tpl->setGlobalVariable('glob', 'glob');
// {var2} is not, block_two should be removed
$this->tpl->setVariable(array(
'var1' => 'one',
'var3' => 'three'
));
for ($i = 0; $i < 3; $i++) {
$this->tpl->setVariable('var4', $i + 1);
$this->tpl->parse('block_four');
} // for
$this->assertEquals('glob:one#glob:three|glob:1|glob:2|glob:3#', $this->_stripWhitespace($this->tpl->get()));
}
*/
/**
* Test for bug #9501. preg_replace treat $<NUM> and \<NUM> as
* backreferences. IT escapes them.

View File

@@ -1,6 +1,5 @@
<?php
require_once 'HTML/Template/ITX.php';
require_once 'PHPUnit/Framework/TestCase.php';
require_once 'ITTest.php';
@@ -11,12 +10,12 @@ function _uppercaseCallback($ary)
class Callbacks
{
function _lowercaseCallback($ary)
static function _lowercaseCallback($ary)
{
return strtolower($ary[0]);
}
function _numberFormatCallback($float, $decimals)
static function _numberFormatCallback($float, $decimals)
{
return number_format($float, $decimals);
}
@@ -24,7 +23,7 @@ class Callbacks
class ITXTest extends ITTest
{
function setUp()
function set_up()
{
$this->tpl = new HTML_Template_ITX(dirname(__FILE__) . '/templates');
}

6
package.sig Normal file
View File

@@ -0,0 +1,6 @@
-----BEGIN PGP SIGNATURE-----
iF0EABECAB0WIQQQ9oz3P4qkJvYXdSlyoyG6wkXxdQUCZ0NbqAAKCRByoyG6wkXx
dVaEAKDCvxZ1ZQmbPgqRjUAkC72ylQzpOwCeO5mQBEJ3+ziJdLnBvRv7trd0l68=
=9MLm
-----END PGP SIGNATURE-----

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<package packagerversion="1.9.0" version="2.0" xmlns="http://pear.php.net/dtd/package-2.0" xmlns:tasks="http://pear.php.net/dtd/tasks-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://pear.php.net/dtd/tasks-1.0 http://pear.php.net/dtd/tasks-1.0.xsd http://pear.php.net/dtd/package-2.0 http://pear.php.net/dtd/package-2.0.xsd">
<package packagerversion="1.10.13" version="2.0" xmlns="http://pear.php.net/dtd/package-2.0" xmlns:tasks="http://pear.php.net/dtd/tasks-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://pear.php.net/dtd/tasks-1.0 http://pear.php.net/dtd/tasks-1.0.xsd http://pear.php.net/dtd/package-2.0 http://pear.php.net/dtd/package-2.0.xsd">
<name>HTML_Template_IT</name>
<channel>pear.php.net</channel>
<summary>Integrated Templates</summary>
@@ -10,7 +10,7 @@ There are two classes to use for templating. HTML_Template_IT is used for basic
<name>Gregory Currie</name>
<user>gregorycu</user>
<email>gregorycu@php.net</email>
<active>yes</active>
<active>no</active>
</lead>
<lead>
<name>Pierre-Alain Joye</name>
@@ -36,61 +36,46 @@ There are two classes to use for templating. HTML_Template_IT is used for basic
<email>ulf.wendel@phpdoc.de</email>
<active>no</active>
</developer>
<date>2010-03-10</date>
<time>19:08:10</time>
<date>2024-11-24</date>
<time>16:59:33</time>
<version>
<release>1.3.0</release>
<release>1.3.2</release>
<api>1.3.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license>Modified BSD license</license>
<license>BSD-3-Clause</license>
<notes>
Changes since last stable release (1.2.1):
- Add support for pear package 2.0 format
- Remove support for pear package 1.0 format
- Fix bug #9501, doller signs disapear if preg_match is used.
- Fix bug #9783, don&apos;t remove variable which values follow the variable pattern
To allow backwards compatbility an option preserve_input is added.
If it is false, the old behaviour will be used and therefore those values will be deleted.
Default is true, so new behaviour.
- Fix bug #9853, problems with dots in placeholders or blocknames
- Fix bug #13935, docblock is wrong
- Fix bug #17129
- Add option &apos;preserve_input&apos; to only remove unkown variable that were present
during setTemplate or loadTemplatefile
which is the behaviour before 1.3.0a1
- Improved PHPCS (Request #15039)
- Added unit tests
- Fixed unit tests
- PR # 5: Support for PHP 7.2
- PR # 9: Remove unused code
- PR #11: fix: Array and string offset access syntax with curly braces is no longer supported
- PR #12: Remove PHP under 5.6 and add last versions of PHP 7
</notes>
<contents>
<dir name="/">
<file md5sum="157f1b27090288fbce921b762697c3f4" name="examples/sample_it.php" role="doc" />
<file md5sum="1d2363fa8640780392af6c51e9c3713f" name="examples/sample_itx_addblockfile.php" role="doc" />
<file md5sum="43a3535aa4d5e9df400babae53d82a08" name="examples/templates/addblockfile_list.tpl.htm" role="doc" />
<file md5sum="16f4927420fa169875167a4874e7add7" name="examples/templates/addblockfile_main.tpl.htm" role="doc" />
<file md5sum="2c851fcec88007eef66c28a9d8f10ceb" name="examples/templates/main.tpl.htm" role="doc" />
<file md5sum="886a6044e8186e3b1e1d8c5b004246af" name="HTML/Template/IT.php" role="php" />
<file md5sum="16b0300b5fbe3be7a1df976ce5d27c4f" name="HTML/Template/ITX.php" role="php" />
<file md5sum="484d2aa6a504a351a1d3e2b8bb39612d" name="HTML/Template/IT_Error.php" role="php" />
<file md5sum="e576a94c06b323e4cfc6bcf9dda017c2" name="tests/AllTests.php" role="test" />
<file md5sum="adabbbb8cf54dc80720b7929e594cbec" name="tests/ITTest.php" role="test" />
<file md5sum="80139a8b443488dac801fae748b6f2c2" name="tests/ITXTest.php" role="test" />
<file md5sum="e50de49b74a1d96bb77ddae2d0abdfc3" name="tests/templates/addblock.html" role="test" />
<file md5sum="22e56437378e53d08ba07d3dd2aa4b85" name="tests/templates/blockiteration.html" role="test" />
<file md5sum="4173bf97eec43787532e247ef9b2611a" name="tests/templates/blocks.html" role="test" />
<file md5sum="ba285cf25750a900690f2388ee31a103" name="examples/sample_it.php" role="doc" />
<file md5sum="8da7b1692566f5f67b7070402cb949dc" name="examples/sample_itx_addblockfile.php" role="doc" />
<file md5sum="342278cc5fe8ca6c66591cd5ee389402" name="examples/templates/addblockfile_list.tpl.htm" role="doc" />
<file md5sum="697f694a67db6b96d247a24bdfd44f9b" name="examples/templates/addblockfile_main.tpl.htm" role="doc" />
<file md5sum="834e1e6d40b2f34906aa17f9969bd891" name="examples/templates/main.tpl.htm" role="doc" />
<file md5sum="531abbcc1ca42d2bd330b7f82851a06f" name="HTML/Template/IT.php" role="php" />
<file md5sum="aa98c643aac5305b888851bdb7bf494d" name="HTML/Template/ITX.php" role="php" />
<file md5sum="806ee7726ac7fdf74ce13a610fb30ddc" name="HTML/Template/IT_Error.php" role="php" />
<file md5sum="304e1a435c31469840de4dc77dfaa2d5" name="tests/ITTest.php" role="test" />
<file md5sum="0f23dcc3d5992a01f50c75e05c70080a" name="tests/ITXTest.php" role="test" />
<file md5sum="bca97392b741f553d10203f04549a423" name="tests/templates/addblock.html" role="test" />
<file md5sum="d4e1caf0b07b85e49e0e82ab83e91ed3" name="tests/templates/blockiteration.html" role="test" />
<file md5sum="aa11dc0ba8c94c71f0ed6e448770f913" name="tests/templates/blocks.html" role="test" />
<file md5sum="7014497a69b346957fb3d2b5fa44ffd4" name="tests/templates/bug_9853_01.tpl" role="test" />
<file md5sum="385013ff6be875da2888087e96c6a93c" name="tests/templates/bug_9853_02.tpl" role="test" />
<file md5sum="2611d6ec574a65716f1bc2ca95cb8c63" name="tests/templates/globals.html" role="test" />
<file md5sum="db5b226eff0218c831749c07042529f2" name="tests/templates/include.html" role="test" />
<file md5sum="d9a6425eebdfc6981465b4a228dbee51" name="tests/templates/loadtemplatefile.html" role="test" />
<file md5sum="8ac12c5d1c85787dd44ed5c93a392dfe" name="tests/templates/include.html" role="test" />
<file md5sum="bd4c99366021b8bd88ba220ec829eae5" name="tests/templates/loadtemplatefile.html" role="test" />
<file md5sum="8747e8c70d20b6c86d1d19af2eadd874" name="tests/templates/placeholderreplacementscope.html" role="test" />
<file md5sum="5c7e2e9c32306db4b6667d2b57f1c0ac" name="tests/templates/replaceblock.html" role="test" />
<file md5sum="310552db4653b34dbb0f993847572fc5" name="tests/templates/__include.html" role="test" />
<file md5sum="7073f9a84fa6da71e7a505a777dda302" name="LICENSE" role="doc" />
<file md5sum="a3d70ab52bdb9f3c14702879865a55d6" name="tests/templates/replaceblock.html" role="test" />
<file md5sum="fb1681e6ffa470d92859fac3496b960e" name="tests/templates/__include.html" role="test" />
<file md5sum="f8790e48b597dff12a643e08e9be3fab" name="LICENSE" role="doc" />
</dir>
</contents>
<dependencies>
@@ -331,5 +316,38 @@ Changes since last stable release (1.2.1):
- Fixed unit tests
</notes>
</release>
<release>
<version>
<release>1.3.1</release>
<api>1.3.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2018-01-22</date>
<license>BSD-3-Clause</license>
<notes>
- PR #2: Fixes for deprecated code
</notes>
</release>
<release>
<version>
<release>1.3.2</release>
<api>1.3.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2024-11-24</date>
<license>BSD-3-Clause</license>
<notes>
- PR #5: Support for PHP 7.2
- PR #9: Remove unused code
- PR #11: fix: Array and string offset access syntax with curly braces is no longer supported
- PR #12: Remove PHP under 5.6 and add last versions of PHP 7
</notes>
</release>
</changelog>
</package>