Apache-Gallery
view release on metacpan or search on metacpan
lib/Apache/Gallery.pm view on Meta::CPAN
use Image::Info qw(image_info);
use Image::Size qw(imgsize);
use Image::Imlib2;
use Text::Template;
use File::stat;
use File::Spec;
use POSIX qw(floor);
use URI::Escape;
use CGI;
use CGI::Cookie;
use Encode;
use HTTP::Date;
use Digest::MD5 qw(md5_base64);
use Data::Dumper;
# Regexp for escaping URI's
my $escape_rule = "^A-Za-z0-9\-_.!~*'()\/";
my $memoized;
lib/Apache/Gallery.pm view on Meta::CPAN
my $width = $orig_width;
my $original_size=$orig_height;
if ($orig_width>$orig_height) {
$original_size=$orig_width;
}
# Check if the selected width is allowed
my @sizes = split (/ /, $r->dir_config('GallerySizes') ? $r->dir_config('GallerySizes') : '640 800 1024 1600');
my %cookies = fetch CGI::Cookie;
if ($cgi->param('width')) {
unless ((grep $cgi->param('width') == $_, @sizes) or ($cgi->param('width') == $original_size)) {
show_error($r, 200, "Invalid width", "The specified width is invalid");
return $::MP2 ? Apache2::Const::OK() : Apache::Constants::OK();
}
$width = $cgi->param('width');
my $cookie = new CGI::Cookie(-name => 'GallerySize', -value => $width, -expires => '+6M');
$r->headers_out->{'Set-Cookie'} = $cookie;
} elsif ($cookies{'GallerySize'} && (grep $cookies{'GallerySize'}->value == $_, @sizes)) {
$width = $cookies{'GallerySize'}->value;
} else {
$width = $sizes[0];
}
my $scale;
( run in 2.462 seconds using v1.01-cache-2.11-cpan-e9199f4ba4c )