
function maximizeWindow(WindowObj){
	if (parseInt(navigator.appVersion)>3){
		if (navigator.appName=="Netscape"){
			if(WindowObj.screenX>0 || WindowObj.screenY>0) WindowObj.moveTo(0,0);
			if(WindowObj.outerWidth < screen.availWidth) WindowObj.outerWidth=screen.availWidth;
			if(WindowObj.outerHeight < screen.availHeight) WindowObj.outerHeight=screen.availHeight;
		} else {
			WindowObj.moveTo(-4,-4);
			WindowObj.resizeTo(screen.availWidth+8,screen.availHeight+8);
		}
	}
}


function NieuwVenster(waarheen){
	DetailVenster = window.open(waarheen,'Detail','toolbar=yes,location=yes,directories=yes,status=yes,scrollbars=yes,resizeable=yes,width=800,height=600');
	DetailVenster.focus();
}

function NaarWebsite(waarheen){
	DetailVenster = window.open(waarheen,'_blank');
	DetailVenster.focus();
}

function ShowVideo(devideo)
{
  var waarheen = 'http://www.twence.nl/shared%20resources/videos/?video='+devideo;
  DetailVenster = window.open(waarheen,'Detail','toolbar=no,location=no,directories=no,status=no,scrollbars=no,resizeable=no,width=612,height=450');
  DetailVenster.focus();
}

/// controleer opacity afhandeling voor browser
function ChkOpacityType(ObjectNaam){

	var browsertype;

	holderobject=document.getElementById(ObjectNaam);

	if(typeof holderobject.style.MozOpacity != 'undefined'){
		browsertype = 'moz';
	} else if(typeof holderobject.style.KhtmlOpacity != 'undefined'){
		browsertype = 'khtml';
	} else if(typeof holderobject.filters == 'object'){
		browsertype = (holderobject.filters.length > 0 && typeof holderobject.filters.alpha == 'object' && typeof holderobject.filters.alpha.opacity == 'number') ? 'ie' : 'none';
	} else if(typeof holderobject.style.opacity != 'undefined'){
		browsertype = 'w3c';
	} else {
		browsertype = 'none';
	}

	return browsertype;
}


function ZetAlpha(ObjectNaam,percentage){

	obj=document.getElementById(ObjectNaam);

	if(percentage > 0){

		alpha=percentage/100;

		var type = typeof chkbrowser == 'undefined' ? ChkOpacityType(ObjectNaam) : chkbrowser;

		switch(type){

			case 'ie' :	if (typeof obj.filters == 'object' && obj.filters.alpha){
						obj.filters.alpha.opacity = percentage;
					}  else {
						 obj.style.filter='alpha('+percentage+')';
					}
					break;

			case 'khtml' :	obj.style.KhtmlOpacity = alpha;
					break;

			case 'moz' :	obj.style.MozOpacity = (alpha >= 0.99 ? 0.99 : alpha);//Max opacity to prevent flicker in firefox
					break;

			case 'none' :	break;

			default : 	obj.style.opacity = (alpha >= 0.99 ? 0.99 : alpha);//Max opacity to prevent flicker in firefox

		}
		obj.style.display = '';
	} else {
		obj.style.display = 'none';
	}
}


function doorsturen_nieuwsbrief(vorm){

	var EmailOk = true;
	strEmail=vorm.mail.value;
	if(strEmail!=''){
		if(strEmail.indexOf('@',0)==-1 || strEmail.indexOf('.', 0)==-1) EmailOk = false;
	} else {
		EmailOk = false;
	}

	if(!EmailOk){
		alert('E-mail');
	} else {
		vorm.submit();
	}

}

function aanmelden_nieuwsbrief(vorm,aktie){

	var EmailOk = true;
	strEmail=vorm.NEWSLETTER_WRD_CONTACT_EMAIL.value;
	if(strEmail!=''){
		if(strEmail.indexOf('@',0)==-1 || strEmail.indexOf('.', 0)==-1) EmailOk = false;
	} else {
		EmailOk = false;
	}

	if(aktie=='aanmelden' && EmailOk){
		vorm.redirect_error.value='http://www.twence.nl/nieuwsbrief/inschrijven_fout.shtml';
		vorm.redirect_success.value='http://www.twence.nl/nieuwsbrief/inschrijven_succes.shtml';

		vorm.t.value='s';
		vorm.submit();
	}

	if(aktie=='afmelden' && EmailOk){
		vorm.redirect_error.value='http://www.twence.nl/nieuwsbrief/uitschrijven_fout.shtml';
		vorm.redirect_success.value='http://www.twence.nl/nieuwsbrief/uitschrijven_succes.shtml';

		vorm.t.value='u';
		vorm.submit();
	}

	if(!EmailOk) alert('E-mail');

}


