
/* AAN TE PASSEN */

var ST_startDatum = new Date(2006,1,11); // jaar,maand,dag; maanden 1=januari, 2=februari etc.
var ST_eindDatum = new Date(2006,12,10);
var ST_steekProef = 1000000000; // 1 per hoeveel bezoekers wordt onderzocht?
var ST_paginaTekst = ' '

/* SVP NIET VERANDEREN */

/* Controleer cookie support */

var ST_cookiesSupported = false;
createCookie('ST_test','supported',1);

if (readCookie('ST_test'))
{
	ST_cookiesSupported = true;
	eraseCookie('ST_test');
}

/* Vind uit of het onderzoek begonnen is en de looptijd */

ST_startDatum.setMonth(ST_startDatum.getMonth() - 1);
ST_eindDatum.setMonth(ST_eindDatum.getMonth() - 1);
var ST_aankomstTijd = new Date();
var ST_loopTijdOnderzoek = parseInt((ST_eindDatum.getTime() - ST_aankomstTijd.getTime())/86400000); // in dagen
var ST_onderzoekBegonnen = (ST_startDatum.getTime() < ST_aankomstTijd.getTime());

/* Sla allereerste bezoek van gebruiker op, of hij nou geselecteerd is of niet */

if (!readCookie('ST_firstVisit') && ST_onderzoekBegonnen)
	createCookie('ST_firstVisit',createReadableDate(ST_aankomstTijd),ST_loopTijdOnderzoek);

/* Aantal bezoeken aan site. Een bezoek wordt gedefinieerd als een nieuw bezoek als er
	minstens 1 uur verstreken is sinds de laatste pagina is bezocht */

if (ST_onderzoekBegonnen)
{
	var ST_aantalBezoeken = readCookie('ST_numberOfVisits') || 0;
	ST_aantalBezoeken++;
	if (!readCookie('ST_lastVisitTime'))
		createCookie('ST_numberOfVisits',ST_aantalBezoeken,ST_loopTijdOnderzoek);
	createCookie('ST_lastVisitTime','true',(1/24));
}
/* Initialisatie hoofdscript */

addEvent(window,"load",ST_init);
var ST_newWindow;
var ST_loaded = false;

function ST_init()
{
	
	// geen cookies of onderzoek nog niet begonnen of beeindigd: doe niets

	if (!ST_cookiesSupported) return;
	if (!ST_onderzoekBegonnen) return;
	if (ST_loopTijdOnderzoek < 0 ) return; // WAT GEBEURT ER MET TEKST OP PAGINA?
	
	// vind status gebruiker
	
	var currentStatus = readCookie('ST_status');
	
	// als gebruiker niet geselecteerd is, doe niets
	
	if (currentStatus == 'nee') return;
	
	// als gebruiker wel geselecteerd is, of de selectie is nog niet gemaakt,
	// maak tekst onzichtbaar en zet de functie die data naar popup stuurt
	
	ST_loaded = true;
	addEvent(window,"unload",ST_exit); 
	var tekst = document.getElementById('sitetrekTekst');
	if (tekst) tekst.style.display = 'none';
	eraseCookie('ST_temp_store');
	
	// als gebruiker al geselecteerd is, eindig hier
	
	if (currentStatus == 'ja') return; // gebruiker al eerder geselecteerd; we hebben nu alles voor hem gedaan
	
	// Nieuwe gebruiker; bepaal selectie & zo ja zet popupopener en tekst
	
	var ST_geselecteerd = (Math.random()*ST_steekProef < 1)
	if (!ST_geselecteerd)
	{
		createCookie('ST_status','nee',1);
		return;
	}
	if (tekst) 
	{
		tekst.innerHTML = ST_paginaTekst;
		tekst.style.display = 'block';
	}
	createCookie('ST_status','ja',ST_loopTijdOnderzoek);
	addEvent(document,"click",ST_openPopup);
	createCookie('ST_referrer',top.document.referrer,1);
}

function ST_openPopup()
{
	if (readCookie('ST_popup')) return;
	ST_newWindow = window.open('/sitetrek/popup.html','ST_window','width=300,height=300,resizable=yes,scrollbars=yes');
	ST_newWindow.blur();
	removeEvent(document,"click",ST_openPopup);
}

function ST_exit()
{
	ST_loaded = false;
	var tijd = ST_timeOnPage();
	if (readCookie('ST_popup') == 'opened' && ST_newWindow)
		ST_newWindow.trackMain(location.href,tijd);
	else
		createCookie('ST_temp_store',location.href+',,'+tijd,1);
}


/* Extended tracking */

function ST_timeOnPage() // in seconden
{
	var eindTijd = new Date().getTime();
	var beginTijd = ST_aankomstTijd.getTime();
	var tijdOpPagina = parseInt((eindTijd - beginTijd)/1000);
	return tijdOpPagina;
}


/********************

      UTILITIES
      
********************/

/* By John Resig */

function addEvent( obj, type, fn ) 
{
	if (obj.addEventListener)
		obj.addEventListener( type, fn, false );
	else if ( obj.attachEvent ) 
	{
		obj["e"+type+fn] = fn;
		obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
		obj.attachEvent( "on"+type, obj[type+fn] );
	} 
}

function removeEvent( obj, type, fn ) 
{
	if ( obj.detachEvent ) 
	{
		obj.detachEvent( "on"+type, obj[type+fn] );
		obj[type+fn] = null;
	} 
	else if (obj.removeEventListener)
		obj.removeEventListener( type, fn, false );
}

/* PPK */

function createCookie(name,value,days)
{
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name)
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name)
{
	createCookie(name,"",-1);
}

function createReadableDate(dateObj)
{
	var dag = dateObj.getDate();
	var maand = dateObj.getMonth() + 1;
	var jaar = dateObj.getFullYear();
	return dag + '-' + maand + '-' + jaar;
}
