function adserve_counter_image in Advertisement 7
Same name and namespace in other branches
- 5.2 imageserve.inc \adserve_counter_image()
- 5 imageserve.inc \adserve_counter_image()
- 6.3 imageserve.inc \adserve_counter_image()
- 6 imageserve.inc \adserve_counter_image()
- 6.2 imageserve.inc \adserve_counter_image()
Generate a tiny image with GD, used to count when an ad has been displayed on a cached page.
File
- ./
imageserve.inc, line 15 - Image serving lib.
Code
function adserve_counter_image() {
adserve_variable('variable_load');
adserve_bootstrap(0);
if (adserve_variable('aid')) {
$aid = adserve_variable('aid');
}
if (isset($aid) && $aid) {
_debug_echo("adserve_counter_image: increment 'view' counter for aid: {$aid}");
adserve_cache('increment', 'view', $aid);
}
else {
_debug_echo("adserve_counter_image: increment 'count' counter for no aid");
adserve_cache('increment', 'count', NULL);
}
if (function_exists('imagecreate')) {
$image = imagecreate(1, 1);
// Tell the web browser not to cache this image so we register a count each
// time the page is viewed.
// Expires in the past:
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
// Last loud:
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
// HTTP 1.1:
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', FALSE);
// HTTP 1.0:
header('Pragma: no-cache');
}
else {
// GD not installed, report error and exit.
exit;
}
if (function_exists('imagejpeg')) {
header("Content-type: image/jpeg");
imagejpeg($image);
}
else {
if (function_exists('imagepng')) {
header("Content-type: image/png");
imagepng($image);
}
else {
if (function_exists('imagegif')) {
header("Content-type: image/gif");
imagegif($image);
}
}
}
imagedestroy($image);
exit(0);
}