pricecharts

track prices of consumer electronics
Log | Files | Refs | README

commit 0e8013d05cdb015a1efed3c1f2225923557100f7
parent a874a420edcdb33dbfb038c9649a434dc853bb35
Author: Kyle Milz <kyle@getaddrinfo.net>
Date:   Wed, 25 Mar 2015 00:18:53 -0600

tt: add perl code to templates for misc tasks

Diffstat:
Mpricechart.css | 4++--
Mtt/chart_list.tt | 23+++++++++++++++++------
Mtt/link_list.tt | 18++++++++++++++----
Mtt/product.tt | 37+++++++++++++++++++++++++++++++------
4 files changed, 64 insertions(+), 18 deletions(-)

diff --git a/pricechart.css b/pricechart.css @@ -53,8 +53,8 @@ p { } .logo_small { - height: 2em; + height: 1em; float: left; /* some logos fit their exact dimensions, avoid awkward spacing */ - margin-right: 20px; + margin-right: 10px; } diff --git a/tt/chart_list.tt b/tt/chart_list.tt @@ -1,13 +1,24 @@ [% WRAPPER wrapper.tt %] +[% PERL %] + my $name_lc = lc($stash->get("name")); + $stash->set("name_lc", $name_lc); +[% END %] <h1><img alt="[% name %]" class="logo" src="/logo/[% name_lc %].svg"></img> - ([% num_products %] total)</h1> - [% FOREACH part IN products.keys.sort %] + ([% num %] total)</h1> + [% FOREACH product IN products %] + [% PERL %] + my $part_num = $stash->get("product.0"); + $stash->set("part_lc", lc($part_num)); + my $manufacturer = $stash->get("product.1"); + $stash->set("manufacturer_lc", lc($manufacturer)); + [% END %] <hr> <div class="product"> - <img alt="[% products.$part.manufacturer %]" class="logo_small" - src="/logo/[% products.$part.manufacturer_lc %].svg"></img> - [% products.$part.description %] ([% part %])<br> - <object data="/svg/[% part %].svg" type="image/svg+xml"> + <img alt="[% product.1 %]" class="logo_small" + src="/logo/[% manufacturer_lc %].svg"></img> + [% product.2 %] + <a href="/products/[% part_lc %].html">([% product.0 %])</a><br> + <object data="/svg/[% product.0 %].svg" type="image/svg+xml"> </object> </div> [% END %] diff --git a/tt/link_list.tt b/tt/link_list.tt @@ -1,11 +1,21 @@ [% WRAPPER wrapper.tt %] +[% PERL %] + # all url references are lower case + my $dir_prefix = lc($stash->get("name")); + $stash->set("dir_prefix", $dir_prefix); +[% END %] <div class="column"> <h1>[% name %] List ([% num %])</h1> <ul> - [% FOREACH manufacturer IN manufacturers %] - <li><a href="/[% dir_prefix %]/[% manufacturer.0 %].html"> - <img alt="[% manufacturer.1 %]" class="logo" - src="/logo/[% manufacturer.0 %].svg"> + [% FOREACH link IN links %] + [% PERL %] + # all url references are lower case + my $link_lc = lc $stash->get("link"); + $stash->set("link_lc", $link_lc); + [% END %] + <li><a href="/[% dir_prefix %]/[% link_lc %].html"> + <img alt="[% link %]" class="logo" + src="/logo/[% link_lc %].svg"> </img> </a> [% END %] diff --git a/tt/product.tt b/tt/product.tt @@ -1,11 +1,36 @@ [% WRAPPER wrapper.tt %] - <h1>[% part_num %]</h1> +[% PERL %] + my $manuf = $stash->get("manufacturer"); + $stash->set("manufacturer_lc", lc($manuf)); + + my $time_str = scalar localtime($stash->get('first_seen')); + $stash->set("first_seen_proc", $time_str); + $time_str = scalar localtime($stash->get('last_seen')); + $stash->set("last_seen_proc", $time_str); +[% END %] + <h1><a href="/manufacturers/[% manufacturer_lc %].html"> + <img class="logo_small" alt="[% manufacturer %]" + src="/logo/[% manufacturer_lc %].svg"></img></a> + [% part_num %]</h1> <div class="product"> - Manufacturer: [% manufacturer %]<br> - Description: [% description %]<br> - First Seen: [% first_seen %]<br> - Last Seen: [% last_seen %]<br> - Type: [% type %]<br> + <table> + <tr><td>Manufacturer:</td><td>[% manufacturer %]</td></tr> + + <tr><td>Description(s):</td> + <td><ul> + [% FOREACH description IN descriptions %] + <li>[% description.1 %]: [% description.0 %] + [% END %] + </ul></td></tr> + + <tr><td>Type:</td><td>[% type %]</td></tr> + + <tr><td>First Seen:</td> + <td>[% first_seen_proc %]</td></tr> + + <tr><td>Last Seen:</td> + <td>[% last_seen_proc %]</td></tr> + </table> <object data="/svg/[% part_num %].svg" type="image/svg+xml"> </object> </div>