getMessage()); exit; } $size = '96'; if (!empty($_GET['size']) && is_numeric($_GET['size'])) { $size = (int) $_GET['size']; } if ($size > 200 || $size < 16) $size = 96; // On récupère le statut dans tous les cas try { list($status, $img_status) = webStatus::getStatus($jid); } catch (Exception $e) { webStatus::sendErrorImage($e->getMessage()); exit; } // On essaye de récupérer le cache en fonction du statut $cache_file = webStatus::getCacheName('avatar', $jid, $status, $size); if (webStatus::isCached($cache_file, 3600*24)) { webStatus::redirectImage($cache_file); } // Récupérons l'avatar try { $avatar = webStatus::getAvatar($jid, $size); } catch (Exception $e) { $avatar = webStatus::getDummyAvatar($size); } $st_msg = webStatus::getStatusMsg($status); $image = imagecreatetruecolor($size, $size); $noir = imagecolorallocate($image, 0, 0, 0); $trans = imagecolorallocatealpha($image, 255, 255, 255, 30); $blanc = imagecolorallocate($image, 255, 255, 255); imagecopy($image, $avatar, 0, 0, 0, 0, imagesx($avatar), imagesy($avatar)); if ($size >= 64) { imagefilledrectangle($image, 0, $size-14, $size, $size+16, $trans); imagecopy($image, $img_status, 0, $size-18, 0, 0, imagesx($img_status), imagesy($img_status)); } else { imagecopyresampled($image, $img_status, 0, $size-13, 0, 0, 12, 12, imagesx($img_status), imagesy($img_status)); } if ($size >= 64) { imagettftext($image, 9, 0, 18, $size-4, $noir, get_font('FreeSansBold'), $st_msg); } webStatus::displayImage($image, $cache_file); ?>