Apache2-ApacheMobileFilter
view release on metacpan or search on metacpan
lib/Apache2/AMFImageRendering.pm view on Meta::CPAN
$CommonLib->printLog("ERROR: MaxAgeImage must be a number > 0");
}
}
$CommonLib->printLog("QualityImage is: ".$qualityImage);
if ($ENV{TypeMagickFilter}) {
my %params = map { $_ => 1 } @arrayFilterMagick;
if(exists($params{$ENV{TypeMagickFilter}})) {
$filterMagick=$ENV{TypeMagickFilter};
$CommonLib->printLog("TypeMagickFilter is: $filterMagick");
} else {
$CommonLib->printLog("ERROR: TypeMagickFilter filter ".$ENV{TypeMagickFilter}." not available, the default is ".$filterMagick);
my $stringFilters='';
foreach my $filter (@arrayFilterMagick){
$stringFilters=$stringFilters."'".$filter."' ";
}
$CommonLib->printLog("The available filters are: ".$stringFilters."for more info http://www.imagemagick.org/Usage/filter/");
}
} else {
if ($ENV{TypeGraphicLibrary} eq 'magick') {
$CommonLib->printLog("TypeMagickFilter is not set, the default is ".$filterMagick);
}
}
if ($ENV{ImageParamWidth}) {
$par_width=$ENV{ImageParamWidth};
$CommonLib->printLog("ImageParamWidth is: $par_width. To force the width of image the url must be <url image>?$par_width=<width>");
}
if ($ENV{ImageParamHeight}) {
$par_height=$ENV{ImageParamHeight};
$CommonLib->printLog("ImageParamHeight is: $par_height. To force the height of image the url must be <url image>?$par_width=<height>");
}
if ($ENV{ImageParamPerc}) {
$par_perc=$ENV{ImageParamPerc};
$CommonLib->printLog("ImageParamPerc is: $par_perc. To force the percentage of image the url must be <url image>?$par_perc=<percentage>");
}
$CommonLib->printLog("Finish loading parameter");
}
sub handler {
my $f = shift;
my $capability2;
my $s = $f->r->server;
my $query_string=$f->r->args;
my $uri = $f->r->uri();
#$uri =~ s/\//_/g;
my $content_type=$f->r->content_type();
my @fileArray = split(/\//, $uri);
my $file=$fileArray[-1];
my $docroot = $f->r->document_root();
#$docroot =~ s/\//_/g;
my $servername=$f->r->get_server_name();
my $id="";
my $method="";
my $location;
my $width_toSearch;
my $type_redirect="internal";
my $return_value=Apache2::Const::DECLINED;
my $dummy="";
my $variabile2="";
my %ArrayCapFound;
my $controlCookie;
my $query_img="";
my %ArrayQuery;
my $var;
my $cookie = $f->r->headers_in->{Cookie} || '';
my $width=1000;
my $height=1000;
my $image2="";
my $device_claims_web_support='null';
my $is_wireless_device='null';
my $isMobile='true';
$content_type=lc($content_type);
if ($f->r->pnotes('max_image_width')) {
$width=$f->r->pnotes('max_image_width')
}
if ($f->r->pnotes('max_image_height')) {
$height=$f->r->pnotes('max_image_height');
}
if ($f->r->pnotes('amf_device_ismobile')) {
$isMobile=$f->r->pnotes('amf_device_ismobile');
}
$repasshanlder=$repasshanlder + 1;
$return_value=Apache2::Const::DECLINED;
#
# Reading value of query string
#
if ($query_string) {
my @vars = split(/&/, $query_string);
foreach $var (sort @vars){
if ($var) {
my ($v,$i) = split(/=/, $var);
$v =~ tr/+/ /;
$v =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$i =~ tr/+/ /;
$i =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$i =~ s/<!--(.|\n)*-->//g;
$ArrayQuery{$v}=$i;
}
}
if ($ImageType{$content_type}) {
my $imageToConvert;
my $imagefile="";
if ($ArrayQuery{par_height}) {
if ( $ArrayQuery{$par_height} =~ /^-?\d/) {
$height=$ArrayQuery{par_height};
}
}
$imageToConvert=$f->r->filename();
if ($isMobile eq 'false') {
my $image = Image::Resize->new("$imageToConvert");
$width=$image->width();
}
if ($ArrayQuery{$par_width}) {
if ( $ArrayQuery{$par_width} =~ /^-?\d/) {
$width=$ArrayQuery{$par_width};
}
}
if ($ArrayQuery{$par_perc}) {
if ( $ArrayQuery{$par_perc} =~ /^-?\d/) {
$width=$ArrayQuery{$par_perc} * $width / 100;
}
}
( run in 0.913 second using v1.01-cache-2.11-cpan-9581c071862 )