// Copyright (c)2008 Site Meter, Inc. 
// <![CDATA[

var cookiesEnabled = "1";
if ( document.cookie == "" ) {
	document.cookie = "cookies=yes";
	if ( document.cookie == "" )
		cookiesEnabled = "0";
	else
		document.cookie = "";
}

var SiteMeter2 =
{
	init:function( newSiteID )
	{
		SiteMeter2.siteID = newSiteID;
		SiteMeter2.trackingImage = new Image();

		if ( typeof( g_lastSiteID ) != 'undefined' )
			if ( g_lastSiteID == newSiteID )
				return;
				
		SiteMeter2.onPageLoad( );
//		if (!SiteMeter2.addEvent( window, "load", SiteMeter.displayCounter ))
//			SiteMeter2.onPageLoad();
		
		if ( detectClicks )
			SiteMeter2.addEvent( window, "load", SiteMeter2.trackOutClicks );

	},
	
	trackOutClicks:function( )
	{
		for( var i = 0; i < document.links.length; i++ )
		{
			SiteMeter2.addEvent( document.links[i], "click", SiteMeter2.onClick );
//			SiteMeter2.addEvent( document.links[i], "contextmenu", SiteMeter2.onContextClick );			
		}
		
	},

	onPageLoad:function()
	{
		var newImage = document.createElement( "img" );
		var newHref = document.createElement( "a" );
		var scriptRef = SiteMeter2.getScriptElement( );

//		var newIFrame = document.createElement("iframe");
//		newIFrame.frameBorder=0;
//		newIFrame.marginwidth=0;
//		newIFrame.marginheight=0;
//		newIFrame.scrolling='no';
//		newIFrame.width = frameWidth;
//		newIFrame.height = frameHeight;
//		newIFrame.src = "http://dgb.specificclick.net/?site=" + SiteMeter2.siteID; 

		var dateToday = new Date();
		var timeZoneOffset = ( typeof( dateToday.getTimezoneOffset )!= 'undefined' ) ? dateToday.getTimezoneOffset( ) : '';
		
		newHref.target = "_top";
//		newHref.href = "http://www.sitemeter.com/stats.php?site=" + SiteMeter2.siteID;
		newHref.href = "http://www.sitemeter.com/";
		newHref.id = "idSiteMeter2HREF";
		
		newImage.border = "0";
		newImage.alt = "SiteMeter";
		
		var sImage = "http://tr.sitemeter.com/track?site=" + SiteMeter2.siteID; 
		sImage += "&u=" + encodeURIComponent( window.location.href );
		sImage += "&r=" + SiteMeter2.getReferral( );
		sImage += "&jsid=kmc7SoVGjOuLqk7sSf0v";
		sImage += "&w=" + window.screen.width; 
		sImage += "&h=" + window.screen.height;
		sImage += "&clr=" + window.screen.colorDepth;
		sImage += "&tzo=" + timeZoneOffset;
		sImage += "&lang=" + encodeURIComponent( navigator.language ? navigator.language : navigator.userLanguage );
		sImage += "&js=" + jsVersion;
		sImage += "&ck=" + cookiesEnabled;
		sImage += "&flv=" + encodeURIComponent( flashVer );
		sImage += "&rnd=" + Math.random( );
		
		newImage.src = sImage;
		newHref.appendChild(newImage);
		var parentOfScript = SiteMeter2.getParent( scriptRef );
		
		if (parentOfScript){
			parentOfScript.insertBefore(newHref,scriptRef);
		}
		else
			SiteMeter2.trackingImage.src = sImage;
	},
	
	logEvent:function(sEvent, sText, sURL )
	{
		if (document.images && !SiteMeter2.isLocalURL(sURL))
		{
			var sImg = "http://tr.sitemeter.com/track?site=" + SiteMeter2.siteID; 
			sImg += "&jsid=kmc7SoVGjOuLqk7sSf0v";
			sImg += "&e=" + sEvent;
			sImg += "&l=" + encodeURIComponent( sURL );
			sImg += "&t=" + encodeURIComponent( sText );
			sImg += "&u="+ encodeURIComponent( window.location.href );
			if ( SiteMeter2.trackingImage )
				SiteMeter2.trackingImage.src = sImg;
		}
	},
	
	trimFragment:function(sString)
	{
		return sString.indexOf("#")>0?sString.substring(0, sString.indexOf("#")):sString;
	},
	
	isLocalURL:function(sURL)
	{
		return (SiteMeter2.trimFragment(document.location.href) == SiteMeter2.trimFragment(sURL));
	},
	
	getReferral:function()
	{
	 	var sRef="";
		var g_d = document;
		if (typeof(g_frames) != "undefined")
		if (g_frames)
			sRef=top.document.referrer;
		if ((sRef == "") || (sRef == "[unknown origin]") || (sRef == "unknown") || (sRef == "undefined"))
		if (document["parent"] != null) 
			if (parent["document"] != null) // ACCESS ERROR HERE!
				if (parent.document["referrer"] != null) 
					if (typeof(parent.document) == "object")
						sRef=parent.document.referrer; 
		if ((sRef == "") || (sRef == "[unknown origin]") || (sRef == "unknown") || (sRef == "undefined"))
		if (g_d["referrer"] != null) 
			sRef = g_d["referrer"];
		if ((sRef == "[unknown origin]") || (sRef == "unknown") || (sRef == "undefined"))
			sRef = "";
			
		return encodeURIComponent(sRef);
	},
	
	getParent:function(e)
	{
		if (!e)
			return null;
		else
			if (e.parentElement) 
				return e.parentElement;			
			else	
				if (e.parentNode)
					return e.parentNode;
				else
					return null;
	},
	
	getTarget:function(e)
	{
		var targ=null;
		if (!e) var e = window.event;
		if (e.target) 
			targ = e.target;
		else if (e.srcElement) 
			targ = e.srcElement;
		if (targ.nodeType) 
			if (targ.nodeType == 3) // Safari bug
				targ = targ.parentNode;
		return targ;
	},
	
	getScriptElement:function()
	{
		var refScript=null;
		refScript = document.getElementById( "SiteMeter2Script" );
		if (refScript)
			return refScript;
			
		var pageScripts = document.getElementsByTagName("script");
		for(var i=0;i<pageScripts.length;i++)
		{
			if (pageScripts[i].src)
			{
				var sSource = pageScripts[i].src.toLowerCase();
				if (sSource.indexOf("sitemeter.com/js/trackhit.js") > 0)
					return pageScripts[i];
			}
		}

		return null;
	},
	
	elementText:function(e)
	{
		do
		{
			var sText = (e.text)?e.text:e.innerText;
			if (sText) return sText.substr(0,100);
			if (e.alt) return e.alt;
			if (e.src) return e.src;
			e = SiteMeter2.getParent(e);
		}
		while (e);
		return "";
	},
	
	elementURL:function(e)
	{
		do
		{
			if ((e.href) && (e.nodeName.toUpperCase() == 'A')) return e.href;
			e = SiteMeter2.getParent(e);
		}
		while (e);
		return "";
	},
	
	onClick:function(e)
	{
		var target = SiteMeter2.getTarget(e);
		SiteMeter2.logEvent( "click", SiteMeter2.elementText(target), SiteMeter2.elementURL(target) );
	},
	
//	onContextClick:function(e)
//	{
//		var target = SiteMeter2.getTarget(e);
//		SiteMeter2.logEvent( "context", SiteMeter2.elementText(target), SiteMeter2.elementURL(target) );
//	},

	addEvent:function( obj, sEvent, func )
	{
		if (obj.addEventListener)
		    obj.addEventListener(sEvent, func, false);
		else 
			if (obj.attachEvent)	
			   obj.attachEvent( "on"+sEvent, func );
			else
				return false;
		return true;
	}

}

SiteMeter2.init( siteID );

var g_lastSiteID = siteID;
// ]]>