function fadeObjectIn(objectId)
{
	fadeObject = document.getElementById(objectId);
	
	if(fadeObject)
	{
		fade(fadeObject, 100, 1, 5);
	}
}

function fadeObjectOut(objectId)
{
	fadeObject = document.getElementById(objectId);
	
	if(fadeObject)
	{
		fade(fadeObject, 0, 1, 5);
	}
}

function showObject(sObject)
{
	
	usedObject = document.getElementById(sObject);
	
	if(usedObject)
	{
		usedObject.style.visibility =	'visible';
	}
}

function hideObject(sObject)
{
	usedObject = document.getElementById(sObject);
	
	if(usedObject)
	{
		usedObject.style.visibility = 'hidden';
	}
}

function loadImage(sObjectId, sImagePath)
{
	imgObj = document.getElementById(sObjectId);
	
	if(imgObj)
	{
		imgObj.src = sImagePath;
	}
}

function checkInput(obj, value)
{
	if(obj)
	{
		setMessage("");
		
		if(obj.value == value)
		{
			obj.value = "";
		}
		else if(obj.value == "")
		{
			obj.value = value;
		}
	}
}

function isEmpty(obj)
{
	if(obj.value == "") return true;
	return false;
}

function isEmail(obj)
{
	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	
	if (filter.test(obj.value)) return true;
	return false;
}

function isPostcode(obj)
{
	var filter = /^[1-9]{1}[0-9]{3}[a-zA-Z]{2}$/;
	
	if (filter.test(obj.value)) return true;
	return false;
}

function isSameAsTitle(obj)
{
	if(obj.value == obj.title) return true;
	return false;
}

function focusObject(obj)
{
	obj.focus();
}

function setMessageById(value, messageId)
{
	objMessage = document.getElementById(messageId);
	
	if(objMessage)
	{
		objMessage.innerHTML = value;
	}
}

function setMessage(value)
{
	objMessage = document.getElementById('message');
	objMessageTwo = document.getElementById('messageTwo');
	
	
	if(objMessage)
	{
		objMessage.innerHTML = value;
	}
	else if(objMessageTwo)
	{
		objMessageTwo.innerHTML = value;
	}
}

function setRegisterMessage(value)
{
	objMessageThree = document.getElementById('messageThree');
	
	if(objMessageThree)
	{
		objMessageThree.innerHTML = value;
	}
}

function addNieuwsbriefItem()
{
	objNaam = document.getElementById('id_mf_naam');
	objEmail = document.getElementById('id_mf_email');
	
	if(objNaam && objEmail)
	{
		if(isEmpty(objNaam) || isSameAsTitle(objNaam))
		{
			focusObject(objNaam);
			setMessageById("U bent vergeten uw naam in te vullen!","newsletterMessage");
			return;
		}
		
		if(isEmpty(objEmail) || isSameAsTitle(objEmail))
		{
			focusObject(objEmail);
			setMessageById("U bent vergeten uw email in te vullen!","newsletterMessage");
			return;
		}
		
		if(!isEmail(objEmail))
		{
			focusObject(objEmail);
			setMessageById("Het opgegeven emailadres is onjuist!","newsletterMessage");
			return;
		}
		
		document.getElementById('newsletterForm').submit();
	}
}

function addMailFriend()
{
	objNaam = document.getElementById('id_mf_naam');
	objEmail = document.getElementById('id_mf_email');
	
	if(objNaam && objEmail)
	{
		if(isEmpty(objNaam) || isSameAsTitle(objNaam))
		{
			focusObject(objNaam);
			setMessageById("U bent vergeten uw naam in te vullen!","mailfriendMessage");
			return;
		}
		
		if(isEmpty(objEmail) || isSameAsTitle(objEmail))
		{
			focusObject(objEmail);
			setMessageById("U bent vergeten uw email in te vullen!","mailfriendMessage");
			return;
		}
		
		if(!isEmail(objEmail))
		{
			focusObject(objEmail);
			setMessageById("Het opgegeven emailadres is onjuist!","mailfriendMessage");
			return;
		}
		
		document.mailFriendForm.submit();
	}
}

