0 )
{
$_SESSION [ "check" ] = md5 ( time () );
header("content-type: text/javascript"); # send javascript to browser
if ( $frames == 0 )
{
echo "f='' + escape(document.referrer);";
}
if ( $frames == 1 )
{
echo "f='' + escape(top.document.referrer);";
}
echo "\nw=screen.width;\nh=screen.height;\nv=navigator.appName;\n";
echo "if (v != 'Netscape') {var c=screen.colorDepth;}\nelse {var c=screen.pixelDepth;}\n";
echo 'jsinfo = "'.$script_domain.'/'.$script_path.'pixel.php?js_resolution=" + w + "x" + h + "&js_referer=" + f + "&js_color=" + c + "&js_url=" + escape(document.URL);';
echo "\n".'str = "
"';
echo "\n".'document.write(str+"");';
}
}
#######################
}
##############################################################################
if ( ( !$_COOKIE [ "dontcount" ] ) && ( $_GET [ "mode" ] != "js" ) && ( $_GET [ "js_url" ] ) && ( $_SESSION [ "check" ] ) ) # if cookie is set and javascript is not running, do not count
{
header ( "Content-Type: image/gif" ); # write image header
header ( "Content-Lenght: ".filesize ( "images/pixel.gif" ) ); # get filesize of image
readfile ( "images/pixel.gif" ); # send image to browser
##############################################################################
$js_resolution = addslashes ( str_replace ( "|" , "" , strip_tags ( $_GET [ "js_resolution" ] ) ) );
$js_color = addslashes ( str_replace ( "|" , "" , strip_tags ( $_GET [ "js_color" ] ) ) );
$js_referer = addslashes ( str_replace ( "|" , "" , strip_tags ( $_GET [ "js_referer" ] ) ) );
$js_url = addslashes ( str_replace ( "|" , "" , strip_tags ( $_GET [ "js_url" ] ) ) );
##############################################################################
$time_stamp = time (); # get unix timestamp
if ( $server_time == "+12h" ) { $time_stamp = $time_stamp + 12 * 3600; }
if ( $server_time == "+11h" ) { $time_stamp = $time_stamp + 11 * 3600; }
if ( $server_time == "+10h" ) { $time_stamp = $time_stamp + 10 * 3600; }
if ( $server_time == "+9,5h" ) { $time_stamp = $time_stamp + 9 * 3600 + 1800; }
if ( $server_time == "+9h" ) { $time_stamp = $time_stamp + 9 * 3600; }
if ( $server_time == "+8h" ) { $time_stamp = $time_stamp + 8 * 3600; }
if ( $server_time == "+7h" ) { $time_stamp = $time_stamp + 7 * 3600; }
if ( $server_time == "+6,5h" ) { $time_stamp = $time_stamp + 6 * 3600 + 1800; }
if ( $server_time == "+6h" ) { $time_stamp = $time_stamp + 6 * 3600; }
if ( $server_time == "+5,5h" ) { $time_stamp = $time_stamp + 5 * 3600 + 1800; }
if ( $server_time == "+5h" ) { $time_stamp = $time_stamp + 5 * 3600; }
if ( $server_time == "+4h" ) { $time_stamp = $time_stamp + 4 * 3600; }
if ( $server_time == "+3,5h" ) { $time_stamp = $time_stamp + 3 * 3600 + 1800; }
if ( $server_time == "+3h" ) { $time_stamp = $time_stamp + 3 * 3600; }
if ( $server_time == "+2h" ) { $time_stamp = $time_stamp + 2 * 3600; }
if ( $server_time == "+1h" ) { $time_stamp = $time_stamp + 1 * 3600; }
if ( $server_time == "-1h" ) { $time_stamp = $time_stamp - 1 * 3600; }
if ( $server_time == "-2h" ) { $time_stamp = $time_stamp - 2 * 3600; }
if ( $server_time == "-3h" ) { $time_stamp = $time_stamp - 3 * 3600; }
if ( $server_time == "-3,5h" ) { $time_stamp = $time_stamp - 3 * 3600 - 1800; }
if ( $server_time == "-4h" ) { $time_stamp = $time_stamp - 4 * 3600; }
if ( $server_time == "-5h" ) { $time_stamp = $time_stamp - 5 * 3600; }
if ( $server_time == "-6h" ) { $time_stamp = $time_stamp - 6 * 3600; }
if ( $server_time == "-7h" ) { $time_stamp = $time_stamp - 7 * 3600; }
if ( $server_time == "-8h" ) { $time_stamp = $time_stamp - 8 * 3600; }
if ( $server_time == "-9h" ) { $time_stamp = $time_stamp - 9 * 3600; }
if ( $server_time == "-10h" ) { $time_stamp = $time_stamp - 10 * 3600; }
if ( $server_time == "-11h" ) { $time_stamp = $time_stamp - 11 * 3600; }
##############################################################################
$ip_address = explode ( "." , getenv ( "REMOTE_ADDR" ) );
$include_file = "func/pattern_ip_addresses/".$ip_address [ 0 ].".php";
if ( file_exists ( $include_file ) )
{
include ( $include_file );
$temp_code = ( $ip_address [ 0 ] * 16777216 ) + ( $ip_address [ 1 ] * 65536 ) + ( $ip_address [ 2 ] * 256 ) + ( $ip_address [ 3 ] );
foreach ( $ranges as $key => $value )
{
if ( $key <= $temp_code )
{
if ( $ranges [ $key ] [ 0 ] >= $temp_code )
{
$country = $ranges [ $key ] [ 1 ];
break;
}
}
}
}
else
{
$country = "";
}
unset ( $include_file );
unset ( $temp_code );
unset ( $ranges );
if ( $country != "" )
{
$country = strtolower ( $country );
}
##############################################################################
$ip_address = getenv ( "REMOTE_ADDR" );
$browser = strip_tags ( browser_detection ( $_SERVER [ "HTTP_USER_AGENT" ] ) ); # get browser
$operating_system = strip_tags ( operating_system_detection ( $_SERVER [ "HTTP_USER_AGENT" ] ) ); # get operating system
##############################################################################
$temp_site_name = substr ( strstr ( substr ( $js_url , 7 ) , "/" ) , 1 );
$temp_url = parse_url ( $js_url );
parse_str ( $temp_url [ "query" ] , $temp_parameter );
$temp_check_name_value = 0;
$temp_name = substr ( basename ( $js_url ) , 0 , strpos ( basename ( $js_url ) , "?" ) );
foreach ( $temp_parameter as $key=>$value )
{
if ( in_array ( $key , $url_parameter ) )
{
$temp_check_name.= $key."=".$value."&";
$temp_check_name_value = 1;
}
}
if ( $temp_check_name_value == 1 )
{
$temp_check_name = $temp_name."?".substr ( $temp_check_name , 0 , strlen ( $temp_check_name ) - 1 );
$site_name = pattern_matching ( "site_name" , $temp_check_name ); # check site name
}
if ( $temp_check_name_value == 0 )
{
if ( strpos ( $temp_site_name , "." ) === FALSE )
{
$temp_site_name = $temp_site_name.$home_site_name;
}
$site_name = pattern_matching ( "site_name" , $temp_site_name ); # check site name
}
unset ( $temp_url );
unset ( $temp_parameter );
unset ( $temp_name );
unset ( $temp_site_name );
unset ( $temp_check_name );
##############################################################################
$resolution = pattern_matching ( "resolution" , $js_resolution ); # check pattern resolution
$browser = pattern_matching ( "browser" , $browser ); # check pattern browser
$operating_system = pattern_matching ( "operating_system" , $operating_system ); # check pattern operating system
if ( trim ( $js_referer ) != "" ) # if referer is empty, no saving
{
if ( strpos ( $js_referer , "translate.google" ) > 0 )
{
$referer = pattern_matching ( "referer" , "http://translate.google.com" ); # check pattern referer
}
else
{
$referer = pattern_matching ( "referer" , $js_referer ); # check pattern referer
}
}
else
{
$referer = "";
}
##############################################################################
foreach ( $exception_domain as $value ) # check if the call comes from within
{
if ( strpos ( $js_url , $value ) > 0 )
{
$write_logfile_entry = 1;
}
}
##############################################################################
if ( in_array ( $ip_address , $exception_ip_addresses ) )
{
$write_logfile_entry = 0;
}
else
{
$write_logfile_entry = 1;
}
##############################################################################
if ( $write_logfile_entry == 1 )
{
$log_file = fopen ( "log/logdb.dta" , "a+" ); # open logfile
fwrite ( $log_file , $time_stamp."|".$ip_address."|".$browser."|".$operating_system."|".$site_name."|".$referer."|".$resolution."|".$js_color."|".$country."\n" ); # write log entry
fclose ( $log_file ); # close logfile
unset ( $log_file ); # kill var
}
}
?>