X-Git-Url: https://git.sesse.net/?p=pr0n;a=blobdiff_plain;f=perl%2FSesse%2Fpr0n%2FIndex.pm;h=7d2ddf8227703ae74a51a066557c06b81f5bf55e;hp=ad3af8fc088d86ecdb71b290965024de91c60fe5;hb=6c8c4bf3f1e3109523f9ec6117abfdf0e04a0d99;hpb=921a0d5faf4ad62b53ad8217255f28f3aa1eeddb diff --git a/perl/Sesse/pr0n/Index.pm b/perl/Sesse/pr0n/Index.pm index ad3af8f..7d2ddf8 100644 --- a/perl/Sesse/pr0n/Index.pm +++ b/perl/Sesse/pr0n/Index.pm @@ -63,8 +63,8 @@ sub handler { $where = ' AND event=' . $dbh->quote($event); } - # Any NEF files => default to processing - my $ref = $dbh->selectrow_hashref("SELECT * FROM images WHERE vhost=? $where AND ( LOWER(filename) LIKE '%.nef' OR LOWER(filename) LIKE '%.cr2' ) LIMIT 1", + # Any NEF files with no non-NEF renders => default to processing + my $ref = $dbh->selectrow_hashref("SELECT * FROM images WHERE vhost=? $where AND ( LOWER(filename) LIKE '%.nef' OR LOWER(filename) LIKE '%.cr2' ) AND render_id IS NULL LIMIT 1", undef, Sesse::pr0n::Common::get_server_name($r)) and $defsettings{'xres'} = $defsettings{'yres'} = undef; @@ -156,13 +156,13 @@ sub handler { # } # Count the number of selected images. - $ref = $dbh->selectrow_hashref("SELECT COUNT(*) AS num_selected FROM images WHERE vhost=? $where AND selected=\'t\'", undef, Sesse::pr0n::Common::get_server_name($r)); + $ref = $dbh->selectrow_hashref("SELECT COUNT(*) AS num_selected FROM images WHERE vhost=? $where AND selected AND NOT is_render", undef, Sesse::pr0n::Common::get_server_name($r)); my $num_selected = $ref->{'num_selected'}; # Find all images related to this event. my $limit = (defined($start) && defined($num) && !$settings{'fullscreen'}) ? (" LIMIT $num OFFSET " . ($start-1)) : ""; - my $q = $dbh->prepare("SELECT *, (date - INTERVAL '6 hours')::date AS day FROM images WHERE vhost=? $where ORDER BY (date - INTERVAL '6 hours')::date $datesort,takenby,date,filename $limit") + my $q = $dbh->prepare("SELECT *, (date - INTERVAL '6 hours')::date AS day FROM images WHERE vhost=? $where AND NOT is_render ORDER BY (date - INTERVAL '6 hours')::date $datesort,takenby,date,filename $limit") or return dberror($r, "prepare()"); $q->execute(Sesse::pr0n::Common::get_server_name($r)) or return dberror($r, "image enumeration"); @@ -225,6 +225,7 @@ sub handler { COUNT(*) AS num FROM images WHERE vhost=? $where + AND NOT is_render GROUP BY 1,2 ORDER BY 1,2") or die "Couldn't prepare to find equipment: $!"; @@ -343,8 +344,8 @@ sub handler { # Add fullscreen link. my %fssettings = %settings; $fssettings{'fullscreen'} = 1; - $fssettings{'start'} = $img_num; my $fsquery = Sesse::pr0n::Common::get_query_string(\%fssettings, \%defsettings); + $fsquery .= '#' . $img_num; my $filename = $ref->{'filename'}; my $uri = $filename; @@ -364,7 +365,7 @@ sub handler { } else { $io->print(" "); } - $io->print("\"\"$imgsz\n"); + $io->print("\"\"$imgsz\n"); if ($rot == 1) { $io->print(" 90 selectrow_hashref("SELECT count(*) AS num_images FROM images WHERE vhost=? $where", + my $ref = $dbh->selectrow_hashref("SELECT count(*) AS num_images FROM images WHERE vhost=? $where AND NOT is_render", undef, Sesse::pr0n::Common::get_server_name($r)) or return dberror($r, "image enumeration"); my $num_images = $ref->{'num_images'};