Lets try this:
in includes/functions.php find: $download_zip_button = ($target == "" && function_exists("gzcompress") && function_exists("crc32")) ? "<a href=\"".$site_sess->url(ROOT_PATH."download.php?action=zip&".URL_IMAGE_ID."=".$image_row['image_id'])."\"".$target."><img src=\"".get_gallery_image("download_zip.gif")."\" border=\"0\" alt=\"\" /></a>" : "";
Insert below: $site_sess->set_session_var("download_auth", time());
Then in download.php find:elseif ($image_id) {
Insert below: if (!$site_sess->get_session_var('download_auth'))
{
if (!function_exists("redirect")) { function redirect($url) { header("Location: ".$url); exit;}}
redirect($url);
}
$site_sess->drop_session_var('download_auth');
Now, in order to download a single image, you must first visit the site. If one tryed to hotlink the download link, it will simply redirect to your site.
P.S. this should work with all 4images versions.