// JavaScript Document
var navi 		= navigator.appVersion;
var browserIE 	= false;
var browserIE6 	= false;
var browserSAF 	= false;
var scrollSpeed = 50;
var scrollHeight= 10;

if(navi.indexOf("MSIE")>-1){
	browserIE = true;
	var navAr = navi.split(";");
	browserIE6 = (parseFloat(navAr[1].split(" ")[2])<=6.0?true:false);
} else if(navi.indexOf("Safari")>-1){
	browserSAF = true;
}

var width_Avail 		= screen.availWidth;
var heigth_Avail 		= screen.availHeight;

window.moveTo(0,0);
window.resizeTo(width_Avail,heigth_Avail);

var innerWidth 	= 0;
var innerHeight = 0;

if(!browserSAF){
	innerWidth 	= parseInt((document.documentElement.clientWidth * 1));
	innerHeight	= parseInt((document.documentElement.clientHeight * 1));
}else{
	innerWidth 	= parseInt((document.documentElement.clientWidth * 1));
	innerHeight	= parseInt((document.documentElement.clientHeight * 1));
}

var middleX				= innerWidth / 2;
var middleY				= innerHeight / 2;

var mouseY 				= 0;
var mouseX 				= 0;
var relativeMouseY 		= 0;
var menuLeft 			= false;
var menuRight 			= false;
var scrollValue 		= 0;
var scrollDirection 	= 1;

var ColorWays 			= new Array(0,'#6E2A8D','#00B5CC','#FFD200','#273691','#EF3E42','#888927','#DB0962','#005DAA','#F78F1E','#8CC63F');
var ColorPick			= 0


var nr_ofcats 	= 0;
var activePage 	= 0;
var loginCheck 	= 0;
var productRows	= 0;

var emailCheckFailes 	= true;
var posShopContainer 	= 0;

var smallModus			= 0;
//alert(innerHeight);
if(innerWidth>1050 && innerHeight > 700){
	//smallModus = 1;
}

function init(){
	$('div_loader').setStyle('display','none');
	
	ColorPick = 1 + Math.floor(Math.random()*10)
	
	$('start_container').setStyle('left',(middleX-300)+'px');
	
	$('movieContainer').empty().addClass('loading');
	
	if($('enterContainer')){
		$('enterContainer').setStyle('display','block');
	}else{
		$('start_container').setStyle('display','block');
		
		$('div_container').setStyle('width',innerWidth+'px');
		$('div_container').setStyle('height',innerHeight+'px');
		
		$('container_overlay').setStyle('width',(1.5 * innerWidth)+'px');
		$('container_overlay').setStyle('height',1.5 * innerHeight+'px');
		
		//$('container_overlay').fade(0);
		
		$('menu_container_links').setStyle('display','block');
		$('menu_container').setStyle('left',(middleX-205)+'px');
		$('menu_container1').setStyle('top',10);
		$('menu_container2').setStyle('top',75);
		$('menu_container3').setStyle('top',150);
		$('menu_container4').setStyle('top',215);
		
		$('left_container').setStyle('height',innerHeight+'px');
		$('left_container').setStyle('left','-140px');
		$('right_container').setStyle('height',innerHeight+'px');
		$('right_container').setStyle('left',(innerWidth-410)+'px');
		
		$('dealer_container').setStyle('left',(middleX-80)+'px');
		$('dealer_container').setStyle('top',(innerHeight-185)+'px');
		
		posShopContainer = middleX-41;
		
		$('shop_container').setStyle('left',(middleX-41)+'px');
		$('cart_container').setStyle('left',(middleX+45)+'px');
			
		$('content_container').setStyle('left',(middleX-100)+'px');
		
		
		if(startSet){
			showTheDoopness();
		}
		
		loadSet = true;
		
		setMouseMove.delay(0);
		shoppingCartFlow();
	}
	
	if(browserIE6){
		$('messageContainer').setStyle('display','block');
	}
	
/*	if(FlashDetect.majorAtLeast(9)){
		var so = new SWFObject("movie.swf", "DOOP", 480, 250, "9", "86A098");
		so.addParam("wmode", "transparent"); 
		so.useExpressInstall('expressinstall.swf');
		so.write("movieContainer");
	}else{
		$('movieContainer').removeClass('loading');
		$('movieContainer').innerHTML = "<br><br><br>You need at least flashplayer 9 to see the 'DOOP' movietrailer.<br><br><br>Of course you do NOT need flashplayer to view the website.<br>Just click 'ENTER SITE' to get addicted.<br><br>Click <a href='http://www.adobe.com/products/flashplayer/' target='_blank'>here</a> to download flashplayer from Adobes website if you really want to see the movie.";
	}*/
	
		//$('cart_container').empty().addClass('loading');
	
	//loadNshow('flow_sideMenus.php', 'left_right_container', 'get');

	
	
	//removeStarter();
}

var loadSet = false
var startSet = false

function enterTheDoopness(veld){
	//alert(veld.value)
	//removeStarter();
	window.location = 'index.php?country='+veld.value
}

function removeStarter(){
	var myFx = new Fx.Tween($('start_container'),{duration:500, transition: Fx.Transitions.Cubic.easeOut, onComplete: function(){ 
		$('start_container').innerHTML = '';
		if(loadSet){
			showTheDoopness()
		}else{
			LoadText1.delay(1500);
			LoadText2.delay(2500);
			LoadText3.delay(4000);
			$('div_loader').setStyle('display','block');
		}
		startSet = true;
		}});
	myFx.start('top', -500);
}

function showTheDoopness(){
	//loadNshow('flow_shopping_cart.php','cart_container','get');
	setCartReady();
	setControlsReady();
	$('menu_container1').setStyle('background-color', ColorWays[ColorPick]);
	$('menu_container2').setStyle('background-color', ColorWays[ColorPick]);
	$('menu_container3').setStyle('background-color', ColorWays[ColorPick]);
	$('menu_container4').setStyle('background-color', ColorWays[ColorPick]);
	ChangeAnim('top', $('menu_container1'), 0, 500, Fx.Transitions.Cubic.easeOut);
	ChangeAnim('top', $('menu_container4'), 225, 500, Fx.Transitions.Cubic.easeOut);
	//$('div_container').fade('hide');
	$('div_container').setStyle('display','block');
	//$('div_container').fade('in');
	if(browserIE6){
		ie6PNGFix();
	}
}

function setControlsReady(){
	//$('left_container').setStyle('display','block');
	//$('right_container').setStyle('display','block');

	handleLeftMenu();
	handleRightMenu();
}

function setCartReady(){
	//$('cart_container').removeClass('loading');
	allowAdding 		= true;

	if($('shopping_cartVersion')){
		shopping_cartVersion = $('shopping_cartVersion').value;
	}
	
	productRows 			= $('productrows').value;
	$('cart_container').setStyle('height',(45 + productRows*22));
	
	if((shopMode==false && shopDeleteMode==false) || (productInfoMode==true)){
		var pos_y			= -22 * productRows;
		$('cart_container').setStyle('top',pos_y);
	}else{
		shopDeleteMode		= false;
		$('cart_container').setStyle('top',0);
	}
	
	$('cart_container').setStyle('display','block');
	
	var TipsInBasket = new Tips($$('.shopping_bg'),{ fixed: true, showDelay: 0, hideDelay: 0, className: 'shoppingTip', offsets: {'x': -140, 'y': 10} });
	
	var ListRemoveprod = $$('.deleteProd');
	ListRemoveprod.each(function(element) {
		element.addEvent('click', function(e){
			if(allowAdding==true){

				//TipsInBasket.detach($$('.shopping_bg'));
				
				var TipRemove = $$('.shoppingTip');
				TipRemove.each(function(element) {
					element.destroy();
				});
				new Event(e).stop();
				allowAdding	= false
				var prod 	= parseInt(element.getProperty('id').substring(7));								
				deleteProdFromBasket(prod);
			}
		});
	});	
	
	if(document.getElementById('logincheck').value == 0 || document.getElementById('stockcheck').value == 0 ){
	
		var TipsBuyNow = new Tips($('buyNow'));
		if($('buyNow')){
		$('buyNow').addEvent('click', function(e) {
			
			if(productInfoMode != false || modelInfoMode != false){
				closeProductInfo();
			}
			
			var Prev		= ColorPick;
			ColorPick 		= 1 + Math.floor(Math.random()*10)
			while(ColorPick==Prev){
				ColorPick 		= 1 + Math.floor(Math.random()*10)
			}
			
			var thisClick 	= 1;							   	
			
			if(activePage==5){
				activeDealer = 0;
				ChangeAnim('left', $('dealer_container'), (middleX-80), 500, Fx.Transitions.Cubic.easeOut);
				$('content_container').removeClass('dealers');
				$('closeDealers').fade(0);
				$('menu5').fade(1);
				$('dealer_container').setStyle('z-index',2);
			}
			//alert(thisClick);
			if(activePage != thisClick){
				//alert(activePage);
				setPage(thisClick);
			}
		});
		}
	}else{
		$('buyNow').addEvent('click', function(e) {
			openOrder = true;
			enterDoopMode();
			openPageInWindow('shopping_cart_blender.php');
		});
	}
}

