Certaine personne place des images sur mon forum et je cherche a les resizer automatiquement la largeur a une largeur fixe et la heuteur au meme pourcentage que le resize de la largeur. Ce sont des images souvent externe.
Donc j'ai creer cette petite fonction qui permet d'obtenir les info d'une image et ensuite avec la regle de 3 je calcule ma nouvelle largeur et hauteur. :
function imgXYresize($imglink, $maxWith = 0, $maxHeight = 0){
$newImgX = 0;
$newImgY = 0;
$imgX = imagesx($imglink);
$imgY = imagesy($imglink);
if ($maxHeight > 0 and $maxWith > 0) {
if ($imgX > $maxWith){
$newImgX = 400;
$newImgY = ($imgX / $newImgX)*$imgY;
}
}
$ret = "width='".$newImgX."' heigh='".$newImgY."'";
return $ret;
}
Mais je me demandais comment je pouvais integrer sa au au sanitizer?
dans le code :
$patterns[] = "/[img align=(['"]?)(left|center|right)\1]([^"()?&'<>]*)[/img]/sU";
$patterns[] = "/[img]([^"()?&'<>]*)[/img]/sU";
$patterns[] = "/[img align=(['"]?)(left|center|right)\1 id=(['"]?)([0-9]*)\3]([^"()?&'<>]*)[/img]/sU";
$patterns[] = "/[img id=(['"]?)([0-9]*)\1]([^"()?&'<>]*)[/img]/sU";
if ($allowimage != 1) {
$replacements[] = '<a href="\3" target="_blank">\3</a>';
$replacements[] = '<a href="\1" target="_blank">\1</a>';
$replacements[] = '<a href="'.XOOPS_URL.'/image.php?id=\4" target="_blank">\4</a>';
$replacements[] = '<a href="'.XOOPS_URL.'/image.php?id=\2" target="_blank">\3</a>';
} else {
$replacements[] = '<img src="\3" align="\2" alt="" />';
$replacements[] = '<img src="\1" alt="" />';
$replacements[] = '<img src="'.XOOPS_URL.'/image.php?id=\4" align="\2" alt="\4" />';
$replacements[] = '<img src="'.XOOPS_URL.'/image.php?id=\2" alt="\3" />';
}
...
return preg_replace($patterns, $replacements, $text);