Peter wrote:
On 03/09/2007 11:26 AM, Stefan Hornburg wrote:Carl Bailey wrote:We found what we believe to be a fault in the [either] coretag. We used the following code on a page: [either][cgi idxnum][or]0[/either] When the cgi value is absent this tag returns nothing -- a null string, rather than the desired '0' character. The reason for this is that the either coretag splits its body on "[or]" and interpolates each chunk in turn, removes leading andtrailing spaces from the result and returns the first "true" result. However in determining what to return, it uses the statement "return$result if $result;" Obviously when $result = '0', this fails toreturn anything.Therefore the last statement in the tag should be: return $result if $result =~ /\S/;So what if the first result is "0"? it would still return it.
I said the last statement in the tag, not the return within the loop.
And I don't think this addresses the problem that was originally stated either. return $result if $result is the right way to do it, but there needs to be a way to return the last result in the loop if all tests fail.
See above. Regards Racke -- LinuXia Systems => http://www.linuxia.de/ Expert Interchange Consulting and System Administration ICDEVGROUP => http://www.icdevgroup.org/ Interchange Development Team _______________________________________________ interchange-users mailing list suppressed http://www.icdevgroup.org/mailman/listinfo/interchange-users
Mail converted by mhonarc 2.6.15
This archive provided courtesy of JSW4.NET, Internet Hosting Services for Small Business.