[perl arg=scratch] $start = tag_data('session', 'arg') || 1; $chunk = 1; if($start =~ /^(\w+):(\w)?:(\d+):(\d*)/) { $category = $1; $letter = $2; $start = $3; $chunk = $4 || 1; } $Safe{'scratch'}{'category'} = $category; $Safe{'scratch'}{'letter'} = $letter; $Safe{'scratch'}{'start'} = $start; $Safe{'scratch'}{'chunk'} = $chunk; $Safe{'scratch'}{'total'} = 0; return ''; [/perl] [sql type=list query="select COUNT(*) as total from plant as p left join category as c on c.category_id=p.category_id where c.category_name='[scratch category]' and p.sci_name like '[scratch letter]%'"] [set name="total" interpolate=1][sql-param total][/set] [/sql] [perl scratch] $Safe{'scratch'}{'prev'} = $Safe{'scratch'}{'start'} - $Safe{'scratch'}{'chunk'}; if ($Safe{'scratch'}{'start'} + $Safe{'scratch'}{'chunk'} >= $Safe{'scratch'}{'total'}) { $Safe{'scratch'}{'next'} = -1; } else { $Safe{'scratch'}{'next'} = $Safe{'scratch'}{'start'} + $Safe{'scratch'}{'chunk'}; } $Safe{'scratch'}{'nextURL'} = "$Safe{'scratch'}{'category'}:$Safe{'scratch'}{'letter'}:$Safe{'scratch'}{'next'}:$Safe{'scratch'}{'chunk'}"; $Safe{'scratch'}{'previousURL'} = "$Safe{'scratch'}{'category'}:$Safe{'scratch'}{'letter'}:$Safe{'scratch'}{'prev'}:$Safe{'scratch'}{'chunk'}"; if ($Safe{'scratch'}{'letter'} ne "") { $Safe{'scratch'}{'title'} = "$Safe{'scratch'}{'category'} (letter '$Safe{'scratch'}{'letter'}')"; } else { $Safe{'scratch'}{'title'} = "$Safe{'scratch'}{'category'} ($Safe{'scratch'}{'start'}" . "-" . ($Safe{'scratch'}{'start'} + $Safe{'scratch'}{'chunk'}) . " out of $Safe{'scratch'}{'total'})"; } foreach $i (a .. z) { $string .= "$i"; $string .= " | \n" if $i ne "z"; } $Safe{'scratch'}{'alpha'} = $string; return ''; [/perl] Browse [scratch title] __MAINHEADER__ __TOP__ __LEFT__ __BODYHEADER__

[scratch title]

[if scratch next >= 0] [page href="browse" arg="[scratch nextURL]"]Next [scratch chunk]
[/if] [if scratch prev >= 0] [page href="browse" arg="[scratch previousURL]"]Previous [scratch chunk]
[/if]

[scratch alpha]
[sql type=list query="select p.code, p.description, p.invasive, p.sci_name, h.hardiness_name, p.image_name, s.size_name, p.price from plant as p left join size as s on s.size_id = p.size_id left join category as c on c.category_id = p.category_id left join hardiness as h on h.hardiness_id = p.hardiness_id where c.category_name ='[scratch category]' and p.sci_name like '[scratch letter]%' order by p.sci_name limit [scratch start],[scratch chunk]" ] [set name=image interpolate=1][sql-param image_name][/set] [set name=code interpolate=1][sql-param code][/set] [if scratch image ne "NULL"] [perl arg=scratch] my $filename = $Safe{'scratch'}{'image'}; ($filename, $extension) = ($1, $2) if $filename =~ /^(.*)\.([^\.]+)$/; if ($filename !~ /-mini/) { $thumbnail = $filename . "-mini." . $extension; } else { $thumbnail = $filename; $filename = ""; } if (-f "__DOCROOT__/$thumbnail") { $Safe{'scratch'}{'thumbnail'} = $thumbnail; $Safe{'scratch'}{'colspan'} = 5; } else { undef $Safe{'scratch'}{'thumbnail'}; $Safe{'scratch'}{'colspan'} = 6; } $Safe{'scratch'}{'fullimage'} = $Safe{'scratch'}{'image'} if -f "__DOCROOT__/${filename}.${extension}"; return ''; [/perl] [else] [set name="fullimage"]0[/set] [set name="thumbnail"]0[/set] [set name="colspan"]6[/set] [/else] [/if] [else] [order [sql-code]]Add to cart[/order] [/else] [/if] [if scratch thumbnail] [then] [if scratch fullimage] [else] [/else] [/if] [/then] [/if] [/sql]
[page general]name [page general#zone]zone [page general#size]size code price
[if scratch fullimage] [sql-param sci_name] [else] [sql-param sci_name] [/else] [/if] [sql-param hardiness_name] [sql-param size_name] [sql-code]

$[sql-param price]


[if scratch code =~ /^os-/] on-site only

[sql-param description] [if-sql-field invasive] invasive [/if-sql-field]




[if scratch total == 0]

No matches found!

Click to return [/if]

[if scratch next >= 0] [page href="browse" arg="[scratch nextURL]"]Next [scratch chunk]
[/if] [if scratch prev >= 0] [page href="browse" arg="[scratch previousURL]"]Previous [scratch chunk]
[/if]

[scratch alpha]
__BODYFOOTER__ __LEFTFOOTER__ __MAINFOOTER__