Parser Function Errors...
I didn't see a bug report on this, even though you know about these bugs, but I thought I would write this report anyways...
Create a template called "test" with the following:
Code:
"[if={{{1}}}==0]zeroed[else /][if={{{1}}}>0]greater[else /][if={{{1}}}<0]lesser[else /]word[/if][/if][/if]" ({{{1}}})
Then in an article call in the template...
Code:
[template]test|3[/template]
[template]test|-3[/template]
[template]test|0[/template]
[template]test|WORD[/template]
This will output the following:
PHP Code:
"greater" (3)
"lesser" (-3)
"lesser" ()
"greater" (WORD)
It SHOULD output:
PHP Code:
"greater" (3)
"lesser" (-3)
"zeroed" (0)
"word" (WORD)
As you can see, it reads a zero as less than 0, and fails to output the value at the end. This is because instead of the 0 being read as a "0", its being read as a nulled false value.
As you can also see, it reads a word as being greater than 0. It should be reading a word character as a non-number and fail all three conditionals and return the final else.