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 )