repertoire_path."img_".$notice_id; header('Content-Type: image/png'); $fp=@fopen($img, "rb"); fpassthru($fp); fclose($fp) ; exit; } } if ($noticecode) { if (isEAN($noticecode)) { if (isISBN($noticecode)) { if (isISBN10($noticecode)) { $url_image10=str_replace("!!isbn!!", str_replace("-","",$noticecode), $_GET['url_image']); $url_image13=str_replace("!!isbn!!", str_replace("-","",formatISBN($noticecode,"13")), $_GET['url_image']); } else { $url_image10=str_replace("!!isbn!!", str_replace("-","",EANtoISBN10($noticecode)), $_GET['url_image']); $url_image13=str_replace("!!isbn!!", str_replace("-","",$noticecode), $_GET['url_image']); } } else { $url_imageEAN=str_replace("!!isbn!!", str_replace("-","",$noticecode), $_GET['url_image']); } } $url_image=str_replace("!!isbn!!", $noticecode, $_GET['url_image']); } else { $url_image=rawurldecode(stripslashes($_GET['url_image'])); } if ($opac_curl_available) { $image=""; $aCurl = new Curl(); $aCurl->limit=$poids_fichier_max;//Limite la taille de l'image à 1 Mo $aCurl->timeout=15; $content = $aCurl->get($vigurl); $image=$content->body; if(!$image || $content->headers['Status-Code'] != 200){ $content = $aCurl->get($url_image10); $image=$content->body; } if(!$image || $content->headers['Status-Code'] != 200){ $content = $aCurl->get($url_image13); $image=$content->body; } if(!$image || $content->headers['Status-Code'] != 200){ $content = $aCurl->get($url_imageEAN); $image=$content->body; } if(!$image || $content->headers['Status-Code'] != 200){ $content = $aCurl->get($url_image); $image=$content->body; } if(!$image || $content->headers['Status-Code'] != 200 || $content->headers['Content-Length'] > $aCurl->limit){//Si le fichier est trop gros image n'est pas vide mais ne contient que le début d'ou le dernier test $image_url = 'http'; if ($_SERVER["HTTPS"] == "on") {$image_url .= "s";} $image_url .= "://"; $image_url .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].dirname($_SERVER["SCRIPT_NAME"]).'/images/vide.png'; $content = $aCurl->get($image_url); $image = $content->body; } if($image && $content->headers['Status-Code'] == 200){ if ($img=imagecreatefromstring($image)) { header('Content-Type: image/png'); $redim=false; if($_GET['empr_pic']){ if (imagesx($img) >= imagesy($img)) { if(imagesx($img) <= $empr_pics_max_size){ $largeur=imagesx($img); $hauteur=imagesy($img); }else{ $redim=true; $largeur=$empr_pics_max_size; $hauteur = ($largeur*imagesy($img))/imagesx($img); } } else { if(imagesy($img) <= $empr_pics_max_size){ $hauteur=imagesy($img); $largeur=imagesx($img); }else{ $redim=true; $hauteur=$empr_pics_max_size; $largeur = ($hauteur*imagesx($img))/imagesy($img); } } }elseif($vigurl){ if(!($pmb_notice_img_pics_max_size*1)) $pmb_notice_img_pics_max_size=150; $redim=false; if (imagesx($img) >= imagesy($img)) { if(imagesx($img) <= $pmb_notice_img_pics_max_size){ $largeur=imagesx($img); $hauteur=imagesy($img); }else{ $redim=true; $largeur=$pmb_notice_img_pics_max_size; $hauteur = ($largeur*imagesy($img))/imagesx($img); } } else { if(imagesy($img) <= $pmb_notice_img_pics_max_size){ $hauteur=imagesy($img); $largeur=imagesx($img); }else{ $redim=true; $hauteur=$pmb_notice_img_pics_max_size; $largeur = ($hauteur*imagesx($img))/imagesy($img); } } if($redim){ $dest = imagecreatetruecolor($largeur,$hauteur); imagecopyresampled($dest, $img, 0, 0, 0, 0, $largeur, $hauteur,imagesx($img),imagesy($img)); imagepng($dest,$filename_output); imagedestroy($dest); }else{ imagepng($img,$filename_output); } imagedestroy($img); $thumbnail_url=$opac_url_base."getimage.php?noticecode=&vigurl=¬ice_id=".$id; } if($redim){ $dest = imagecreatetruecolor($largeur,$hauteur); imagecopyresampled($dest, $img, 0, 0, 0, 0, $largeur, $hauteur,imagesx($img),imagesy($img)); imagepng($dest); imagedestroy($dest); }else{ imagepng($img); } imagedestroy($img); } }else{ //Je ne peux passer ici que si pmb/images/vide.png n'existe pas ou n'a pas les bons droits } } else { // priorité à vigurl si fournie if ($fp=@fopen(rawurldecode(stripslashes($vigurl)), "rb")) { } elseif ($fp=@fopen(rawurldecode(stripslashes($url_image10)), "rb")) { } elseif ($fp=@fopen(rawurldecode(stripslashes($url_image13)), "rb")) { } elseif ($fp=@fopen(rawurldecode(stripslashes($url_imageEAN)), "rb")) { } elseif ($fp=@fopen(rawurldecode(stripslashes($url_image)), "rb")) { } if ($fp) { //Lecture et vérification de l'image $image=""; $size=0; $flag=true; while (!feof($fp)) { $image.=fread($fp,4096); $size=strlen($image); if ($size>$poids_fichier_max) { $flag=false; break; } } if ($flag) { if ($img=imagecreatefromstring($image)) { header('Content-Type: image/png'); $redim=false; if($_GET['empr_pic']){ if (imagesx($img) >= imagesy($img)) { if(imagesx($img) <= $empr_pics_max_size){ $largeur=imagesx($img); $hauteur=imagesy($img); }else{ $redim=true; $largeur=$empr_pics_max_size; $hauteur = ($largeur*imagesy($img))/imagesx($img); } } else { if(imagesy($img) <= $empr_pics_max_size){ $hauteur=imagesy($img); $largeur=imagesx($img); }else{ $redim=true; $hauteur=$empr_pics_max_size; $largeur = ($hauteur*imagesx($img))/imagesy($img); } } }elseif($vigurl){ if(!($pmb_notice_img_pics_max_size*1)) $pmb_notice_img_pics_max_size=150; $redim=false; if (imagesx($img) >= imagesy($img)) { if(imagesx($img) <= $pmb_notice_img_pics_max_size){ $largeur=imagesx($img); $hauteur=imagesy($img); }else{ $redim=true; $largeur=$pmb_notice_img_pics_max_size; $hauteur = ($largeur*imagesy($img))/imagesx($img); } } else { if(imagesy($img) <= $pmb_notice_img_pics_max_size){ $hauteur=imagesy($img); $largeur=imagesx($img); }else{ $redim=true; $hauteur=$pmb_notice_img_pics_max_size; $largeur = ($hauteur*imagesx($img))/imagesy($img); } } if($redim){ $dest = imagecreatetruecolor($largeur,$hauteur); imagecopyresampled($dest, $img, 0, 0, 0, 0, $largeur, $hauteur,imagesx($img),imagesy($img)); imagepng($dest,$filename_output); imagedestroy($dest); }else{ imagepng($img,$filename_output); } imagedestroy($img); $thumbnail_url=$opac_url_base."getimage.php?noticecode=&vigurl=¬ice_id=".$id; } if($redim){ $dest = imagecreatetruecolor($largeur,$hauteur); imagecopyresampled($dest, $img, 0, 0, 0, 0, $largeur, $hauteur,imagesx($img),imagesy($img)); imagepng($dest); imagedestroy($dest); }else{ imagepng($img); } imagedestroy($img); } }else{ header('Content-Type: image/png'); $fp=@fopen('./images/vide.png', "rb"); fpassthru($fp); fclose($fp) ; } fclose($fp) ; } else { header('Content-Type: image/png'); $fp=@fopen('./images/vide.png', "rb"); fpassthru($fp); fclose($fp) ; } } ?>