$abspath = 1;
$tag = undef;
- # augh, this needs 8.3, so we'll have to fiddle around a bit instead
- # $datesort = 'DESC NULLS LAST';
- $datesort = 'DESC';
+ $datesort = 'DESC NULLS LAST';
} elsif ($r->uri =~ /^\/\+tags\/([a-zA-Z0-9-]+)\/?$/) {
$tag = $1;
$event = "+tags/$tag";
$abspath = 1;
- $datesort = 'DESC';
+ $datesort = 'DESC NULLS LAST';
} else {
# Find the event
$r->uri =~ /^\/([a-zA-Z0-9-]+)\/?$/
$event = $1;
$abspath = 0;
$tag = undef;
- $datesort = 'ASC';
+ $datesort = 'ASC NULLS LAST';
}
# Fix common error: pr0n.sesse.net/event -> pr0n.sesse.net/event/
# 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 COALESCE((date - INTERVAL '6 hours')::date, '1970-01-01') $datesort,takenby,date,filename $limit")
+ 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")
or dberror($r, "prepare()");
$q->execute($r->get_server_name)
or dberror($r, "image enumeration");
my $returnurl = "http://" . $r->get_server_name . "/" . $event . "/" .
Sesse::pr0n::Common::get_query_string(\%settings_no_fullscreen, \%defsettings);
- my %settings_bookmark = %settings;
- $settings_bookmark{'start'} = $defsettings{'start'};
- my $bookmark_url_base = "http://" . $r->get_server_name . "/" . $event . "/" .
- Sesse::pr0n::Common::get_query_string(\%settings_bookmark, \%defsettings);
-
- if ($bookmark_url_base =~ /\?/) {
- $bookmark_url_base .= ';start=';
- } else {
- $bookmark_url_base .= '?start=';
- }
-
# *whistle*
$returnurl =~ s/&/&/g;
- $bookmark_url_base =~ s/&/&/g;
Sesse::pr0n::Templates::print_template($r, "fullscreen-footer", {
vhost => $r->get_server_name,
- start => $settings{'start'} - 1,
returnurl => $returnurl,
- bookmarkurlbase => $bookmark_url_base,
+ start => $settings{'start'} - 1,
sel => $settings{'sel'},
infobox => $infobox
});
}
sub print_viewres {
my ($r, $event, $settings, $defsettings) = @_;
- my @alternatives = qw(320x256 512x384 640x480 800x600 1024x768 1280x960 1400x1050 1600x1200);
+ my @alternatives = qw(320x256 512x384 640x480 800x600 1024x768 1152x864 1280x960 1400x1050 1600x1200);
chomp (my $unlimited = Sesse::pr0n::Templates::fetch_template($r, 'viewres-unlimited'));
chomp (my $original = Sesse::pr0n::Templates::fetch_template($r, 'viewres-original'));
push @alternatives, [ $unlimited, undef, undef ];