function addInformationItem()
{
	objNaam = document.getElementById('id_inf_naam');
	objStraat = document.getElementById('id_inf_straat');
	objPostcode = document.getElementById('id_inf_postcode');
	objWoonplaats = document.getElementById('id_inf_woonplaats');
	objTelefoon = document.getElementById('id_inf_telefoon');
	objEmail = document.getElementById('id_inf_email');
	
	
	if(objNaam && objStraat && objPostcode && objWoonplaats)
	{
		if(isEmpty(objNaam) || isSameAsTitle(objNaam))
		{
			focusObject(objNaam);
			setMessageById("U bent vergeten uw naam in te vullen!","informationMessage");
			return;
		}
		
		if(isEmpty(objStraat) || isSameAsTitle(objStraat))
		{
			focusObject(objStraat);
			setMessageById("U bent vergeten uw straat in te vullen!","informationMessage");
			return;
		}
		
		if(isEmpty(objPostcode) || isSameAsTitle(objPostcode))
		{
			focusObject(objPostcode);
			setMessageById("U bent vergeten uw postcode in te vullen!","informationMessage");
			return;
		}
		
		if(!isPostcode(objPostcode))
		{
			focusObject(objPostcode);
			setMessageById("De opgegeven postcode: <strong>" + objPostcode.value + "</strong> voldoet niet aan het formaat: 9999ZZ!","informationMessage");
			return;
		}
		
		if(isEmpty(objWoonplaats) || isSameAsTitle(objWoonplaats))
		{
			focusObject(objWoonplaats);
			setMessageById("U bent vergeten uw woonplaats in te vullen!","informationMessage");
			return;
		}
		
		if(isEmpty(objTelefoon) || isSameAsTitle(objTelefoon))
		{
			focusObject(objTelefoon);
			setMessageById("U bent vergeten uw telefoonnummer in te vullen!","informationMessage");
			return;
		}
		
		if(isEmpty(objEmail) || isSameAsTitle(objEmail))
		{
			focusObject(objEmail);
			setMessageById("U bent vergeten uw e-mailadres in te vullen!","informationMessage");
			return;
		}
		
		if(!isEmail(objEmail))
		{
			focusObject(objEmail);
			setMessageById("Het opgegeven e-mailadres is onjuist!","informationMessage");
			return;
		}
		
		document.getElementById('informationForm').submit();
	}
}


function login()
{
	objNaam = document.getElementById('idName');
	objPass = document.getElementById('idPassword');
	
	if(objNaam && objPass)
	{
		if(isEmpty(objNaam))
		{
			focusObject(objNaam);
			setMessage("U bent vergeten uw accountnaam in te vullen!");
			return;
		}
		
		if(!isEmail(objNaam))
		{
			focusObject(objNaam);
			setMessage("De opgegeven accountnaam is onjuist!");
			return;
		}
		
		if(isEmpty(objPass))
		{
			focusObject(objPass);
			setMessage("U bent vergeten uw wachtwoord in te vullen!");
			return;
		}
	}
	
	document.loginform.submit();
}

function registerCustomer()
{
	formOject = document.registerForm;
	
	for(var i=0; i<formOject.elements.length; i++)
	{
		var formElement = formOject.elements[i];
		
		if(formElement.type == "text")
		{
			if(formElement.name != "suffix")
			{
				if(isEmpty(formElement))
				{
					focusObject(formElement);
					setRegisterMessage("U bent vergeten uw <strong>" + formElement.title + "</strong> in te vullen!");
					return false;
				}
			}
			
			if(formElement.name == "postalcode")
			{
				if(!isPostcode(formElement))
				{
					focusObject(formElement);
					setRegisterMessage("De opgegeven postcode: <strong>" + formElement.value + "</strong> voldoet niet aan het formaat: 9999ZZ!");
					return false;
				}
			}
			
			if(formElement.name == "email")
			{
				if(!isEmail(formElement))
				{
					focusObject(formElement);
					setRegisterMessage("Het opgegeven email-adres: <strong>" + formElement.value + "</strong> is onjuist.");
					return false;
				}
			}
		}
	}
	
	// check password length
	
	var ps_one = document.getElementById('ps_one');
	var ps_two = document.getElementById('ps_two');
	
	if(ps_one && ps_two)
	{
		var pw = ps_one.value;
		
		if(pw.length < 6)
		{
			focusObject(ps_one);
			setRegisterMessage("Het opgegven wachtwoord is te kort, het moet minimaal 6 karakters bevatten.");
			return false;
		}
		
		if(ps_one.value != ps_two.value)
		{
			focusObject(ps_one);
			setRegisterMessage("De opgegeven wachtwoorden komen niet overeen.");
			return false;
		}
	}
	else
	{
		setRegisterMessage("Bepaalde form elementen zijn niet aanwezig");
		return false;
	}
	
	formOject.submit();
}