function shoppingCartFlow(){
	$('cart_container').addEvent('mouseenter', function(){
		if(shopMode == false || productInfoMode == true){
			ChangeAnim('top', $('cart_container'), 0, 500, Fx.Transitions.Cubic.easeOut);
		}else if(shopMode == true && activePage!=0){
			ChangeAnim('top', $('cart_container'), 0, 500, Fx.Transitions.Cubic.easeOut);
		}
	});
 
	$('cart_container').addEvent('mouseleave', function(){
		if(shopMode == false || productInfoMode == true){
			ChangeAnim('top', $('cart_container'), (-22 * productRows), 500, Fx.Transitions.Cubic.easeOut);
		}else if(shopMode == true && activePage!=0){
			ChangeAnim('top', $('cart_container'), (-22 * productRows), 500, Fx.Transitions.Cubic.easeOut);
		}
	});
}

var goInPhaseTwo;


var LoadText1 = function(){
	$('div_loader_text').innerHTML = '&nbsp;loading products......';//setMenu.delay(700);
};
var LoadText2 = function(){
	$('div_loader_text').innerHTML = '&nbsp;loading models......';//setMenu.delay(700);
};
var LoadText3 = function(){
	$('div_loader_text').innerHTML = '&nbsp;loading images.......';//setMenu.delay(700);
};

var openOrder = false;

var shopping_cartVersion = 0;

var setMouseMove = function(){
	ChangeAnim('top', $('menu_container1'), 0, 500, Fx.Transitions.Cubic.easeOut);
	ChangeAnim('top', $('menu_container4'), 225, 500, Fx.Transitions.Cubic.easeOut);
	setMenu.delay(1000);
	
	var myElement 	= $(document.body);
	myElement.addEvent('mousemove', function(event){
		mouseY 			= event.page.y;											  
		mouseX 			= event.page.x;											  
		
		$('wrloading').setStyle('left', mouseX - 7);
		$('wrloading').setStyle('top', mouseY - 22);
	});
	
	$('div_container').addEvent('mousemove', function(event){
		mouseY 			= event.page.y;											  
		
		relativeMouseY 	= mouseY
		scrollValue 	= mouseY * (((countLefters * LefterHeight)-innerHeight)/innerHeight);
		$('left_container').scrollTo(0, scrollValue);
		$('right_container').scrollTo(0, scrollValue);
		
		mouseY 		= event.page.y + scrollValue;											  
		noModulus 	= mouseY/LefterHeight;
		modulus 	= Math.floor(noModulus);
		multiplier 	= modulus + 0.5 - noModulus;
		
		if(modulus<countLefters && modulus >=0){
			if(menuLeft) animateLefter(multiplier, modulus);
			if(menuRight) animateRighter(multiplier, modulus);
		}
	});
	
	$('div_container').addEvent('mouseenter', function(event){
		if(openOrder){
			
			var url					= 'checkVersion.php?id='+Math.random()*10000;
			var reqversionCheck 	= new Request({url:url, method: 'get',
			onSuccess: function(responseText) {
				if(responseText!=shopping_cartVersion){
					allowAdding 			= false;
					//alert(responseText);
					//alert(shopping_cartVersion);
					shopping_cartVersion = responseText;
					loadNshow('flow_shopping_cart.php','cart_container','get');
					reloadLeftFrame();
					allowAdding = true;
				}
			}});
			reqversionCheck.send();
				
		}
	});
	
	//$('left_container').fade('in');
	//$('right_container').fade('in');

};

function changeBackgroundColorLogo(ColorPick){
	ChangeAnim('background-color', 'menu_container1', ColorWays[ColorPick], 1000, Fx.Transitions.Cubic.easeOut);
	ChangeAnim('background-color', 'menu_container2', ColorWays[ColorPick], 1000, Fx.Transitions.Cubic.easeOut);
	ChangeAnim('background-color', 'menu_container3', ColorWays[ColorPick], 1000, Fx.Transitions.Cubic.easeOut);
	ChangeAnim('background-color', 'menu_container4', ColorWays[ColorPick], 1000, Fx.Transitions.Cubic.easeOut);
	
	if(browserIE6){
		ie6PNGFix();
	}
}


var setMenu 	= function (){
	loginCheck = $('isRegistered').value;
	if(loginCheck==1){
		$('menu6').setStyle('width','100px');
		$('menu7').setStyle('width','100px');
		$('menu1').setStyle('width','0px');
		$('menu2').setStyle('width','0px');
	}
	
	var menulist = $$('#menu_container_links .menuItem');
	menulist.each(function(element) {
		nr_ofcats++;
		var lefter = -5;
		//element.fade('hide');
		//element.addEvent('mouseenter', function(){
			//var thisClick = parseInt(element.getProperty('id').substring(4));							   	
			//ChangeAnim('top', 'btn'+thisClick, -25, 300, Fx.Transitions.Cubic.easeOut);
			//ChangeAnim('top', 'Actbtn'+thisClick, 0, 300, Fx.Transitions.Cubic.easeOut);

		//});
	 
		//element.addEvent('mouseleave', function(){
			//var thisClick = parseInt(element.getProperty('id').substring(4));							   	
			//ChangeAnim('top', 'btn'+thisClick, 0, 300, Fx.Transitions.Cubic.easeOut);
			//ChangeAnim('top', 'Actbtn'+thisClick, 25, 300, Fx.Transitions.Cubic.easeOut);
		//});
		
		element.addEvent('click', function(){
										   
			var Prev		= ColorPick;
			ColorPick 		= 1 + Math.floor(Math.random()*10)
			//while(ColorPick==Prev){
			//	ColorPick 		= 1 + Math.floor(Math.random()*10)
			//}
			
			var thisClick 	= parseInt(element.getProperty('id').substring(3));							   	
			
			if(activePage==5){
				activeDealer = 0;
				ChangeAnim('left', $('dealer_container'), (middleX-80), 500, Fx.Transitions.Cubic.easeOut);
				$('content_container').removeClass('dealers');
				$('closeDealers').fade(0);
				$('menu5').fade(1);
				$('dealer_container').setStyle('z-index',2);
			}
			
			//alert(thisClick);
			if(activePage != thisClick){
				//alert(activePage);
				setPage(thisClick);
			}
			//alert(1);
		});
	 	
		//var thisClick = parseInt(element.getProperty('id').substring(3));							   	
		//ChangeAnim('opacity', element, 1, (500*nr_ofcats), Fx.Transitions.Cubic.easeOut);
		//element.setStyle('display','block');
		//element.fade('in');

	});
	
	$('dealer_container').addEvent('mouseenter', function(){
		ChangeAnim('top', 'btn5', -25, 500, Fx.Transitions.Cubic.easeOut);
		ChangeAnim('top', 'Actbtn5', 0, 500, Fx.Transitions.Cubic.easeOut);
	});
 
	$('dealer_container').addEvent('mouseleave', function(){
		ChangeAnim('top', 'btn5', 0, 500, Fx.Transitions.Cubic.easeOut);
		ChangeAnim('top', 'Actbtn5', 25, 500, Fx.Transitions.Cubic.easeOut);
	});
	
	$('dealer_container').addEvent('click', function(){
		var Prev		= ColorPick;
		ColorPick 		= 1 + Math.floor(Math.random()*10)
		while(ColorPick==Prev){
			ColorPick 		= 1 + Math.floor(Math.random()*10)
		}
		
		
		if(activePage != 5){
			setPage(5);
		}else{
			hideContainerEasy();	
		}
	});
};

function setContainerDimensions(wi, he, le, to){
	$('content_container').setStyle('width',wi);
	$('content_container').setStyle('height',he);
	$('content_container').setStyle('left',le);
	$('content_container').setStyle('top',to);
}

function hideContainerEasy(){
	var myContentHider = new Fx.Morph('content_container', {duration: 500, transition: Fx.Transitions.Sine.easeOut});
	myContentHider.start({
		//'height': 0,
		//'width': 0,
		//'left': middleX,
		'opacity': 0,
		'top': -2000
	});
	$('content_container').fade(0);
	infoMode   = false;
	if(activePage==5){
		activeDealer = 0;
		ChangeAnim('left', $('dealer_container'), (middleX-80), 500, Fx.Transitions.Cubic.easeOut);
		$('content_container').removeClass('dealers');
		$('closeDealers').fade(0);
		$('menu5').fade(1);
		$('dealer_container').setStyle('z-index',2);
	}
	activePage = 0;
}