function VerstuurContact(Vorm){
	Msg='';

	if(Vorm.Naam.value=='') Msg+=' - Naam ';
	//if(Vorm.Adres.value=='') Msg+=' - Adres ';
	//if(Vorm.Postcode.value=='') Msg+=' - Postcode ';
	//if(Vorm.Plaats.value=='') Msg+=' - Plaats ';
	//if(Vorm.Telefoon.value=='') Msg+=' - Telefoon ';
	if(Vorm.Email.value!=''){
		if(Vorm.Email.value.indexOf('@', 0)==-1 || Vorm.Email.value.indexOf('.', 0)==-1) Msg+= ' - E-mail ';
	} else {
		Msg+=' - E-mail ';
	}
	if(Vorm.Opmerking.value=='') Msg+=' - Opmerkingen of vragen ';

	if(Msg){
		alert('Controleer de volgende velden '+Msg);
	} else {
		Vorm.PMax.value='VerstuurContact';
		Vorm.submit();
	}
}


function numbersonly(myfield, e, dec){

	var key;
	var keychar;

	if(window.event){
		key = window.event.keyCode;
	} else if(e){
		key = e.which;
	} else {
		return true;
	}

	keychar = String.fromCharCode(key);

	// control keys
	if(key==null || key==0 || key==8 || key==9 || key==13 || key==27){
		return true;
	} else if((("0123456789").indexOf(keychar) > -1)){// numbers
		return true;
	} else {
		return false;
	}
}



function onPreload(aImages, nImages){
	if(nImages == Plaatjes.length){
		BlokeerInteraktie=false;

		if(Plaatjes.length>1) lightup();

		return;
	}
}


function lightup(){

	holderobject=document.getElementById('eerstetranspic');

	var type = typeof chkbrowser == 'undefined' ? ChkOpacityType('eerstetranspic') : chkbrowser;

	if(type!='none'){//alleen wisselen als opacity ondersteund wordt

		imageobject=document.getElementById('eerstepic');
		secimageobject=document.getElementById('tweedepic');

		CurrentOpacity+=Teken*Opacityoffset;

		SwitchPlaatje=false;
		if(CurrentOpacity <= 0 || CurrentOpacity >= 100){
			Teken*=-1;
			CurrentOpacity+=Opacityoffset*Teken;
			SwitchPlaatje=true;
		}

		ZetAlpha('eerstetranspic',CurrentOpacity);

		if(SwitchPlaatje && Plaatjes.length>2){
			StartNr++;

			if(StartNr>=Plaatjes.length) StartNr=0;
			//bij gelijke plaatjes maar volgende
			if(secimageobject.src==imageobject.src) StartNr++;

			if(Teken>0){
				imageobject.src=Plaatjes[StartNr];
			} else {
				secimageobject.src=Plaatjes[StartNr];
			}
		}

		setTimeout('lightup()',150);
	}

}



//Image preload routines staan hieronder
function ImagePreloader(images, callback){

	this.callback = callback;// store the callback

	this.nLoaded = 0;
	this.nProcessed = 0;
	this.aImages = new Array;
 
	this.nImages = images.length;

	for(var i=0; i < images.length; i++){// for each image, call preload()
		this.preload(images[i]);
	}
}


ImagePreloader.prototype.preload = function(image){

	// create new Image object and add to array
	//var oImage = new Image;
	var oImage = document.createElement("img"); // met new Image() werkt 't zeker niet!

	this.aImages.push(oImage);

	// set up event handlers for the Image object
	oImage.onload = ImagePreloader.prototype.onload;
	oImage.onerror = ImagePreloader.prototype.onerror;
	oImage.onabort = ImagePreloader.prototype.onabort;

	// assign pointer back to this.
	oImage.oImagePreloader = this;
	oImage.bLoaded = false;

	// assign the .src property of the Image object
	oImage.src = image;
}

ImagePreloader.prototype.onComplete = function(){
	this.nProcessed++;

	if(this.nProcessed == this.nImages){
		this.callback(this.aImages, this.nLoaded);
	}
}

ImagePreloader.prototype.onload = function(){
	this.bLoaded = true;
	this.oImagePreloader.nLoaded++;
	this.oImagePreloader.onComplete();
}

ImagePreloader.prototype.onerror = function(){
   this.bError = true;
   this.oImagePreloader.onComplete();
}

ImagePreloader.prototype.onabort = function(){
   this.bAbort = true;
   this.oImagePreloader.onComplete();

}