function completeOrder()
{
	formOject = document.formComplete;
	
	for(var i=0; i<formOject.elements.length; i++)
	{
		var formElement = formOject.elements[i];
		
		if(formElement.type == "text")
		{
			if(formElement.name != "suffix")
			{
				if(isEmpty(formElement))
				{
					focusObject(formElement);
					setRegisterMessage("U bent vergeten uw <strong>" + formElement.title + "</strong> in te vullen!");
					return false;
				}
			}
			
			if(formElement.name == "postalcode")
			{
				if(!isPostcode(formElement))
				{
					focusObject(formElement);
					setRegisterMessage("De opgegeven postcode: <strong>" + formElement.value + "</strong> voldoet niet aan het formaat: 9999ZZ!");
					return false;
				}
			}
		}
	}
		
	formOject.submit();
}

function addToShoppingCart()
{
	objMaat 		= document.getElementById('id_maat');
	objKleur 		= document.getElementById('id_kleur');
	objAantal 		= document.getElementById('id_aantal');
	
	if(objMaat)
	{
		if(isEmpty(objMaat))
		{
			focusObject(objMaat);
			setMessage("U bent vergeten een <strong>maat</strong> te kiezen!");
			return;
		}
	}
	
	if(objKleur)
	{
		if(isEmpty(objKleur))
		{
			focusObject(objKleur);
			setMessage("U bent vergeten een <strong>kleur</strong> te kiezen!");
			return;
		}
	}
		
	if(objAantal)
	{
		if(isEmpty(objAantal))
		{
			focusObject(objAantal);
			setMessage("U bent vergeten een <strong>aantal</strong> te kiezen!");
			return;
		}
	}
	
	document.shoppingcartform.submit();
}

// SLIDESHOW //
 
var fadearray=new Array() //array to cache fadeshow instances
var fadeclear=new Array() //array to cache corresponding clearinterval pointers
 
var dom=(document.getElementById) //modern dom browsers
var iebrowser=document.all
 
function fadeshow(theimages, fadewidth, fadeheight, borderwidth, delay, pause, displayorder){
this.pausecheck=pause
this.mouseovercheck=0
this.delay=delay
this.degree=10 //initial opacity degree (10%)
this.curimageindex=0
this.nextimageindex=1
fadearray[fadearray.length]=this
this.slideshowid=fadearray.length-1
this.canvasbase="canvas"+this.slideshowid
this.curcanvas=this.canvasbase+"_0"
if (typeof displayorder!="undefined")
theimages.sort(function() {return 0.5 - Math.random();}) //thanks to Mike (aka Mwinter) :)
this.theimages=theimages
this.imageborder=parseInt(borderwidth)
this.postimages=new Array() //preload images
for (p=0;p<theimages.length;p++){
this.postimages[p]=new Image()
this.postimages[p].src=theimages[p][0]
}
 
var fadewidth=fadewidth+this.imageborder*2
var fadeheight=fadeheight+this.imageborder*2
 
if (iebrowser&&dom||dom) //if IE5+ or modern browsers (ie: Firefox)
document.write('<div id="master'+this.slideshowid+'" style="position:relative;width:'+fadewidth+'px;height:'+fadeheight+'px;overflow:hidden;"><div id="'+this.canvasbase+'_0" style="position:absolute;width:'+fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);opacity:0.1;-moz-opacity:0.1;-khtml-opacity:0.1;background-color:'+fadebgcolor+'"></div><div id="'+this.canvasbase+'_1" style="position:absolute;width:'+fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);opacity:0.1;-moz-opacity:0.1;-khtml-opacity:0.1;background-color:'+fadebgcolor+'"></div></div>')
else
document.write('<div><img name="defaultslide'+this.slideshowid+'" src="'+this.postimages[0].src+'"></div>')
 