function setPage(pageNR){
	activePage = pageNR;
	ChangeAnim('top', $('cart_container'), (-22 * productRows), 500, Fx.Transitions.Cubic.easeOut);
	switch(pageNR){
		case 1:
			//login
			infoMode 	= true;
			//$('content_container').fade('hide');
			setContainerDimensions(500, 0, (middleX-261), 155);
			//alert('login')
			loadNshow('flow_login.php','content_container','get');
			//alert('login')
		break;	
		case 2:
			//create account
			infoMode 	= true;
			//allowAdding = false;
			$('content_container').fade('hide');
			setContainerDimensions(670, 520, (middleX-335), 38);
			loadNshow('flow_create_account.php','content_container','get');
		break;
		case 3:
			//guide
			infoMode 	= false;
			$('content_container').fade('hide');
			setContainerDimensions(670, 375, (middleX-335), 150);
			loadNshow('flow_guide.php','content_container','get');
		break;	
		case 4:
			//contact
			infoMode 	= true;
			$('content_container').fade('hide');
			setContainerDimensions(670, 465, (middleX-335), 100);
			loadNshow('flow_contact.php','content_container','get');
		break;	
		case 5:
			//delaers
			infoMode 	= true;
			$('content_container').fade('hide');
			$('menu5').fade(0);
			$('closeDealers').fade('hide');
			$('closeDealers').setStyle('display', 'block');
			$('closeDealers').fade(1);
			setContainerDimensions(160, 0, (middleX-360), middleY);
			loadNshow('flow_dealers.php','content_container','get');
		break;	
		case 6:
			$('content_container').fade('hide');
			//moet ff want anders kan je m niet meer openen....
			activePage = 101;
			openPageInWindow('account.php');
		break;
		case 7:
			setContainerDimensions(670, 400, (middleX-335), 105);
			loadNshow('flow_logoff.php','content_container','get');
		break;
	}
}

function openShopMenu(stage){
	var myShopShower = new Fx.Morph('shop_container', {duration: 300, transition: Fx.Transitions.Sine.easeOut});
	switch(stage){
		case 0:
			myShopShower.start({
				'width': 82,
				'left': posShopContainer
			});
		break;
		case 1:
			myShopShower.start({
				'width': 166,
				'left': posShopContainer - 84
			});
		break;
	}
}

//shop entering
var infoMode 		= false;
var shopMode 		= false;
var shopDeleteMode 	= false;
var allowAdding 	= true;

function closeDoopMode(){
	animateRighterToAnimate();
	ChangeAnim('top', $('cart_container'), (-22 * productRows), 500, Fx.Transitions.Cubic.easeOut);
	
	menuRight	= true;
	
	openShopMenu(0);
	
	shopMode	= false;
	
	ChangeAnim('width', 'left_container', 310, 500, Fx.Transitions.Cubic.easeOut);
	
	LeftList.each(function(element) {
		ChangeAnim('width', element, 210, 500, Fx.Transitions.Cubic.easeOut);
	});
	
	var submitListAdd = $$('.add_to_basket');
	submitListAdd.each(function(element) {
		element.removeEvent('click');
	});
	
	var submitListRemove = $$('.remove_from_basket');
	submitListRemove.each(function(element) {
		element.removeEvent('click')
	});

}

function enterDoopMode(){
	menuRight	= false;
	animateRighterToRoot();
	
	ChangeAnim('top', $('cart_container'), 0, 500, Fx.Transitions.Cubic.easeOut);
	
	if(activePage!=3){
		hideContainerEasy();
	}
	
	shopMode	= true;
	$('left_container').setStyle('width','450px');
	openShopMenu(1);
	LeftList.each(function(element) {
		ChangeAnim('width', element, 350, 500, Fx.Transitions.Cubic.easeOut);
	});
	
	var submitListAdd = $$('.add_to_basket');
	submitListAdd.each(function(element) {
		element.addEvent('click', function(e){
			if(allowAdding==true){
				new Event(e).stop();
				allowAdding		= false
				var id 			= parseInt(element.getProperty('id').substring(10));								
				var preloader 	= $('cart_container').empty().addClass('loading');
				
				var qty = parseInt($('quantity_'+id).getProperty('value'));
				qty+=1
				$('quantity_'+id).setProperty('value',qty);
				
				
				$('add_product_'+id).set('send', {
					method: 'post',
					data: $('add_product_'+id),                                      
					onSuccess: function(responseText, responseXML) {
						loadNshow('flow_shopping_cart.php','cart_container','get');				
						if(qty==1){
							$('submitRem_'+id).setStyle('display', 'block');
						}
					}
				});
				$('add_product_'+id).send($('add_product_'+id).action); 
	
			}
			
		});
	});
	
	var submitListRemove = $$('.remove_from_basket');
	submitListRemove.each(function(element) {
		element.addEvent('click', function(e){
			if(allowAdding==true){
				new Event(e).stop();
				allowAdding		= false
				var id 			= parseInt(element.getProperty('id').substring(10));								
				
				var qty = parseInt($('quantity_'+id).getProperty('value'));
				qty-=1
				$('quantity_'+id).setProperty('value',qty);
				
				var preloader 	= $('cart_container').empty().addClass('loading');
				$('add_product_'+id).set('send', {
					method: 'post',
					data: $('add_product_'+id),                                      
					onSuccess: function(responseText, responseXML) {
						if(qty==0){
							$('submitRem_'+id).setStyle('display', 'none');
						}
						loadNshow('flow_shopping_cart.php','cart_container','get');
					}
				});
				$('add_product_'+id).send('shopping_cart_remove.php'); 
			}
		});
	});
}

function deleteProdFromBasket(prod){
	//alert(prod);
	if($('quantity_'+prod)){
	$('quantity_'+prod).value 	= 0;
	$('submitRem_'+prod).setStyle('display', 'none');
	}
	if(productInfoMode){
		$('this_quantity').value 	= 0;
		$('productRem').setStyle('display', 'none');
	}
	
	$('cart_container').empty().addClass('loading');
		
	var url				= 'shopping_cart_remove_prod.php?products_id='+prod;
	var reqDeleteAll 	= new Request({url:url, method: 'get',
		onSuccess: function(responseText) {
		shopDeleteMode = true;
		loadNshow('flow_shopping_cart.php','cart_container','get');
	}});
	reqDeleteAll.send();

}

//login
function sendLogin(){
	$('loginform').addEvent('submit', function(e){
		new Event(e).stop();
		$('content_container').addClass('loading');
        this.set('send', {
			method: 'post',
			data: $('loginform'),                                      
			onSuccess: function(responseText, responseXML) {
				$('content_container').removeClass('loading');
				$('content_container').set('html', responseText);
				if(document.getElementById('loginsucces').value==1){
					var preloader = $('cart_container').empty().addClass('loading');
					//reset buttons;
					switchLoginModus(1);
				}else{
					$('div_login_left').setStyle('background-color', ColorWays[ColorPick]);	
					sendLogin();
				}
			}
        });
        this.send(this.action); 
	});
}

function switchLoginModus(onOff){
	$('isRegistered').value = onOff;
	loginCheck				= onOff;
	switch(onOff){
		case 0:
			//off
			$('menu1').setStyle('width',100);
			$('menu2').setStyle('width',100);
			$('menu6').setStyle('width',0);
			$('menu7').setStyle('width',0);
		break;
		case 1:
			//on
			$('menu6').setStyle('width',100);
			$('menu7').setStyle('width',100);
			$('menu1').setStyle('width',0);
			$('menu2').setStyle('width',0);
		break;
	}
	
	loadNshow('flow_shopping_cart.php','cart_container','get');
	reloadLeftFrame();
	
}

function reloadLeftFrame(){
	$('left_container').empty().addClass('loading');
	menuLeft = false;
	loadNshow('flow_leftmenu.php', 'left_container', 'get')
	//if loaded check shopmode....
}

//account
function validateForm(form){
	return check_form(form);
//	return true;
}

