Skip Menu |

This queue is for tickets about the HTML-Template-Pro CPAN distribution.

Report information
The Basics
Id: 38486
Status: resolved
Priority: 0/
Queue: HTML-Template-Pro

People
Owner: vlasenko [...] imath.kiev.ua
Requestors: michael.ak.smith [...] jpmchase.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: Bug in HTML::Template::Pro v 0.70
Date: Thu, 14 Aug 2008 18:01:39 +0100
To: bug-HTML-Template-Pro [...] rt.cpan.org
From: michael.ak.smith [...] jpmchase.com
The offending code is: <TMPL_LOOP NAME="PROCEDURE_TYPE_LOOP"> <OPTION VALUE="<TMPL_VAR NAME="DID">" <TMPL_VAR NAME="Dropdown"> Show quoted text
><TMPL_VAR NAME="Value">
</TMPL_LOOP> Now , when executed the first time, in a loop, it does not work (The loop never runs, all I see is an empty select statement). When executed the second time, outside of the loop, it does work. When this same template is run under HTML::Template, it works as expected. I think it is something to do with a nested loop not being passed as part of the data of the outer loop, but rather being provided out of band Ie, I pass the loops as two seperate $tmpl->param() statements, versus a single statement containing the nested data I hope this is enough Mike <TMPL_LOOP NAME="PROCEDURE_LOOP"> <SELECT NAME="Type"> <TMPL_LOOP NAME="PROCEDURE_TYPE_LOOP"> <OPTION VALUE="<TMPL_VAR NAME="DID">" <TMPL_VAR NAME="Dropdown"> Show quoted text
><TMPL_VAR NAME="Value">
</TMPL_LOOP> </SELECT> </TMPL_LOOP> <SELECT NAME="Type"> <TMPL_LOOP NAME="PROCEDURE_TYPE_LOOP"> <OPTION VALUE="<TMPL_VAR NAME="DID">" <TMPL_VAR NAME="Dropdown"> Show quoted text
><TMPL_VAR NAME="Value">
</TMPL_LOOP> </SELECT> Regards Michael Smith EMEA DBA team supporting Equities, E&H... Desk AH2/WV09 JPM/Chase, 45 Waterloo Street Glasgow G2 6HS E-Mail: Michael.AK.Smith@jpmchase.com Direct +44 (0141) 228 0447 GDP: 228-0447 ----------------------------------------- This communication is for informational purposes only. It is not intended as an offer or solicitation for the purchase or sale of any financial instrument or as an official confirmation of any transaction. All market prices, data and other information are not warranted as to completeness or accuracy and are subject to change without notice. Any comments or statements made herein do not necessarily reflect those of JPMorgan Chase & Co., its subsidiaries and affiliates. This transmission may contain information that is privileged, confidential, legally privileged, and/or exempt from disclosure under applicable law. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution, or use of the information contained herein (including any reliance thereon) is STRICTLY PROHIBITED. Although this transmission and any attachments are believed to be free of any virus or other defect that might affect any computer system into which it is received and opened, it is the responsibility of the recipient to ensure that it is virus free and no responsibility is accepted by JPMorgan Chase & Co., its subsidiaries and affiliates, as applicable, for any loss or damage arising in any way from its use. If you received this transmission in error, please immediately contact the sender and destroy the material in its entirety, whether in electronic or hard copy format. Thank you. Please refer to http://www.jpmorgan.com/pages/disclosures for disclosures relating to UK legal entities.
Dear Michael, I am sorry, but it is hard to understand where the bug is to be able to reproduce the bug. It may be so I lack telepathy skills :( Could you provide a little test code that sets variables, the actual result and the expected result. It will help a lot.
Subject: Re: [rt.cpan.org #38486] Bug in HTML::Template::Pro v 0.70
Date: Fri, 15 Aug 2008 10:00:31 +0100
To: bug-HTML-Template-Pro [...] rt.cpan.org
From: michael.ak.smith [...] jpmchase.com
A simplification use HTML::Template::Pro; my $tmpl= HTML::Template::Pro->new(filename => 'test.tmpl',loop_context_vars=>1,debug=>1,global_vars=>1,die_on _bad_params=>0); my @outer=({TEST=>'1'},{TEST=>'2'},{TEST=>'3'}); my @inner=({TST=>'A'},{TST=>'B'}); $tmpl->param(OUTER=>\@outer); $tmpl->param(INNER=>\@inner); print $tmpl->output; And the template Inside a Loop <TMPL_LOOP NAME="OUTER"> <TMPL_VAR NAME="TEST"> <TMPL_LOOP NAME="INNER"> <TMPL_VAR NAME="TST"> </TMPL_LOOP> </TMPL_LOOP> Outide a Loop <TMPL_LOOP NAME="INNER"> <TMPL_VAR NAME="TST"> </TMPL_LOOP> Running this loop with HTML::Template::Pro gives the following Inside a Loop 1 2 3 Outide a Loop A B Running this loop with HTML::Template gives the following Inside a Loop 1 A B 2 A B 3 A B Outide a Loop A B I hope this explains it better Tx Mike Regards Michael Smith EMEA DBA team supporting Equities, E&H... Desk AH2/WV09 JPM/Chase, 45 Waterloo Street Glasgow G2 6HS E-Mail: Michael.AK.Smith@jpmchase.com Direct +44 (0141) 228 0447 GDP: 228-0447 "Igor Yu. Vlasenko via RT" <bug-HTML-Template-Pro@rt.cpan.org> 15/08/2008 08:57 Please respond to bug-HTML-Template-Pro@rt.cpan.org To michael.ak.smith@jpmchase.com cc Subject [rt.cpan.org #38486] Bug in HTML::Template::Pro v 0.70 <URL: http://rt.cpan.org/Ticket/Display.html?id=38486 > Dear Michael, I am sorry, but it is hard to understand where the bug is to be able to reproduce the bug. It may be so I lack telepathy skills :( Could you provide a little test code that sets variables, the actual result and the expected result. It will help a lot. ----------------------------------------- This communication is for informational purposes only. It is not intended as an offer or solicitation for the purchase or sale of any financial instrument or as an official confirmation of any transaction. All market prices, data and other information are not warranted as to completeness or accuracy and are subject to change without notice. Any comments or statements made herein do not necessarily reflect those of JPMorgan Chase & Co., its subsidiaries and affiliates. This transmission may contain information that is privileged, confidential, legally privileged, and/or exempt from disclosure under applicable law. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution, or use of the information contained herein (including any reliance thereon) is STRICTLY PROHIBITED. Although this transmission and any attachments are believed to be free of any virus or other defect that might affect any computer system into which it is received and opened, it is the responsibility of the recipient to ensure that it is virus free and no responsibility is accepted by JPMorgan Chase & Co., its subsidiaries and affiliates, as applicable, for any loss or damage arising in any way from its use. If you received this transmission in error, please immediately contact the sender and destroy the material in its entirety, whether in electronic or hard copy format. Thank you. Please refer to http://www.jpmorgan.com/pages/disclosures for disclosures relating to UK legal entities.
Птн. Авг. 15 05:01:38 2008, michael.ak.smith@jpmchase.com писал: Show quoted text
> A simplification
thanks :)
As a workaround, consider using solid tree of arguments OUTERLOOPNAME => { INNERLOOPNAME => {
fixed in 0.75