if (iebrowser&&dom||dom) //if IE5+ or modern browsers such as Firefox
this.startit()
else{
this.curimageindex++
setInterval("fadearray["+this.slideshowid+"].rotateimage()", this.delay)
}
}

function fadepic(obj){
if (obj.degree<100){
obj.degree+=10
if (obj.tempobj.filters&&obj.tempobj.filters[0]){
if (typeof obj.tempobj.filters[0].opacity=="number") //if IE6+
obj.tempobj.filters[0].opacity=obj.degree
else //else if IE5.5-
obj.tempobj.style.filter="alpha(opacity="+obj.degree+")"
}
else if (obj.tempobj.style.MozOpacity)
obj.tempobj.style.MozOpacity=obj.degree/101
else if (obj.tempobj.style.KhtmlOpacity)
obj.tempobj.style.KhtmlOpacity=obj.degree/100
else if (obj.tempobj.style.opacity&&!obj.tempobj.filters)
obj.tempobj.style.opacity=obj.degree/101
}
else{
clearInterval(fadeclear[obj.slideshowid])
obj.nextcanvas=(obj.curcanvas==obj.canvasbase+"_0")? obj.canvasbase+"_0" : obj.canvasbase+"_1"
obj.tempobj=iebrowser? iebrowser[obj.nextcanvas] : document.getElementById(obj.nextcanvas)
obj.populateslide(obj.tempobj, obj.nextimageindex)
obj.nextimageindex=(obj.nextimageindex<obj.postimages.length-1)? obj.nextimageindex+1 : 0
setTimeout("fadearray["+obj.slideshowid+"].rotateimage()", obj.delay)
}
}
 
fadeshow.prototype.populateslide=function(picobj, picindex){
var slideHTML=""
if (this.theimages[picindex][1]!="") //if associated link exists for image
slideHTML='<a href="'+this.theimages[picindex][1]+'" target="'+this.theimages[picindex][2]+'">'
slideHTML+='<img src="'+this.postimages[picindex].src+'" border="'+this.imageborder+'px">'
if (this.theimages[picindex][1]!="") //if associated link exists for image
slideHTML+='</a>'
picobj.innerHTML=slideHTML
}
 
 
fadeshow.prototype.rotateimage=function(){
if (this.pausecheck==1) //if pause onMouseover enabled, cache object
var cacheobj=this
if (this.mouseovercheck==1)
setTimeout(function(){cacheobj.rotateimage()}, 100)
else if (iebrowser&&dom||dom){
this.resetit()
var crossobj=this.tempobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
crossobj.style.zIndex++
fadeclear[this.slideshowid]=setInterval("fadepic(fadearray["+this.slideshowid+"])",50)
this.curcanvas=(this.curcanvas==this.canvasbase+"_0")? this.canvasbase+"_1" : this.canvasbase+"_0"
}
else{
var ns4imgobj=document.images['defaultslide'+this.slideshowid]
ns4imgobj.src=this.postimages[this.curimageindex].src
}
this.curimageindex=(this.curimageindex<this.postimages.length-1)? this.curimageindex+1 : 0
}
 
fadeshow.prototype.resetit=function(){
this.degree=10
var crossobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
if (crossobj.filters&&crossobj.filters[0]){
if (typeof crossobj.filters[0].opacity=="number") //if IE6+
crossobj.filters(0).opacity=this.degree
else //else if IE5.5-
crossobj.style.filter="alpha(opacity="+this.degree+")"
}
else if (crossobj.style.MozOpacity)
crossobj.style.MozOpacity=this.degree/101
else if (crossobj.style.KhtmlOpacity)
crossobj.style.KhtmlOpacity=this.degree/100
else if (crossobj.style.opacity&&!crossobj.filters)
crossobj.style.opacity=this.degree/101
}
 
 
fadeshow.prototype.startit=function(){
var crossobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
this.populateslide(crossobj, this.curimageindex)
if (this.pausecheck==1){ //IF SLIDESHOW SHOULD PAUSE ONMOUSEOVER
var cacheobj=this
var crossobjcontainer=iebrowser? iebrowser["master"+this.slideshowid] : document.getElementById("master"+this.slideshowid)
crossobjcontainer.onmouseover=function(){cacheobj.mouseovercheck=1}
crossobjcontainer.onmouseout=function(){cacheobj.mouseovercheck=0}
}
this.rotateimage()
}