function sendCreateAccount(){
	$('country').addEvent('change', function(){
    	//load corresponding states
		var country = parseInt($('country').value);
		if(country > 0){
			
			$('zoneSelecter').addClass('loading');
			$('zoneSelecter').innerHTML = '';
			$('zoneSelecter').load('flow_zoneSelecter.php?country='+country)
			
			$('hairdressers').innerHTML = '';
			//$('hairdressers').load('flow_hairdressersList.php?country='+country)
			var url				= 'flow_hairdressersList.php?country='+country;
			var reqKappers	 	= new Request({url:url, method: 'get',
			onSuccess: function(responseText) {
				$('hairdressers').innerHTML = responseText;
			}});
			reqKappers.send();
				
			
		}
	});
	
	$('noDoopCode').addEvent('click', function(){
    	//show / hide kapperselecter
		if($('noDoopCode').checked){
			ChangeAnim('height', 'hairdressers', 105, 500, Fx.Transitions.Cubic.easeOut);
			$('doop_code').value 				= '';
			$('your_hairdressers').innerHTML 	= '';
			doopcodeCheck 						= false;
			ChangeAnim('height', 'your_hairdressers', 0, 400, Fx.Transitions.Cubic.easeOut);
		}else{
			ChangeAnim('height', 'hairdressers', 0, 500, Fx.Transitions.Cubic.easeOut);
		}
	});
	
	$('accountform').addEvent('submit', function(e){
		
		var kappercheck = false;
		$('doop_code').addClass('error');

		if(doopcodeCheck == false){
			if($('hairdresser')){
				var hairdr = parseInt($('hairdresser').value);
				$('hairdresserTXT').addClass('error');
				$('hairdresser').addClass('error');
				if($('noDoopCode').checked == true && hairdr != 0){
					$('hairdresserTXT').removeClass('error');
					$('hairdresser').removeClass('error');
					$('doop_code').removeClass('error');
					kappercheck = true;
				}else if($('noDoopCode').checked == true && $('hairdresserTXT').value != ''){
					$('hairdresserTXT').removeClass('error');
					$('hairdresser').removeClass('error');
					$('doop_code').removeClass('error');
					kappercheck = true;
				}
			}
			if($('noDoopCode').checked == true){
				$('doop_code').removeClass('error');
			}
		}else{
			$('doop_code').removeClass('error');
			kappercheck = true;
		}
		
		//alert(kappercheck);
		
		ChangeAnim('height', 'form_error_message', 0, 400, Fx.Transitions.Cubic.easeOut);
		
		new Event(e).stop();
		$('content_container').addClass('loading');
		
		//check of alles ingevuld
		if(validateForm('accountform') && kappercheck==true){
			
			$('accountform').set('send', {
				method: 'post',
				data: $('accountform'),                                      
				onSuccess: function(responseText, responseXML) {
					$('content_container').removeClass('loading');
					$('content_container').set('html', responseText);
					switchLoginModus(1);
					//alert('luck');
				}
			});
			if(!emailCheckFailes){
				this.send(this.action); 
			}
		}else{
			ChangeAnim('height', 'form_error_message', 20, 400, Fx.Transitions.Cubic.easeOut);
			//alert(error_message);
			//alert(emailCheckFailes)
			
			//sendCreateAccount();	
		}
	});
}

function loadNshow(url, target, method){
	//	var preloader = $(target).empty().addClass('loading');
	//alert(-1);
	$('wrloading').setStyle('display', 'block');
	var req = new Request({url: url,
	    method: method,
	   	onSuccess: function(responseText) {
			//alert(0);
//			preloader.removeClass('loading');
			switch(target){
				case 'container_overlay':
					
					$('container_overlay').setStyle('left',0);
					
					var output 	= req.response.text
					
					$('container_overlay').innerHTML = output;
					$('container_overlay').removeClass('loading');
					
					if(modelInfoMode){
						$('container_overlay').setStyle('left',-middleX);
						$('infoDetail_close').setStyle('left',middleX + 45);
						$('infoDetail_center_top').setStyle('left',middleX + 20);
						$('aboutProduct').setStyle('left',middleX + 125);
						
						$('addictSmallImage').fade('hide');
						$('addictSmallImageOverlay').fade('hide');
						$('addictInfoDetails').setStyle('display','block');
						
						$('addictBigImage').setStyle('height',innerHeight);
						$('addictBigImage').setStyle('width',middleX);
						$('addictBigImage').setStyle('left',innerWidth);
						$('aboutModel').setStyle('display','none');
						$('aboutProduct').setStyle('display','block');
						$('addictIndicator').addClass('product');
						
						var so = new SWFObject("model.swf", "DOOP", innerWidth, innerHeight, "9", "86A098");
						so.addVariable("model", clickedModel); 
						so.addParam("wmode", "transparent"); 
						so.useExpressInstall('expressinstall.swf');
						so.write("addictBigImage");
						
					}else{
						$('addictInfoDetails').fade('hide');
						$('addictInfoDetails').setStyle('display','block');
						$('infoDetail_close').setStyle('left',middleX-41);
						$('infoDetail_center_top').setStyle('left',middleX-105);
					}
					
					$('infoImage').setStyle('left',middleX-450);
					$('infoImage').setStyle('top',innerHeight-600);
					$('infoDetail_left').setStyle('left',10);
					$('infoDetail_right').setStyle('left',innerWidth-250);
					
					if((middleY-300)<0){
						$('infoDetail_left').setStyle('top',10);
						$('infoDetail_right').setStyle('top',10);
					}else{
						$('infoDetail_left').setStyle('top',middleY-300);
						$('infoDetail_right').setStyle('top',middleY-300);
					}
					
					$('infoDetail_close').setStyle('top',10);
					$('infoDetail_center_top').setStyle('top',100);
					
					
					$('productAdd').addEvent('click', function(e){
						if(allowAdding==true){
							new Event(e).stop();
							allowAdding		= false
							var preloader 	= $('cart_container').empty().addClass('loading');
							
							var qty = parseInt($('this_quantity').getProperty('value'));
							qty+=1
							$('this_quantity').setProperty('value',qty);
							
							var id 			= parseInt($('this_products_id').value);								
							$('quantity_'+id).setProperty('value',qty);
				
							$('add_this_product').set('send', {
								method: 'post',
								data: $('add_this_product'),                                      
								onSuccess: function(responseText, responseXML) {
									if(qty==1){
										$('productRem').setStyle('display', 'block');
										$('submitRem_'+id).setStyle('display', 'block');
									}
									loadNshow('flow_shopping_cart.php','cart_container','get');
								}
							});
							$('add_this_product').send($('add_this_product').action); 
						}
					});
					
					
					$('productRem').addEvent('click', function(e){
						if(allowAdding==true){
							new Event(e).stop();
							allowAdding		= false
							var preloader 	= $('cart_container').empty().addClass('loading');
							
							var qty = parseInt($('this_quantity').getProperty('value'));
							qty-=1
							$('this_quantity').setProperty('value',qty);
				
							var id 			= parseInt($('this_products_id').value);								
							$('quantity_'+id).setProperty('value',qty);
				
							$('add_this_product').set('send', {
								method: 'post',
								data: $('add_this_product'),                                      
								onSuccess: function(responseText, responseXML) {
									loadNshow('flow_shopping_cart.php','cart_container','get');				
									if(qty==0){
										$('productRem').setStyle('display', 'none');
										$('submitRem_'+id).setStyle('display', 'none');
									}
								}
							});
							$('add_this_product').send('shopping_cart_remove.php'); 
						}
					});
					if(browserIE6){
						ie6PNGFix();
					}
				break;
				/*case 'left_right_container':
					var output 	= req.response.text
					var result 	= output.split('####')
					$('left_container').innerHTML = result[0];
					$('right_container').innerHTML = result[1];
					$('left_container').setStyle('display','block');
					$('right_container').setStyle('display','block');
	
					handleLeftMenu();
					handleRightMenu();
				break;
				*/case 'left_container':
					var output 	= req.response.text;
					$('left_container').innerHTML = output;
					$('left_container').removeClass('loading');
					countLefters 	= 0
					handleLeftMenu();
					
					if(shopMode){
						enterDoopMode();	
					}
					if(browserIE6){
						ie6PNGFix();
					}
				break;
				case 'content_container':
						//alert(1);
					changeBackgroundColorLogo(ColorPick)
					$('content_container').setStyle('display','block');
					$(target).innerHTML = req.response.text;
					switch(activePage){
						case 1:
						//alert(2);
							//login
							$('div_login_left').setStyle('background-color', ColorWays[ColorPick]);
							var myContentShower1 = new Fx.Morph('content_container', {duration: 300, transition: Fx.Transitions.Sine.easeOut});
							myContentShower1.start({
								'height': 155,
								'top': 0
							});
							sendLogin();	
						break;
						case 2:
							sendCreateAccount();
						break;
						case 5:
							//dealers
							$('content_container').addClass('dealers');
							var myContentShower2 = new Fx.Morph('content_container', {duration: 500, transition: Fx.Transitions.Sine.easeOut});
							myContentShower2.start({
								'height': innerHeight,
								'top': 0
							});
							
							if($('dealersScrollContent')){
								$('dealersScrollContent').setStyle('height', (innerHeight-80));
								$('dealersScrollContent_down').setStyle('top', (innerHeight-35));
								setScrollInit('dealersScrollContent');
							}
						break;
						case 7:
							switchLoginModus(0);
						break;
					}
					$('content_container').fade('in');
				break;
				case 'cart_container':
					
					//$('cart_container').removeClass('loading');
					allowAdding 		= true;

					$(target).innerHTML = req.response.text;
					
					if($('shopping_cartVersion')){
						shopping_cartVersion = $('shopping_cartVersion').value;
					}
					//22 is height row
					productRows 			= $('productrows').value;
					$('cart_container').setStyle('height',(45 + productRows*22));
					
					if((shopMode==false && shopDeleteMode==false) || (productInfoMode==true)){
						var pos_y			= -22 * productRows;
						$('cart_container').setStyle('top',pos_y);
					}else{
						shopDeleteMode		= false;
						$('cart_container').setStyle('top',0);
					}
					
					$('cart_container').setStyle('display','block');
					
					var TipsInBasket = new Tips($$('.shopping_bg'),{ fixed: true, showDelay: 0, hideDelay: 0, className: 'shoppingTip', offsets: {'x': -140, 'y': 10} });
					
					var ListRemoveprod = $$('.deleteProd');
					ListRemoveprod.each(function(element) {
						element.addEvent('click', function(e){
							if(allowAdding==true){

								//TipsInBasket.detach($$('.shopping_bg'));
								
								var TipRemove = $$('.shoppingTip');
								TipRemove.each(function(element) {
									element.destroy();
								});
								new Event(e).stop();
								allowAdding	= false
								var prod 	= parseInt(element.getProperty('id').substring(7));								
								deleteProdFromBasket(prod);
							}
						});
					});	
					
					if(document.getElementById('logincheck').value == 0 || document.getElementById('stockcheck').value == 0 ){
						var TipsBuyNow = new Tips($('buyNow'));
						
						if($('buyNow')){
						$('buyNow').addEvent('click', function(e) {
							
							if(productInfoMode != false || modelInfoMode != false){
								closeProductInfo();
							}
							
							var Prev		= ColorPick;
							ColorPick 		= 1 + Math.floor(Math.random()*10)
							while(ColorPick==Prev){
								ColorPick 		= 1 + Math.floor(Math.random()*10)
							}
							
							var thisClick 	= 1;							   	
							
							if(activePage==5){
								activeDealer = 0;
								ChangeAnim('left', $('dealer_container'), (middleX-80), 500, Fx.Transitions.Cubic.easeOut);
								$('content_container').removeClass('dealers');
								$('closeDealers').fade(0);
								$('menu5').fade(1);
								$('dealer_container').setStyle('z-index',2);
							}
							//alert(thisClick);
							if(activePage != thisClick){
								//alert(activePage);
								setPage(thisClick);
							}
						});
						}
					}else{
						$('buyNow').addEvent('click', function(e) {
							openOrder = true;
							enterDoopMode();
							openPageInWindow('shopping_cart_blender.php');
						});
					}
					
				break;
			}
			$('wrloading').setStyle('display', 'none');
		},
		onFailure: function() {
			$(target).set('innerHTML', 'The request failed.');
		}
	});
	req.send();
}

