#!/usr/bin/perl
# viewcoll.pl
# -----------
require 'vxcgi.pl';
require 'gallery.pl';
$tx1 = "#5050A0";
$NCOLS = 3;
$NROWS = 2;
$PERPG = $NCOLS * $NROWS;
cgi_vars(); # $coll = collection directory name; $page = page number
if (!$coll) { $coll = "ScreenThemes_Posters"; } # cgi_redirect("http://www.screenthemes.com/gallery/"); }
$coll =~ tr/ /+/;
if (!$page) { $page = 1; }
$isposter = ($coll =~ /^ScreenThemes_Posters$/i) ? 1 : 0;
require "$visionx_com/vxsecure/st/packinfo.pl" if $isposter;
require "$coll/data.pl" if -e "$coll/data.pl";
cgi_header();
gallery_header(1);
print <<".";
.
center_begin();
opendir DIR, "$coll";
@files = sort readdir DIR;
closedir DIR;
chdir "$coll";
if ($isposter) {
@files = sort { $name{substr($a,7,7)} cmp $name{substr($b,7,7)} } @files;
# @files = sort @files;
}
elsif ($coll_sort_date) {
# @files = sort { ( -M $a) <=> ( -M $b) } @files;
# @files = sort { ($m{$a} ||= -M "$a") <=> ($m{$b} ||= -M $b) } @files;
@files = sort @files;
}
else {
@files = sort @files;
}
foreach $file (@files)
{
# $dbg .= "
$file = " . (stat $file)[9];
next if -d $file; # skip dirs
next if $file !~ /\.jpg$/i; # only .JPG files qualify
push @jpgs, $file;
}
$lastpage = int($#jpgs / $PERPG) + 1;
$page = $lastpage if $page > $lastpage;
$first = ($page - 1) * $PERPG + 1;
$last = $first + $PERPG - 1;
$last = $#jpgs + 1 if $last > $#jpgs + 1;
$i = 0;
coll_begin();
foreach $jpg (@jpgs)
{
$i++;
next if $i < $first;
coll_thumbnail($jpg);
last if $i >= $last;
coll_newrow() if $i % $NCOLS == 0;
}
coll_end();
center_end();
gallery_footer(1);
#---------------------------------------------------------------------
sub center_begin
{
my $title = $coll;
$title =~ tr/_/ /;
my $comments= ($coll_comments) ? ". $coll_comments" : "";
my $brought = ($coll_who) ? "These images brought to you by $coll_who$comments" : "$coll_comments";
my $align = (length($coll_by . $coll_comments) > 90) ? "LEFT" : "CENTER";
print <<".";
|
.
}
sub center_end
{
print <<".";
|
|
.
}
#---------------------------------------------------------------------
sub coll_begin
{
my $bg = "#FFFFE0";
print <<".";
.
}
sub coll_end
{
my $also = ($coll_also) ? "If you like this collection, we have many other high-quality images available for purchase (via download or CD-ROM)." : "";
print <<".";
|
.
my ($i, $a1, $a2);
$i = $page - 1;
if ($i >= 1)
{
print <<".";
<<PREV   -
.
}
foreach $i (1 .. $lastpage)
{
$a1 = ($i == $page) ? "[" : "";
$a2 = ($i == $page) ? "]" : "";
print <<".";
$a1$i$a2
.
}
$i = $page + 1;
if ($i <= $lastpage)
{
print <<".";
- NEXT>>
.
}
print <<".";
|
.
}
sub coll_thumbnail
{
my ($jpg) = @_;
my $title;
if ($isposter)
{
my $packid = lc(substr($jpg, 7, 7));
$title = $name{$packid};
$title .= " (Star Trek)" if $packid =~ /^tk/i;
}
else
{
$title = $jpg;
$title =~ tr/_/ /;
$title =~ s/\.jpg$//i;
}
my ($w, $h) = split /,/, ($small{$jpg} ? $small{$jpg} : "116,87");
my $h2 = $h + 20;
my $new = ($isposter && (-M $jpg) < 6) ? "
NEW!" : "";
print <<".";
$title$new
|
.
}
sub coll_newrow
{
print <<".";
.
}