Implement 'div by'.

This commit is contained in:
andrey
2001-01-16 15:50:30 +00:00
parent 41a2bcebf6
commit f2482645e0
4 changed files with 20 additions and 10 deletions

View File

@@ -710,9 +710,14 @@ class Smarty
$expr = "($is_arg % 2)"; $expr = "($is_arg % 2)";
break; break;
case 'mod': case 'div':
$expr_arg = $tokens[$expr_end++]; if ($tokens[$expr_end] == 'by') {
$expr = "!($is_arg % $expr_arg)"; $expr_end++;
$expr_arg = $tokens[$expr_end++];
$expr = "!($is_arg % $expr_arg)";
} else {
/* TODO syntax error: expecting 'by' */
}
break; break;
default: default:

View File

@@ -11,9 +11,9 @@ hello, my name is {$Name|upper}
My interests are: My interests are:
{section name=outer loop=$FirstName} {section name=outer loop=$FirstName}
{if %outer.index% is odd by 2} {if %outer.index% is odd by 2}
. {$outer/FirstName} {$outer/LastName} {%outer.rownum%} . {$outer/FirstName} {$outer/LastName}
{else} {else}
* {$outer/FirstName} {$outer/LastName} {%outer.rownum%} * {$outer/FirstName} {$outer/LastName}
{/if} {/if}
{sectionelse} {sectionelse}
none none

View File

@@ -710,9 +710,14 @@ class Smarty
$expr = "($is_arg % 2)"; $expr = "($is_arg % 2)";
break; break;
case 'mod': case 'div':
$expr_arg = $tokens[$expr_end++]; if ($tokens[$expr_end] == 'by') {
$expr = "!($is_arg % $expr_arg)"; $expr_end++;
$expr_arg = $tokens[$expr_end++];
$expr = "!($is_arg % $expr_arg)";
} else {
/* TODO syntax error: expecting 'by' */
}
break; break;
default: default:

View File

@@ -11,9 +11,9 @@ hello, my name is {$Name|upper}
My interests are: My interests are:
{section name=outer loop=$FirstName} {section name=outer loop=$FirstName}
{if %outer.index% is odd by 2} {if %outer.index% is odd by 2}
. {$outer/FirstName} {$outer/LastName} {%outer.rownum%} . {$outer/FirstName} {$outer/LastName}
{else} {else}
* {$outer/FirstName} {$outer/LastName} {%outer.rownum%} * {$outer/FirstName} {$outer/LastName}
{/if} {/if}
{sectionelse} {sectionelse}
none none