function openPageInWindow(page){
	besch_1 = 800;
	besch_2 = screen.availHeight;
  	boven  = 0;
	links  = (screen.availWidth - 800)/2;
	window.open(page,'DOOP','left='+links+',top='+boven+',width='+besch_1+',height='+besch_2+',scrollbars=yes,toolbar=no,location=no,statusbar=no'); 
}

var countLefters 	= 0;
var countRighters 	= 0;
var step0 		 	= 0;
var step1 		 	= 33;
var step2 		 	= 66;
var step3 		 	= 99;
var LefterHeight	= 85;
var RighterHeight 	= 85;
var UpperRight	 	= innerWidth - 70;
var LeftList;
var RightList;

function mouseOverInfo(element){
	
	var tiptextValue  	= element.getProperty('title');
	
	//product
	var hold  			= $('hold_'+tiptextValue).getProperty('value');
	var shine  			= $('shine_'+tiptextValue).getProperty('value');
	
	//$('info_lefter_'+tiptextValue).fade('hide');
	$('graph_hold_'+tiptextValue).setStyle('width','0px');
	$('graph_shine_'+tiptextValue).setStyle('width','0px');
	
	$('info_lefter_'+tiptextValue).setStyle('left', 600 + 'px');
	
	$('txt_hold_'+tiptextValue).setStyle('color',ColorWays[hold]);
	$('txt_shine_'+tiptextValue).setStyle('color',ColorWays[shine]);
	$('graph_hold_'+tiptextValue).setStyle('background-color',ColorWays[hold]);
	$('graph_shine_'+tiptextValue).setStyle('background-color',ColorWays[shine]);
	
	var topMax 		= innerHeight + scrollValue - 170;
	
	var currentTop 	= parseInt($('info_lefter_'+tiptextValue).getStyle('top'));
	if(currentTop>topMax){
		$('info_lefter_'+tiptextValue).setStyle('top', topMax + 'px');	
		$('info_righter_'+tiptextValue).setStyle('top', topMax + 'px');	
	}
	
	$('left_container').setStyle('width','550px');
	$('left_container').setStyle('z-index',10);
	//ChangeAnim('left','info_lefter_'+tiptextValue, 320, 500, Fx.Transitions.Cubic.easeOut);
	
	$('info_lefter_'+tiptextValue).setStyle('left', 320 + 'px');	
	$('info_lefter_'+tiptextValue).setStyle('display','block');
	
	//model
	$('info_righter_'+tiptextValue).setStyle('left', 0 + 'px');
	$('info_righter_'+tiptextValue).setStyle('display','block');
	$('right_container').setStyle('z-index',10);
	
	ChangeAnim('width', 'graph_hold_'+tiptextValue, hold*15, 1000, Fx.Transitions.Cubic.easeOut);
	ChangeAnim('width', 'graph_shine_'+tiptextValue, shine*15, 1000, Fx.Transitions.Cubic.easeOut);
	
}

function mouseOutInfo(element){
	
	var tiptextValue  	= element.getProperty('title');
	
	//product
	var tiptextValue  = element.getProperty('title');
	$('info_lefter_'+tiptextValue).setStyle('display','none');
	
	//model
	$('info_righter_'+tiptextValue).setStyle('display','none');

}

function handleLeftMenu(){
	LeftList = $$('#left_container .productScrollItem');
	LeftList.each(function(element) {
		countLefters++;			
		
		element.addEvent('mouseenter', function(){
			if(shopMode==false && infoMode==false){
				mouseOverInfo(element);
			}
		});
	 
		element.addEvent('mouseleave', function(e){
			if(shopMode==false && infoMode==false){
				mouseOutInfo(element);
				if(e.page.x > 160){									
					$('left_container').setStyle('z-index',0);					
					$('right_container').setStyle('z-index',0);
					$('left_container').setStyle('width','310px');
				}
			}
		});
	 
		element.addEvent('click', function(e){
			$('cart_container').setStyle('z-index',110);					
			ChangeAnim('top', $('cart_container'), (-22 * productRows), 500, Fx.Transitions.Cubic.easeOut);
			$('container_overlay').innerHTML = '-';
			productInfoMode = true;
			$('container_overlay').setStyle('display','block');					
			$('container_overlay').fade(1);					
			$('container_overlay').empty().addClass('loading');
			var tiptextValue  	= element.getProperty('title');
			loadNshow('flow_product_info.php?product='+tiptextValue+'&modus='+smallModus,'container_overlay','get');
		});
	});
	menuLeft = true;
	
}		

var productInfoMode = false;
var modelInfoMode 	= false;

function closeProductInfo(){
	productInfoMode = false;
	$('cart_container').setStyle('z-index',15);					
	$('container_overlay').fade(0);	
	$('container_overlay').innerHTML = '';
	if(shopMode == true){
		ChangeAnim('top', $('cart_container'), 0, 500, Fx.Transitions.Cubic.easeOut);
	}
	if(modelInfoMode){
		modelInfoMode = false;
		ChangeAnim('left', $('cart_container'), middleX + 45, 500, Fx.Transitions.Cubic.easeOut);
	}
}

