#!/usr/bin/perl
-# $Id$
+my $version='$Id$';
# Recursively create image gallery index and slideshow wrappings.
# Makes use of modified "slideshow" javascript by Samuel Birch
my $term = new Term::ReadLine "Edit Title";
FsObj->new(getcwd)->iterate;
+if ($rssobj) { $rssobj->{'rss'}->save($rssobj->{'file'}); }
sub help {
print STDERR <<__END__;
usage: $0 [options]
--help: print help message and exit
- --incpath: do not try to find .include diretory upstream, use
+ --incpath: do not try to find .gallery2 diretory upstream, use
specified path (absolute or relavive). Use with causion.
--debug: print a lot of debugging info to stdout as you run
--asktitle: ask to edit album titles even if there are ".title" files
my $depth=20; # arbitrary max depth
if ($incpath) {
- return $incpath."/.include";
+ return $incpath."/.gallery2";
}
- my $inc=".include";
+ my $inc=".gallery2";
while ( ! -d $fullpath."/".$inc ) {
$inc = "../".$inc;
last unless ($depth-- > 0);
$self->{$size}->{'dim'} = [$w, $h];
} else {
$self->{$size}->{'url'} = $nref;
- $self->{$size}->{'dim'} = [$w*$factor, $h*$factor];
+ $self->{$size}->{'dim'} = [int($w*$factor+.5),
+ int($h*$factor+.5)];
if (isnewer($fn,$nfn)) {
doscaling($fn,$nfn,$factor,$w,$h);
}
for my $refresh('static', 'slide') {
my $fn = sprintf("%s/.html/%s-%s.html",$dn,$name,$refresh);
if (isnewer($self->{-fullpath},$fn)) {
- my $imgsrc = '../'.$self->{$sizes[1]};
+ my $imgsrc = '../'.$self->{$sizes[1]}->{'url'};
my $fwdref;
my $bakref;
if ($nref) {
-head=>meta({-http_equiv=>'Refresh',
-content=>"3; url=$fwdref"}),
-style=>{-src=>$inc."gallery.css"},
- ),"\n";
+ ),"\n",
+ comment("Created by ".$version),"\n";
} else {
print $F start_html(-title=>$title,
-encoding=>"utf-8",
-bgcolor=>"#808080",
-style=>{-src=>$inc."gallery.css"},
- ),"\n";
+ ),"\n",
+ comment("Created by ".$version),"\n";
}
- print $F start_center,"\n",
- h1($title),"\n",
- start_table({-class=>'navi'}),start_Tr,"\n",
+ print $F start_table({-class=>'navi'}),start_Tr,"\n",
td(a({-href=>"../index.html"},"Index")),"\n",
td(a({-href=>$bakref},"<<Prev")),"\n",
td(a({-href=>$toggleref},$toggletext)),"\n",
td(a({-href=>$fwdref},"Next>>")),"\n",
+ td({-class=>'title'},$title),"\n",
end_Tr,
end_table,"\n",
- table({-class=>'picframe'},
- Tr(td(img({-src=>$imgsrc})))),"\n",
- end_center,"\n",
+ center(table({-class=>'picframe'},
+ Tr(td(img({-src=>$imgsrc}))))),"\n",
end_html,"\n";
close($F);
}
my $imgsrc = sprintf("../.%s/%s",$sizes[0],$name);
print $F start_html(-title=>$title,
-encoding=>"utf-8",
- -style=>{-src=>$inc."gallery.css"},),"\n",
+ -style=>{-src=>$inc."gallery.css"},
+ -script=>[
+ {-src=>$inc."mootools.js"},
+ {-src=>$inc."urlparser.js"},
+ {-src=>$inc."infopage.js"},
+ ]),"\n",
+ comment("Created by ".$version),"\n",
start_center,"\n",
h1($title),"\n",
table({-class=>'ipage'},
Tr(td(img({-src=>$imgsrc})),
td($self->infotable))),
- a({-href=>'../index.html'},'Index'),"\n",
+ a({-href=>'../index.html',-class=>'conceal'},
+ 'Index'),"\n",
end_center,"\n",
end_html,"\n";
close($F);
{-src=>$inc."overlay.js"},
{-src=>$inc."urlparser.js"},
{-src=>$inc."multibox.js"},
- {-src=>$inc."slideshow.js"},
+ {-src=>$inc."showwin.js"},
+ {-src=>$inc."controls.js"},
+ {-src=>$inc."show.js"},
{-src=>$inc."gallery.js"},
- {-code=>"var incPrefix='$inc';"}
- ]),
+ ]),"\n",
+ comment("Created by ".$version),"\n",
+ start_div({-class => 'indexContainer',
+ -id => 'indexContainer'}),
a({-href=>"../index.html"},"UP"),"\n",
start_center,"\n",
h1($title),"\n",
my $self = shift;
my $IND = $self->{-IND};
- print $IND end_center,end_html,"\n";
+ print $IND end_center,end_div,
+ # "\n",'<script type="text/javascript">init_gallery();</script>',"\n",
+ end_html,"\n";
close($IND) if ($IND);
undef $self->{-IND};
my $first = $self->{-firstimg}->{-base};
my $slideref = sprintf(".html/%s-slide.html",$first);
- print $IND h2("Images"),"\n",
- a({-href=>$slideref,
- -onClick=>"return run_slideshow(-1);"},
- 'Slideshow'),
- start_div({-id=>"slideshowWindow",-class=>"slideshowWindow"}),
- div({-id=>"slideshowContainer",
- -class=>"slideshowContainer"},""),
- start_div({-id=>"slideshowControls",
- -class=>"slideshowControls"}),
- a({-href=>"#",-onClick=>"show.previous();return false;"},
- "Prev"),
- a({-href=>"#",-onClick=>"show.play();return false;"},
- "Play"),
- a({-href=>"#",-onClick=>"show.stop();return false;"},
- "Stop"),
- a({-href=>"#",-onClick=>"show.next();return false;"},
- "Next"),
- a({-href=>"#",-onClick=>"stop_slideshow();return false;"},
- "Exit"),
- end_div,
- end_div,
- "\n";
+ print $IND h2("Images ",
+ a({-href=>$slideref,-class=>'showStart',-id=>$first},
+ '> slideshow')),"\n";
}
sub img_entry {
my $i=0+$self->{-parent}->{-numofimgs};
$self->{-parent}->{-numofimgs}++;
- print $IND a({-name=>$i}),"\n",
+ print $IND a({-name=>$name}),"\n",
start_table({-class=>'slide'}),start_Tr,start_td,"\n",
div({-class=>'slidetitle',-id=>$name},
- a({-href=>".html/$name-info.html",
- -title=>'Image Info',
+ "\n ",a({-href=>".html/$name-info.html",
+ -title=>'Image Info: '.$name,
-class=>'infoBox'},
- $title)),"\n",
+ $title),"\n"),"\n",
div({-class=>'slideimage',-id=>$name},
- a({-href=>".html/$name-static.html",-title=>$title,
- -id=>$name,
- -OnClick=>"return run_slideshow(".$i.");"},
- img({-src=>$thumb}))),"\n",
- start_div({-class=>'varimages',-id=>$i});
+ "\n ",a({-href=>".html/$name-static.html",
+ -title=>$title,
+ -class=>'showImage',
+ -id=>$name},
+ img({-src=>$thumb})),"\n"),"\n",
+ start_div({-class=>'varimages',-id=>$name,-title=>$title}),"\n";
foreach my $sz(@sizes) {
my $src=$self->{$sz}->{'url'};
my $w=$self->{$sz}->{'dim'}->[0];
my $h=$self->{$sz}->{'dim'}->[1];
- print $IND a({-href=>$src,-style=>"display: none;",
- -class=>($sz == 640)?"slideshowThumbnail":"",
+ print $IND " ",a({-href=>$src,
+ -class=>"conceal",
-title=>"Reduced to ".$w."x".$h},
- $w."x".$h)," ";
+ $w."x".$h)," \n";
}
- print $IND a({-href=>$name,
+ print $IND " ",a({-href=>$name,
-title=>'Original'},$w."x".$h),
- end_div,"\n",
+ "\n",end_div,"\n",
end_td,end_Tr,end_table,"\n";
}