#!c:/perl/bin/perl.exe ################################################## # Photos 01/06/99 by Jeff Waldock # Shows one picture ################################################## $rootdir="/usr/photos/main/"; $rooturl="/photos/main/"; $cgibin="/photos"; $imageurl="/images"; $cgilocation = "$cgibin/newonephoto.pl"; $xmax=800; $ymax=600; ################################################### # Get Date and Time from Server @days=("Sun","Mon","Tue","Wed","Thu","Fri","Sat"); @longdays=("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"); @month=("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"); # Get Date and Time from Server $date = localtime(); ($sec,$min,$hour,$mday,$mon,$yr,$wday,$yday,$isdst) = localtime(time); $year=$yr+1900; if ($min < 10) {$min="0".$min; } $shorttime="$hour:$min"; $date1="$days[$wday] $mday $month[$mon] $year at $shorttime"; $date2="$longdays[$wday] $mday $month[$mon] $year at $shorttime"; $thisyear=$year; print "Content-Type: text/html\n\n"; $request_method=$ENV{'REQUEST_METHOD'}; if ($request_method eq "GET") { $form_info=$ENV{'QUERY_STRING'}; } else { $size_of_info=$ENV{'CONTENT_LENGTH'}; read(STDIN, $form_info, $size_of_info); } @key_value_pairs=split(/&/,$form_info); foreach $key_value (@key_value_pairs) { ($key,$value)=split(/=/,$key_value); $value=~ tr/+/ /; $value=~ s/%([\dA-Fa-f][\dA-Fa-f])/pack("C",hex($1))/eg; $INPUT{$key} = $value; #print "",$key," = ",$value,"
\n"; } print "\n"; print "\n"; print "\n"; $idsel=$INPUT{"id"}; unless ($idsel) { &PrintError; } if ($idsel) { &GetPhotoData; } &Footer; print "\n"; exit; sub PrintError { } sub Footer { print "\n"; print "\n"; print "\n"; print "\n"; print "
\"Back© Jeff Waldock, $thisyear
\n"; print "This query: $date2
Get the full image HERE [$pixels$filesize]
\n"; print "xx\n"; } sub GetPhotoData { $resfile=$rootdir."index.txt"; open (FILE,$resfile); @lines=; close(FILE); $lastdate=$lines[0]; $lastdate =~ s/#//g; $numpix=$#lines; #find the details for this pic for ($j=0; $j<=$numpix; $j++) { @info=split(/\|/,$lines[$pic1+$j]); $id=$info[0]; if ($id == $idsel) { $section=$info[2]; $section =~ tr/A-Z/a-z/; $filename=$info[3]; $filename=~tr/A-Z/a-z/; $filename=~s/ //g; $filepath=$filename; @ss=split(/\//,$filename); $nss=$#ss; #print "nss=$nss
\n"; $thumburl=""; for ($f=0;$f<$nss;$f++) { #print $ss[$f]."\\"; $thumburl=$thumburl.$ss[$f].'/'; } $thumburl=$thumburl.'thumb/'; $thumburl=$thumburl.$ss[$nss]; $thumburl=~s/\\/\//g; #$thumburl=~tr/A-Z/a-z/; $fileurl=$filename; #$fileurl=~s/\\/\//g; #$fileurl=~tr/A-Z/a-z/; $fileurl=~s/$rootdir/$rooturl/; $thumburl=~s/$rootdir/$rooturl/; #$type=$info[3]; $xpix=$info[4]; $ypix=$info[5]; $imagedet=$info[6]; $datetaken=$info[7]; $keywords=$info[8]; $description=$info[9]; $pixels=$xpix." by ".$ypix." pixels "; $proportion=$ypix/$xpix; $fullurl=$fileurl; $fileurl=$thumburl; $fullurl=$thumburl; $fileurl=~s/thumb/600/; $fullurl=~s/thumb\///; #$fullurl=~s/thumb/1500/; #print "fileurl=$fileurl, thumburl=$thumburl\n"; #print $proportion; if ($proportion >1) { if ($ypix>$ymax) { $ht=$ymax; $wid=int($ht/$proportion); } else { $ht=$ypix; $wid=$xpix; } } else { if ($xpix>$xmax) { $wid=$xmax; $ht=int($wid*$proportion); } else { $wid=$xpix; $ht=ypix; } } #$fileurl=$rooturl.$section."/".$filename."\.".$type; #$thumburl=$rooturl.$section."/thumb/".$filename."\.".$type; #$filepath=$rootdir.$section."/".$filename."\.".$type; ($size)=(stat($filepath))[7]; $filesize="(".int($size/1000)."K)"; last; } } print "

Jeff's Photos

"; print "\n"; #do the label in row 1 print "\n"; #do the photo in row 2 #print "\n"; print "\n"; #do the info in row 3 print "\n"; print "
IMAGE $id
\"$pixels$filesize\"
\"$pixels$filesize\"
$description

$datetaken

\n"; }