function switchToModelInfo(model){
	modelInfoMode = true;
	
	ChangeAnim('left', $('container_overlay'), -middleX, 500, Fx.Transitions.Cubic.easeOut);
	ChangeAnim('left', $('infoDetail_center_top'), middleX + 20, 500, Fx.Transitions.Cubic.easeOut);
	ChangeAnim('left', $('infoDetail_close'),middleX + 45, 500, Fx.Transitions.Cubic.easeOut);
	ChangeAnim('left', $('cart_container'), middleX - 195, 500, Fx.Transitions.Cubic.easeOut);
	$('addictSmallImage').fade(0);
	$('addictSmallImageOverlay').fade(0);
	$('addictInfoDetails').fade(1);
	
	$('addictBigImage').setStyle('height',innerHeight);
	$('addictBigImage').setStyle('width',middleX);
	$('addictBigImage').setStyle('left',innerWidth);
	$('aboutModel').setStyle('display','none');
	$('aboutProduct').setStyle('left',middleX + 125);
	$('aboutProduct').setStyle('display','block');
	$('addictIndicator').addClass('product');
	
	var so = new SWFObject("model.swf", "DOOP", innerWidth, innerHeight, "9", "86A098");
	so.addVariable("model", model); 
	so.addParam("wmode", "transparent"); 
	so.useExpressInstall('expressinstall.swf');
	so.write("addictBigImage");
}

function switchToProductInfo(){
	modelInfoMode = false;
	ChangeAnim('left', $('container_overlay'), 0, 500, Fx.Transitions.Cubic.easeOut);
	ChangeAnim('left', $('infoDetail_center_top'), middleX - 105, 500, Fx.Transitions.Cubic.easeOut);
	ChangeAnim('left', $('infoDetail_close'),middleX - 41, 500, Fx.Transitions.Cubic.easeOut);
	ChangeAnim('left', $('cart_container'), middleX + 45, 500, Fx.Transitions.Cubic.easeOut);
	$('addictSmallImage').fade(1);
	$('addictSmallImageOverlay').fade(1);
	$('addictInfoDetails').fade(0);
	
	$('aboutModel').setStyle('display','block');
	$('aboutProduct').setStyle('display','none');
	$('addictIndicator').removeClass('product');
}

var clickeModel = 0

function handleRightMenu(){
	RightList = $$('#right_container .modelScrollItem');
	RightList.each(function(element) {
		countRighters++;

		element.addEvent('mouseenter', function(){
			if(shopMode==false && infoMode==false){
				mouseOverInfo(element);
			}
		});
	 
		element.addEvent('mouseleave', function(e){
			if(shopMode==false && infoMode==false){
				mouseOutInfo(element);
				if(e.page.x < innerWidth - 100){									
					$('right_container').setStyle('z-index',0);	
					$('left_container').setStyle('z-index',0);
					$('left_container').setStyle('width','310px');
				}
			}
		});
		
	 
		element.addEvent('click', function(e){
			modelInfoMode 	= true;
			productInfoMode = true;
			$('cart_container').setStyle('z-index',110);					
			ChangeAnim('top', $('cart_container'), (-22 * productRows), 500, Fx.Transitions.Cubic.easeOut);
			ChangeAnim('left', $('cart_container'), middleX - 195, 500, Fx.Transitions.Cubic.easeOut);
			$('container_overlay').innerHTML = '-';
			$('container_overlay').setStyle('display','block');					
			$('container_overlay').fade(1);					
			$('container_overlay').empty().addClass('loading');
			clickedModel 	= element.getProperty('title');
			loadNshow('flow_product_info.php?product='+clickedModel+'&modus='+smallModus,'container_overlay','get');
		});
	});
	
	menuRight = true;
}

//left right menu animations

function animateLefter(multiplier, modulus){
	if((multiplier * 33)<step0){
		if(modulus>2) LeftList[modulus-3].setStyle('left',step0+'px');
	}else{
		if(modulus>2) LeftList[modulus-3].setStyle('left',((multiplier * 33))+'px');
	}
	
	if(modulus>1) LeftList[modulus-2].setStyle('left',(step1 + (multiplier * 33))+'px');
	if(modulus>0) LeftList[modulus-1].setStyle('left',(step2 + (multiplier * 33))+'px');
	
	LeftList[modulus].setStyle('left',(step3 - (Math.abs(multiplier) * 33))+'px');
	
	if(modulus<countLefters-1) LeftList[modulus+1].setStyle('left',(step2 - (multiplier * 33))+'px');
	if(modulus<countLefters-2) LeftList[modulus+2].setStyle('left',(step1 - (multiplier * 33))+'px');
	
	if(modulus<countLefters-3) {
		if(step0 - (multiplier * 33)<step0){
			LeftList[modulus+3].setStyle('left',step0 +'px');
		}else{
			LeftList[modulus+3].setStyle('left',(step0 - (multiplier * 33))+'px');
		}
	}
}

var addon = 240; 

function animateRighter(multiplier, modulus){
	if((multiplier * 33)<step0){
		if(modulus>2) RightList[modulus-3].setStyle('left',(step3+addon)+'px');
	}else{
		if(modulus>2) RightList[modulus-3].setStyle('left',(step3-(multiplier * 33)+addon)+'px');
	}
	
	if(modulus>1) RightList[modulus-2].setStyle('left',(step2 - (multiplier * 33)+addon)+'px');
	if(modulus>0) RightList[modulus-1].setStyle('left',(step1 - (multiplier * 33)+addon)+'px');
	RightList[modulus].setStyle('left',(step0 + (Math.abs(multiplier) * 33)+addon)+'px');
	
	if(modulus<countLefters-1) RightList[modulus+1].setStyle('left',(step1 + (multiplier * 33) +addon)+'px');
	if(modulus<countLefters-2) RightList[modulus+2].setStyle('left',(step2 + (multiplier * 33) +addon)+'px');
	
	if(modulus<countLefters-3) {
		if((multiplier * 33)>step0){
			RightList[modulus+3].setStyle('left',(step3 + addon) + 'px');
		}else{
			RightList[modulus+3].setStyle('left',(step3 + (multiplier * 33)+addon)+'px');
		}
	}
}

function animateRighterToRoot(){
	RightList.each(function(element) {
		element.setStyle('left', (99+addon) + 'px');
		element.setStyle('opacity', 0.5);
	});
}

function animateRighterToAnimate(){
	RightList.each(function(element) {
		element.setStyle('opacity', 1);
	});
}
							
function ChangeAnim(prop, target, to, speed, trans){
	if(target){
		var myFx = new Fx.Tween(target,{duration:speed, transition: trans});
		myFx.start(prop, to );
	}
}

function ie6PNGFix(){
	var arVersion = navigator.appVersion.split("MSIE")
	var version = parseFloat(arVersion[1])
	
	if ((version >= 5.5) && (document.body.filters) && (version <= 6.0)) 
	{
	   for(var i=0; i<document.images.length; i++)
	   {
		  var img = document.images[i]
		  var imgName = img.src.toUpperCase()
		  //alert(imgName);
		  if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
		  {
			 var imgID = (img.id) ? "id='" + img.id + "' " : ""
			 var imgClass = (img.className) ? "class='" + img.className + "' " : ""
			 var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
			 var imgStyle = "display:inline-block;" + img.style.cssText 
			 if (img.align == "left") imgStyle = "float:left;" + imgStyle
			 if (img.align == "right") imgStyle = "float:right;" + imgStyle
			 if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle
			 var strNewHTML = "<span " + imgID + imgClass + imgTitle
			 + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
			 + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
			 + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>" 
			 img.outerHTML = strNewHTML
			 i = i-1
		  }
	   }
	}	
}

//account
var form 			= "";
var submitted 		= false;
var error 			= false;
var error_message 	= "";

function check_input(field_name, field_size, message) {
	if ($(field_name)){
		var field_value = $(field_name).value;
		if($(field_name).hasClass('error')){
			$(field_name).removeClass('error');
		}
		if (field_value == '' || field_value.length < field_size) {
			$(field_name).addClass('error');
			error_message 	= error_message + "* " + message + "\n";
			error 			= true;
		}
	}
}

function check_select(field_name, field_default, message) {
	if ($(field_name)) {
		if($(field_name).hasClass('error')){
			$(field_name).removeClass('error');
		}
		var field_value = $(field_name).value;
		if (field_value == field_default) {
			error_message 	= error_message + "* " + message + "\n";
			error 			= true;
			$(field_name).addClass('error');
		}
	}
}

function check_password(field_name_1, field_name_2, field_size, message_1, message_2) {
	if ($(field_name_1)) {
		var password 		= $(field_name_1).value;
		var confirmation 	= $(field_name_2).value;
		if($(field_name_1).hasClass('error')){
			$(field_name_1).removeClass('error');
			$(field_name_2).removeClass('error');
		}
		if (password == '' || password.length < field_size) {
			$(field_name_1).addClass('error');
			$(field_name_2).addClass('error');
			error_message 	= error_message + "* " + message_1 + "\n";
			error 			= true;
		} else if (password != confirmation) {
			$(field_name_1).addClass('error');
			$(field_name_2).addClass('error');
			error_message 	= error_message + "* " + message_2 + "\n";
			error = true;
		}
	}
}

