Re: [htmltmpl] Numeric loops
Brought to you by:
samtregar
From: Mathew R. <mat...@ne...> - 2007-04-30 00:40:16
|
> > Is there a way to loop from a lower integer to an higher one? For > example, > say an article has a rating of 4. I'd like to loop from 1 to 4 and > print a > star at each iteration. The only way I can see of doing this is > create an > array ref in the perl coder and pass that to the template, which > seems a lot > of pointless effort > > > I've been trying to think of a way to do that with CSS, since > currently I'd like to indent things based on a "level" variable passed > through the template (and to complicate things, I'd like to max out at > a certain point to avoid right-margin squish, considering that in a > couple of cases the threads nest over two hundred levels deep). > > With (one assumes) a rating system with its own ceiling, though, you > could go with img src="blahblah/star<TMPL_VAR name="rating">.gif" or > what have you, and just have a set of graphics with star1.gif having > one star, star2.gif having two stars, and so forth. > If you just want to print 4 stars, then just do that. * * * * If you are looking for some indentation background, you could try something like the following on a div: style="background:url('star.gif') right repeat-y;" If you are looking for something like <TMPL_FOR 1..4> then you probably need to re-evaluate why you need it - maybe you need to re-think your original problem. That said, there have been previous discussions on whether the TMPL_xxx syntax should support user-defined extensions, and various people have their own hacks to allow such a feature (which would then allow you to build your TMPL_FOR). What is the problem you are trying to solve? Someone here might have solved it already... Mathew |