//-------------class img-----------------
function addimg($id_site)
{
$db =& JFactory::getDBO();
$query = "SELECT wimg, vwimg, vhimg, max_img FROM #__lbresa_config"; $db->setQuery( $query ); $confimg = $db->loadObject();
$datepic = date('Ymdhis');
$name = $id_site."_".$datepic;
$wimg= $confimg->wimg;
$vwimg= $confimg->vwimg;
$vhimg= $confimg->vhimg;
$max_img= $confimg->max_img;
$dir = 'components/com_joomloc/images'; $dir_temp = 'components/com_joomloc/images/temp';
$ratio = $wimg;
if (isset($_FILES['file']))
{
if ($_FILES['file']['error'] == UPLOAD_ERR_OK)
{
$tableau = @getimagesize($_FILES['file']['tmp_name']);
if ($tableau == FALSE) {
unlink($_FILES['file']['tmp_name']);
$erreur = "<h1>".JText::_( 'Votre fichier n est pas une image.' )."</h1>";
echo "$erreur";
}
else {
if ($tableau[2] == 1 || $tableau[2] == 2 || $tableau[2] == 3) {
$file_upload = 'site_'.$id_site."_img_".$name.".jpg";
copy ($_FILES['file']['tmp_name'], $dir_temp.'/'.$file_upload);
$query = "INSERT INTO #__lbresa_img(id, id_site, img) values('', '$id_site', '$file_upload')";
$db->setQuery( $query );
$db->query();
// si notre image est de type jpeg --------------------------------------------------------------
if ($tableau[2] == 2) {
// on crée une image à partir de notre grande image à l'aide de la librairie GD
$src = imagecreatefromjpeg($dir_temp.'/'.$file_upload);
if($tableau[0]<=$ratio and $tableau[1]<=$ratio)
{
copy ($_FILES['file']['tmp_name'], $dir.'/'.$file_upload);
$src = imagecreatefromjpeg($dir.'/'.$file_upload);
}
else
{
// on teste si notre image est de type paysage ou portrait
if ($tableau[0] > $tableau[1]) {
$im = imagecreatetruecolor(round(($ratio/$tableau[1])*$tableau[0]), $ratio);
imagecopyresampled($im, $src, 0, 0, 0, 0, round(($ratio/$tableau[1])*$tableau[0]), $ratio, $tableau[0], $tableau[1]);
}
else {
$im = imagecreatetruecolor($ratio, round(($ratio/$tableau[0])*$tableau[1]));
imagecopyresampled($im, $src, 0, 0, 0, 0, $ratio, round($tableau[1]*($ratio/$tableau[0])), $tableau[0], $tableau[1]);
}
// on copie notre fichier généré dans le répertoire des miniatures
imagejpeg ($im, $dir.'/'.$file_upload);
}
$imv = imagecreatetruecolor($vwimg, $vhimg);
imagecopyresampled($imv, $src, 0, 0, 0, 0, $vwimg, $vhimg, $tableau[0], $tableau[1]);
imagejpeg ($imv, $dir.'/vignettes/'.$file_upload);
unlink($dir_temp.'/'.$file_upload);
}
//----------