function check_form(form_name) {
	error_message	= "";
	error 			= false;
	form 			= form_name;
	//check_radio("gender", '&nbsp;<span class="errorText">Please select your Gender.</span>');
	check_input("firstname", 2, '&nbsp;<span class="errorText">Your First Name must contain a minimum of 2 characters</span>');
	check_input("lastname", 2, '&nbsp;<span class="errorText">Your Last Name must contain a minimum of 2 characters</span>');
	check_input("email_address", 6, '&nbsp;<span class="errorText">Your E-Mail Address must contain a minimum of 6 characters</span>');
	check_input("street_address", 5, '&nbsp;<span class="errorText">Your Street Address must contain a minimum of 5 characters</span>');
	check_input("postcode", 4, '&nbsp;<span class="errorText">Your Post Code must contain a minimum of 4 characters</span>');
	check_input("city", 3, '&nbsp;<span class="errorText">Your City must contain a minimum of 3 characters</span>');
	check_select("country", "", '&nbsp;<span class="errorText">You must select a country from the Countries pull down menu.</span>');
	check_password("password", "confirmation", 5, '&nbsp;<span class="errorText">Your Password must contain a minimum of 5 characters.</span>', '&nbsp;<span class="errorText">Your Passwords do not match</span>');
	
	if(emailCheckFailes){
		$('email_address').empty().addClass('error');	
	}
	
	if (error == true) {
		return false;
	} else {
		return true;
	}
	
}

function checkAccountEmail(){
	if(!checkEmail($('email_address').value)){
		//valid address?
		if($('email_address').hasClass('error')){
			$('email_address').removeClass('error');
		}
		
		emailCheckFailes 	= true;
		
		$('email_address').empty().addClass('error');
		ChangeAnim('height', 'emailaddress_error', 37, 400, Fx.Transitions.Cubic.easeOut);
		ChangeAnim('height', 'emailaddress_duplicate', 0, 400, Fx.Transitions.Cubic.easeOut);
	}else{
		//exists in db?
		var url				= 'flow_emailDuplicateCheck.php?emailCheck='+ $('email_address').value;
		emailCheckFailes 	= true;
		var reqDuplicate 	= new Request({url:url, method: 'get',
	   	onSuccess: function(responseText) {
			if(responseText=='false'){

				emailCheckFailes 	= true;
		
				if($('email_address').hasClass('error')){
					$('email_address').removeClass('error');
				}
				$('email_address').empty().addClass('error');
				ChangeAnim('height', 'emailaddress_error', 0, 400, Fx.Transitions.Cubic.easeOut);
				ChangeAnim('height', 'emailaddress_duplicate', 37, 400, Fx.Transitions.Cubic.easeOut);
				
			}else{
				
				emailCheckFailes 	= false;
				
				if($('email_address').hasClass('error')){
					$('email_address').removeClass('error');
				}
				
				ChangeAnim('height', 'emailaddress_error', 0, 400, Fx.Transitions.Cubic.easeOut);
				ChangeAnim('height', 'emailaddress_duplicate', 0, 400, Fx.Transitions.Cubic.easeOut);
			}
		}});
		reqDuplicate.send();
	}
}

function checkEmail( veld ) {
	//kijk naar formaat: name@site.nl
	var objRegExp  = /^([a-zA-Z0-9_\-])([a-zA-Z0-9_\-\.]*)@(\[((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}|((([a-zA-Z0-9\-]+)\.)+))([a-zA-Z]{2,}|(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\])$/;
	
	if(veld==null || veld==''){
		return false;
	}else if( objRegExp.test(veld)==false){
		return false;
	}else{ return true; }
}


var doopcodeCheck = false;
function checkDoopcode(veld){
	var doopCode 		= veld.value;
	var url				= 'flow_hairdresserSelecter.php?doop_code='+doopCode;
	var reqDoopCode 	= new Request({url:url, method: 'get',
	onSuccess: function(responseText) {
		if(responseText=='Incorrect DOOP code or already used DOOP code.'){
			doopcodeCheck = false;
		}else{
			doopcodeCheck = true;
		}
		$('your_hairdressers').innerHTML = responseText;
		ChangeAnim('height', 'your_hairdressers', 30, 400, Fx.Transitions.Cubic.easeOut);
	}});
	reqDoopCode.send();
}

var activeDealer = 0;
function openDealerInfo(dealer){
	//move index
	if(activeDealer!=0){
		$('dealerName_'+activeDealer).removeClass('active');
	}else{
		$('dealerDetailInfo').setStyles({
			width: innerWidth - 380,
			height: innerHeight - 20,
			top: 10,
			left: 360
		});
		
		ChangeAnim('left', $('content_container'), 0, 500, Fx.Transitions.Cubic.easeOut);
		ChangeAnim('left', $('dealer_container'), 165, 500, Fx.Transitions.Cubic.easeOut);
		ChangeAnim('width', $('content_container'), innerWidth, 500, Fx.Transitions.Cubic.easeOut);
		
	}

	$('dealer_container').setStyle('z-index',12);
	$('dealerDetailInfo').innerHTML = '<br><img src="../images/spinner.gif" alt="loading" />';
	
	var url			= 'flow_dealer_info.php?dealer_id='+dealer;
	var reqDealer 	= new Request({url:url, method: 'get',
	onSuccess: function(responseText) {
		if(responseText!=shopping_cartVersion){
			$('dealerDetailInfo').innerHTML = responseText;
			$('designersThumbContainer').setStyles({
				width: innerWidth - 380,
				top: innerHeight-210,
				left: 0
			});
			var DesignerList = $$('#designersThumbContainer .designerThumb');
			DesignerList.each(function(element) {
				element.addEvent('mouseenter', function(){
					ChangeAnim('top', element, 10, 500, Fx.Transitions.Cubic.easeOut);
				});
			 
				element.addEvent('mouseleave', function(e){
					ChangeAnim('top', element, 80, 500, Fx.Transitions.Cubic.easeOut);
				});
				
				element.addEvent('click', function(e){
					//alert('click');
					$('BI').src = "images/dealers/designers/" + parseInt(element.getProperty('id')) + ".jpg"
				});
				
			});
		}
	}});
	reqDealer.send();
	
	
	activeDealer = dealer;
	$('dealerName_'+activeDealer).addClass('active');
}

function enableBigImage(){
	$('BigImageContainer').setStyle('display', 'block');
}

//scroll
var ourInterval;
var scrollSpeed = 20;
var scrollHeight = 4;


function scrollStart(direction, divID, elementID){
	ourInterval = setInterval("move"+direction+"('"+divID+"')", scrollSpeed);
}

function scrollEnd(which){
	clearInterval(ourInterval);
}

function moveUp(which){
	document.getElementById(which).scrollTop = document.getElementById(which).scrollTop - scrollHeight;	
}

function moveDown(which){
	document.getElementById(which).scrollTop+=scrollHeight;	
}

function setScrollInit(target){
	var UPisSet = false;
	
	$(target+'_up').setStyle('opacity', 0);
	$(target+'_down').setStyle('opacity', 0.4);
			
	$(target+'_down').addEvent('mouseenter',  function(){
		scrollStart('Down', target, target+'Down');
		ChangeAnim('opacity', $(target+'_down'), 0.8, 500, Fx.Transitions.Cubic.easeOut);
	});
	
	$(target+'_down').addEvent('mouseleave',  function(){
		if(!UPisSet){
			UPisSet = true;
			//ChangeAlphaAnim(target+'_up', 0, 1, 500);
			ChangeAnim('opacity', $(target+'_up'), 0.4, 500, Fx.Transitions.Cubic.easeOut);

			$(target+'_up').addEvent('mouseenter',  function(){
				scrollStart('Up', target, target+'Up');
				ChangeAnim('opacity', $(target+'_up'), 0.8, 500, Fx.Transitions.Cubic.easeOut);
				//ChangeAlphaAnim(target+'_up', 1, 0.5, 500);
			});
			$(target+'_up').addEvent('mouseleave',  function(){
				scrollEnd(target+'Up');
				ChangeAnim('opacity', $(target+'_up'), 0.4, 500, Fx.Transitions.Cubic.easeOut);
				//ChangeAlphaAnim(target+'_up', 0.5, 1, 500);
			});

		}
		scrollEnd(target+'Down');
		ChangeAnim('opacity', $(target+'_down'), 0.4, 500, Fx.Transitions.Cubic.easeOut);
		//ChangeAlphaAnim(target+'_down', 0.5, 1, 500);
	});
}


//adviser
function loadNshowAdvise(url, advisor_stage, method){
//	var preloader = $(target).empty().addClass('loading');
	$('wrloading').setStyle('display', 'block');
	var req = new Request({url: url,
	    method: method,
	   	onSuccess: function(responseText) {
//			preloader.removeClass('loading');
			switch(advisor_stage){
				case 0:
					document.getElementById('div_content_2'+advisor_addon).innerHTML = responseText;
				break;
				case 1:
					document.getElementById('div_content_3'+advisor_addon).innerHTML = responseText;
				break;
				case 2:
					document.getElementById('div_content_4'+advisor_addon).innerHTML = responseText;
				break;
				case 3:
					document.getElementById('div_content_5'+advisor_addon).innerHTML = responseText;
				break;
				case 4:
					document.getElementById('div_content_6'+advisor_addon).innerHTML = responseText;
				break;
			}
			$('wrloading').setStyle('display', 'none');
		},
		onFailure: function() {
			switch(advisor_stage){
				case 0:
					document.getElementById('div_content_2'+advisor_addon).set('innerHTML', 'The request failed.');
				break;
				case 1:
					document.getElementById('div_content_3'+advisor_addon).set('innerHTML', 'The request failed.');
				break;
				case 2:
					document.getElementById('div_content_4'+advisor_addon).set('innerHTML', 'The request failed.');
				break;
				case 3:
					document.getElementById('div_content_5'+advisor_addon).set('innerHTML', 'The request failed.');
				break;
				case 4:
					document.getElementById('div_content_6'+advisor_addon).set('innerHTML', 'The request failed.');
				break;
			}
		}
	});
	req.send();
}

function changeSizeTo(a, b, target, speed){
	var myResizer = new Fx.Morph(target, {duration: speed * 500, transition: Fx.Transitions.Sine.easeOut});
	myResizer.start({
		'width': a,
		'height': b
	});
}
function changePosTo(a, b, target, speed){
	var myResizer = new Fx.Morph(target, {duration: speed * 500, transition: Fx.Transitions.Sine.easeOut});
	myResizer.start({
		'left': a
	});
}
function changeTopTo(a, b, target, speed){
	var myResizer = new Fx.Morph(target, {duration: speed * 500, transition: Fx.Transitions.Sine.easeOut});
	myResizer.start({
		'top': b
	});
}
var advisor_addon = ''
var advisor_stage = -1;
function openAdviser(parent,stap){
	advisor_addon = '';
	switch(stap){
		
		case -1:
			advisor_stage = 0;
			poststr	= '?category='+parent+'&stage=0';
			loadNshowAdvise('flow_advisor.php' + poststr, stap ,'get');	
			changeSizeTo(178, 180, 'div_content_1', 1);	
			changeSizeTo(634, 180, 'div_content_2', 1);	
			changePosTo(273, 0, 'div_content_2', 1);
			resetVlakkenAdviser(2);
		break;
		case 0:
			advisor_stage = stap;
			poststr	= '?category='+parent+'&stage='+stap;
			loadNshowAdvise('flow_advisor.php' + poststr, stap ,'get');		
			changeSizeTo(120, 180, 'div_content_1', 1);	
			changeSizeTo(450, 180, 'div_content_2', 1);	
			changePosTo(150, 0, 'div_content_2', 1);
			resetVlakkenAdviser(2);
		break;
		case 1:
			advisor_stage = stap;
			changeSizeTo(120, 180, 'div_content_2', 1);
			changeSizeTo(340, 180, 'div_content_3', 1);
			changePosTo(275, 0, 'div_content_3', 1);
			poststr	= '?category='+parent+'&stage='+stap;
			loadNshowAdvise('flow_advisor.php' + poststr, stap ,'get');	
			resetVlakkenAdviser(3);	
		break;
		case 2:
			advisor_stage = stap;
			changeSizeTo(120, 180, 'div_content_3', 1);
			changeSizeTo(230, 180, 'div_content_4', 1);
			changePosTo(400, 0, 'div_content_4', 1);
			poststr	= '?category='+parent+'&stage='+stap;
			loadNshowAdvise('flow_advisor.php' + poststr, stap ,'get');	
			resetVlakkenAdviser(4);
		break;
		case 3:
			advisor_stage = stap;
			changeSizeTo(120, 180, 'div_content_4', 1);
			changeSizeTo(120, 180, 'div_content_5', 1);
			changePosTo(525, 204, 'div_content_5', 1);
			poststr	= '?category='+parent+'&stage='+stap;
			loadNshowAdvise('flow_advisor.php' + poststr, stap ,'get');	
			resetVlakkenAdviser(5);
			//myAnim.animate();
		break;
		case 4:
			advisor_stage = stap;
			changeSizeTo(634, 180, 'div_content_5', 1);
			changePosTo(273, 318, 'div_content_5', 1);
			poststr	= '?category='+parent+'&stage='+stap;
			loadNshowAdvise('flow_advisor.php' + poststr, stap ,'get');	
			resetVlakkenAdviser(6);
			//myAnim.animate();
		break;
	}
}

function resetDealerSearch(){
	resetVlakkenDealer(1);
	activeDealer = 0;
	changeSizeTo(150, 400, 'div_content_1_dealer', 1);	
}

function openDealer(parent,stap){
	advisor_addon = '_dealer';	
	switch(stap){
		case -1:
			advisor_stage = 0;
			poststr	= '?category='+parent+'&stage=0';
			loadNshowAdvise('flow_advisor.php' + poststr, stap ,'get');	
			changeSizeTo(178, 180, 'div_content_1', 1);	
			changeSizeTo(634, 180, 'div_content_2', 1);	
			changePosTo(273, 0, 'div_content_2', 1);
			resetVlakkenDealer(2);
		break;
		case 0:
			advisor_stage = stap;
			poststr	= '?category='+parent+'&stage='+stap;
			loadNshowAdvise('flow_dealer_regions.php' + poststr, stap ,'get');		
			changeSizeTo(150, 65, 'div_content_1_dealer', 1);	
			changeSizeTo(150, 500, 'div_content_2_dealer', 1);	
			changeTopTo(0, 75, 'div_content_2_dealer', 1);
			resetVlakkenDealer(2);
		break;
		case 1:
			advisor_stage = stap;
			changeSizeTo(150, 0, 'div_content_1_dealer', 1);	
			changeSizeTo(150, 25, 'div_content_2_dealer', 1);
			changeSizeTo(150, 1100, 'div_content_3_dealer', 1);
			changeTopTo(0, 30, 'div_content_3_dealer', 1);
			changeTopTo(0, 0, 'div_content_2_dealer', 1);
			
			document.getElementById('div_content_2'+advisor_addon).innerHTML = '<div style="width:140px;padding:5px; text-align:center;"><a href="javascript:resetDealerSearch();">back to search</a></div>';	
			
			poststr	= '?category='+parent+'&stage='+stap;
			loadNshowAdvise('flow_dealers_list.php' + poststr, stap ,'get');	
			resetVlakkenDealer(3);	
		break;
		case 2:
			advisor_stage = stap;
			changeSizeTo(120, 180, 'div_content_3', 1);
			changeSizeTo(230, 180, 'div_content_4', 1);
			changePosTo(400, 0, 'div_content_4', 1);
			poststr	= '?category='+parent+'&stage='+stap;
			loadNshowAdvise('flow_advisor.php' + poststr, stap ,'get');	
			resetVlakkenDealer(4);
		break;
		case 3:
			advisor_stage = stap;
			changeSizeTo(120, 180, 'div_content_4', 1);
			changeSizeTo(120, 180, 'div_content_5', 1);
			changePosTo(525, 204, 'div_content_5', 1);
			poststr	= '?category='+parent+'&stage='+stap;
			loadNshowAdvise('flow_advisor.php' + poststr, stap ,'get');	
			resetVlakkenAdviser(5);
			//myAnim.animate();
		break;
		case 4:
			advisor_stage = stap;
			changeSizeTo(634, 180, 'div_content_5', 1);
			changePosTo(273, 318, 'div_content_5', 1);
			poststr	= '?category='+parent+'&stage='+stap;
			loadNshowAdvise('flow_advisor.php' + poststr, stap ,'get');	
			resetVlakkenAdviser(6);
			//myAnim.animate();
		break;
	}
}

var upperleft 	= 650;
var postoTravel	= 0;
function resetVlakkenAdviser(id){
	for(i=6;i>id;i--){
		changeSizeTo(10, 180, 'div_content_'+i+advisor_addon, 1);
		changePosTo(650 - ((6 - i) * 15), 0, 'div_content_'+i+advisor_addon, 1);	
		document.getElementById('div_content_'+i+advisor_addon).innerHTML = '';			
	}
}
function resetVlakkenDealer(id){
	for(i=6;i>id;i--){
		changeSizeTo(150, 0, 'div_content_'+i+advisor_addon, 1);
		changeTopTo(0, innerHeight, 'div_content_'+i+advisor_addon, 1);	
		document.getElementById('div_content_'+i+advisor_addon).innerHTML = '';			
	}
}
