Event.addBehavior({
	'body': function() {
		new Ajax.Request('/check/verifylogin');
	},
	'img[id=loginbutton]:click': function(){
		show_quicklogin();
		return false;
	},
	'img[id=logout_button]:click': function(){
		if(confirm('Weet u zeker dat u wilt uitloggen ?')){
			new Ajax.Request('/check/customerlogout', {
				onSuccess: function() {
					alert('U bent nu uitgelogd.');
					document.location = self.document.location;
				},
				onFailure: function(){
				}
			});
		}else{
			return false;
		}
	},
	'input[id=login_submit]:click': function(){
		if ($('uname').value ==='' || $('upass').value ==='') {
			if ($('uname').value==='') {
				$('uname').addClassName('error');
				// $('uname').focus();
			}
			if ($('upass').value==='') {
				$('upass').addClassName('error');
				// $('upass').focus();
			}
			return false;
		}else{
			new Ajax.Request('/check/customerlogin', {
				parameters: $('login_form').serialize(),
				onSuccess: function() {
					alert('U bent ingelogd');
					document.location = self.document.location;
				},
				onFailure: function(){
					$('uname').activate();
				}
			});
		}
		return false;
	},
	'img[id=searchbutton]:click': function(){
		if ($('login').visible()===true) {
			Effect.Shrink('login',{
				duration:0.7,
				queue:'end'
			});
		}
		Effect.toggle('search','blind',{
			duration:0.3,
			queue:'end'
		});
		$('search_input').clear();
	},
	'img[id=editprofile_image]:click': function(){
		document.location = "/profiel/bewerken/";
		return false;
	},
	'img[id=register_image]:click': function(){
		document.location = "/profiel/registreren/";
		return false;		
	},
	'img[id=cart_image]:click': function(){
		document.location = "/winkel/wagen/";
		return false;
	},
	'a[id=reset_login_form]:click': function(){
		$('gebruikersnaam').clear();
		$('wachtwoord').clear();
	},
	'button[id=register]:click': function(){
		register_user();
		return false;
	},
	'a[id=ww_vergeten]:click': function(){
		document.location = "/profiel/vergeten/";
	},
	'button[id=login_login_submit]:click': function(){
		process_login_form();
		return false;
	},
	'a[id=normal_logout]:click': function(){
		new Ajax.Request('/check/customerlogout', {
			onSuccess: function() {
				alert('U bent nu uitgelogd.');
				document.location = ".";
			},
			onFailure: function(){
				alert('failure');
			}
		});
		return false;
	},
	'button[id=change_password]:click': function(){
		change_my_password();
		return false;
	},
	'button[id=change_email]:click': function(){
		change_my_email();
		return false;
	},
	'button[id=change_naw]:click': function(){
		change_naw_data();
		return false;
	},
	'a[id=ww_vergeten_opsturen]:click': function(){
		wachtwoord_vergeten();
		return false;
	},
	'button[id=change_password_bevestig]:click': function(){
		nieuw_wachtwoord_wijzigen();
		return false;
	},
	'form#register_form input#email:blur': function(){
		check_email_adres();
		return false;
	},
	'form#register_form input#gebruikersnaam:blur': function(){
		check_username();
		return false;
	},
	'a[id=annuleer_banden_cart]:click': function(){
		$('addtocart').hide();
		$('aantal').value ='1';
		new Effect.ScrollTo($F('idtocart'), {offset: -24});
		new Effect.Highlight($F('idtocart'),{duration:2});		
		return false;
	},
	'a[id=annuleer_winkel_cart]:click': function(){
		$('addtocart').hide();
		$('aantal').value ='1'; 
		new Effect.ScrollTo($F('idtocart'), {offset: -64});
		new Effect.Highlight($F('idtocart'),{duration:2});		
		return false;
	},
	'a[id=toevoegen_banden_cart]:click': function () {
		toevoegen_banden_cart();
		return false;
	},
	'a[id=toevoegen_winkel_cart]:click': function () {
		toevoegen_winkel_cart();
		return false;
	},
	'button[id=betaling_check_adres]:click': function(){
		new Ajax.Request('/cart/stap/adres', {
			onSuccess: function() {
				location.href='.';
			},
			onFailure: function(){
			}
		});
		return false;
	},
	'a[id=betaling_opnieuw]:click': function(){
		new Ajax.Request('/cart/stap/opnieuw', {
			onSuccess: function() {
				location.href='/winkel/wagen/';
			},
			onFailure: function(){
			}
		});
		return false;
	},
	'button[id=betaling_methodes]:click': function(){
		new Ajax.Request('/cart/stap/methodes', {
			onSuccess: function() {
				location.href='.';
			},
			onFailure: function(){
			}
		});
		return false;
	},
	'select[id=betaal_methode]:change': function(){
		new Ajax.Request('/cart/stap/' + $F('betaal_methode'), {
			onSuccess: function() {
				location.href='.';
			},
			onFailure: function(){
			}
		});
		return false;
	},
	'button[id=bevestig_order]:click': function(){
		new Ajax.Request('/cart/stap/bedankt', {
			onSuccess: function() {
				location.href='.';
			},
			onFailure: function(){
			}
		});
		return false;
	},
	'img[id=bevestig_order]:click': function(){
		new Ajax.Request('/cart/stap/bedankt', {
			method:'post', 
			parameters: {oid:orderID},
			onSuccess: function() {
				document.form1.submit();
			},
			onFailure: function(){
				alert('Oeps, er is een communicatie probleem met de server.\nProbeer het aub opnieuw.');
			}
		});
		return false;
	},
	'a[id=open_quick_login_form]:click': function (){
		if ($('search').visible()===true) {
			Effect.Shrink('search',{
				duration:0.7,
				queue:'end'
			});
		}
		Effect.toggle('login','blind',{
			duration:0.3,
			queue:'end'
		});
		$('uname').clear();
		$('upass').clear();
		return false;
	}
	
});

function show_quicklogin (scrollto) {
	if (scrollto == true) {
		new Effect.ScrollTo($('login'),{offset: -24});
	};
	Effect.toggle('login','blind',{
		duration:0.3,
		queue:'end'
	});
	$('uname').clear();
	$('upass').clear();
	// $('go_up').update('Gebruikersnaam:<br />Wachtwoord:');
	// $('go_up').setStyle('background-color: #000;color:#fff;text-align:right;');
	// new Effect.MoveBy( $('go_up'), -295, -140 , {duration: 1});
	return false;
}
function register_user () {
//	if (!check_email_adres()) {
//		$('email').removeClassName('approved');
//		$('email').addClassName('error');
//		return false;
//	};
	var testinput = true;
	var iput;
	var error=[];
	var form = $('register_form') ;
	if ($('afleveradres').checked === true) {
		t = form.getInputs('text').without($('tussenvoegsel'),$('huisnummer_ext'),$('afl_postcode'),$('afl_straat'),$('afl_huisnummer'),$('afl_huisnummer_ext'),$('afl_plaats'));
	}else{
		t = form.getInputs('text').without($('tussenvoegsel'),$('huisnummer_ext',$('afl_postcode')));
	}
	for (var i=0; (iput = t[i]); ++i) {
		if (trim($F(iput)) === '') {
			$(iput).value = trim($F(iput));
			error.push($(iput));
			testinput=false;
			$(iput).removeClassName('approved');
			$(iput).addClassName('error');
		}else{
			$(iput).value = trim($F(iput));
			$(iput).removeClassName('error');
			$(iput).addClassName('approved');
		}
    }
	
	if (testinput === false) {
		error.first().focus();
	}
	if (testinput === false) {
		if (!$(error.first()).id == 'gebruikersnaam') {
			showerror('status','U heeft nog verplichte velden niet ingevuld');
		}
	}else{
		 new Ajax.Request('/check/registreren', {
			parameters: $('register_form').serialize()
		});
		return false;
	}
	return false;
}


function check_username () {
	new Ajax.Request('/check/check_existing_user', {
		parameters: $('register_form').serialize(),
		onFailure: function(){
			return false;
		},
		onSuccess: function(){
			return true;
		}
	})
}
function check_email_adres () {
	new Ajax.Request('/check/check_existing_email', {
		parameters: $('register_form').serialize(),
		onFailure: function(){
			return false;
		},
		onSuccess: function(){
			return true;
		}
	})
}

function process_login_form () {
	if ($('gebruikersnaam').value ==='' && $('wachtwoord').value ==='') {
		$('gebruikersnaam').addClassName('error');
		$('wachtwoord').addClassName('error');
		$('gebruikersnaam').focus();
		showerror('status','U moet uw gebruikersnaam en wachtwoord invullen om in te loggen.');
		return false;
	}else if ($('gebruikersnaam').value ==='' || $('wachtwoord').value ==='') {
		if ($('gebruikersnaam').value==='') {
			$('gebruikersnaam').addClassName('error');
			$('gebruikersnaam').focus();
			showerror('status','U moet uw gebruikersnaam invullen.');
		}
		if ($('wachtwoord').value==='') {
			$('wachtwoord').addClassName('error');
			$('wachtwoord').focus();
			showerror('status','U moet uw wachtwoord nog invullen.');
		}
		return false;
	}else{
		new Ajax.Request('/check/customerlogin', {
			parameters: $('login_login_form').serialize(),
			onSuccess: function() {
				alert('U bent ingelogd');
				document.location = self.document.location;
			},
			onFailure: function(){
				$('gebruikersnaam').activate();
			}
		});
		return false;
	}
}

function change_my_password(){
	new Ajax.Request('/check/check_oude_wachtwoord', {
		parameters: 'oude_wachtwoord='+$('oude_wachtwoord').value,
		method: 'post',
		onSuccess: function(){
			if (($('nieuwe_wachtwoord').value === $('nieuwe_wachtwoord2').value) && ($('nieuwe_wachtwoord').value!=='')) {
				new Ajax.Request('/check/verander_wachtwoord', {
					parameters: $('change_pw_form').serialize(),
					onSuccess: function(){
						Form.reset('change_pw_form');						
						showerror('password_status','Bijwerken van het wachtwoord is gelukt !');
					},
					onFailure: function(){
						showerror('password_status','Kon uw wachtwoord niet bijwerken');
					}
					});
			}else{
				showerror('password_status','Uw "nieuwe" wachtwoorden zijn niet hetzelfde.');
			}
		},
		onFailure: function(){
			$('oude_wachtwoord').focus();
		}
	});
	return false;
}
function change_my_email(){
	new Ajax.Request('/check/verander_email', {
		parameters: $('change_email_form').serialize(),
		onFailure: function(){
			$('gebruikersnaam').activate();
		},
		afterFinish: function(){
		}
	});
	return false;
}

function change_naw_data(){
	var test = true;
	var iput;
	var error=[];
	var form = $('change_naw_form') ;
	if ($('afleveradres').checked === true) {
		t = form.getInputs('text').without($('tussenvoegsel'),$('huisnummer_ext'),$('afl_postcode'),$('afl_straat'),$('afl_huisnummer'),$('afl_huisnummer_ext'),$('afl_plaats'));
	}else{
		t = form.getInputs('text').without($('tussenvoegsel'),$('huisnummer_ext'),$('afl_huisnummer_ext'));
	}
	for (var i=0; (iput = t[i]); ++i) {
		if (trim($F(iput)) === '') {
			$(iput).value = trim($F(iput));
			error.push($(iput));
			test=false;
			$(iput).removeClassName('approved');
			$(iput).addClassName('error');
		}else{
			$(iput).value = trim($F(iput));
			$(iput).removeClassName('error');
			$(iput).addClassName('approved');
		}
    }
	if (test === false) {
		showerror('naw_status','U heeft nog verplichte velden niet ingevuld');
		error.first().focus();
	}else{
		 new Ajax.Request('/check/verander_naw', {
			parameters: $('change_naw_form').serialize()
		});
		return false;
	}
	return false;
}
function show_afleveradres(){
	if ($('afleveradres').checked === false) {
		Effect.BlindDown('afleveradres_table', {duration:0.5,queue:'begin'});
	}else{
		Effect.BlindUp('afleveradres_table', {duration:0.5,queue:'begin'});
	}
}
function change_nieuwsbrief(){
	new Ajax.Request('/check/verander_nieuwsbrief', {
		parameters: $('change_subs_form').serialize()
	});
	return false;
}
function wachtwoord_vergeten () {
	new Ajax.Request('/check/wachtwoord_vergeten', {
		parameters: $('wachtwoord_vergeten_form').serialize()
	});
	return false;

}
function nieuw_wachtwoord_wijzigen () {
	if ($('email_adres').value ==='') {
		showerror('status','U moet nog een emailadres opgeven.');
		$('email_adres').focus();
		$('email_adres').removeClassName('approved');
		$('email_adres').addClassName('error');
		return false;
	}else{
		$('email_adres').removeClassName('error');
		$('email_adres').addClassName('approved');
	}
	if ($('email_wachtwoord').value ==='') {
		showerror('status','U moet nog het wachtwoord van de email opgeven.');
		$('email_wachtwoord').focus();
		$('email_wachtwoord').removeClassName('approved');
		$('email_wachtwoord').addClassName('error');
		return false;
	}else{
		$('email_wachtwoord').removeClassName('error');
		$('email_wachtwoord').addClassName('approved');
	}	
	if (($('nieuwe_wachtwoord').value === $('nieuwe_wachtwoord2').value) && ($('nieuwe_wachtwoord').value!=='')) {
		new Ajax.Request('/check/wachtwoord_bevestigen', {
			parameters: $('nieuw_wachtwoord_form').serialize(),
			onSuccess: function(){
				// showerror('status','Bijwerken van het wachtwoord is gelukt !');
			},
			onFailure: function(){
				alert('kan ww niet bijwerken');
			}
		});
	}else{
		showerror('status','Uw "nieuwe" wachtwoorden zijn niet hetzelfde.');
	}
	return false;
}

var main_orig_text = '';
function showerror(tgt,text){
	if (main_orig_text == '') {main_orig_text = $(tgt).innerHTML;}else{return false;};
	$(tgt).update(main_orig_text);
	var orig_text = $(tgt).innerHTML;
	// window.setTimeout('new Effect.Shrink(\''+tgt+'\',{duration: 0.5,queue:{scope: \'status\',limit:5}});',0);
	window.setTimeout('$(\''+tgt+'\').update(\'<b style="color:#E2FF70;padding:10px;">'+text+'</b>\')',700);
	// window.setTimeout('new Effect.Grow(\''+tgt+'\',{duration: 0.5,direction:\'left\',queue:{scope: \'status\',limit:5}});',900);
	// window.setTimeout('new Effect.Highlight(\''+tgt+'\', { duration: 2,startcolor:\'#999999\', endcolor:\'#FF0000\',queue:{scope: \'status\',limit:5}});',1000);
	// window.setTimeout('new Effect.Shrink(\''+tgt+'\',{direction: \'top-left\',duration: 0.7,queue:{scope: \'status\',limit:5}});',6000);
	window.setTimeout('$(\''+tgt+'\').update(\''+orig_text+'\')',6600);
	window.setTimeout('$(\''+tgt+'\').update(\''+main_orig_text+'\')',6700);
	// window.setTimeout('new Effect.Grow(\''+tgt+'\',{duration: 0.5,direction: \'left\',queue:{scope: \'status\',limit:5}});',6800);
	window.setTimeout('main_orig_text = \'\'',6800);
	return false;
}

function go_to_aantal (elm) {
	$('addtocart').show();
	$('idtocart').value = elm;
	new Effect.Highlight('addtocart',{duration: 2});
	new Effect.ScrollTo('aantal', {offset: -48})
	$('aantal').focus();
	$('aantal').select();
	return false;
}
function show_aantal_form (elm) {
	elm = elm.replace('id_','');
	$('addtocart').show();
	$('idtocart').value = elm;
	$('aantal').focus();
	$('aantal').select();
	return false;
}
function toevoegen_banden_cart () {
	if ($F('aantal').blank() || $F('aantal') == 0 || $F('aantal') < 1) {
		// alert('0 of leeg');
		return false;
	};
	new Ajax.Request('/cart/voeg_band_toe', {
		parameters: {aantal:$F('aantal'),type:$F('idtocart')},
		onSuccess: function(){	
			$('addtocart').hide();
			$('aantal').value ='1'; 
			new Effect.ScrollTo($F('idtocart'), {offset: -24});
			new Effect.Highlight($F('idtocart'),{duration:2});
		},
		onFailure: function(){
			alert('kan ww niet bijwerken');
		}
	});
	return false;
}
function toevoegen_winkel_cart () {
	if ($F('aantal').blank() || $F('aantal') == 0 || $F('aantal') < 1) {
		// alert('0 of leeg');
		return false;
	};
	new Ajax.Request('/cart/voeg_winkel_toe', {
		parameters: {aantal:$F('aantal'),type:$F('idtocart')},
		onSuccess: function(){	
			$('addtocart').hide();
			$('aantal').value ='1'; 
			new Effect.Highlight($F('idtocart'),{duration:1,startcolor: '#000000',endcolor:'#00ff00'});
		},
		onFailure: function(){
			alert('kan ww niet bijwerken');
		}
	});
	return false;
}
function test_cart () {
	new Ajax.Request('/cart/check_cart');	
}
function empty_cart () {
	new Ajax.Request('/cart/legen');	
	$('cart_image').hide();
}

function verwijder_band (id) {
	new Ajax.Request('/cart/verwijder_band', {
		parameters: {id:id.replace('id_','')},
		onSuccess: function(){	
			new Effect.Highlight(id,{duration:1.2,startcolor: '#ff0000',endcolor:'#000000'});
			Effect.SlideUp(id);
		},
		onFailure: function(){
			alert('kan band niet verwijderen');
		}
	});
	return false;	
}
function verwijder_winkel (id) {
	new Ajax.Request('/cart/verwijder_winkel', {
		parameters: {id:id.replace('id_','')},
		onSuccess: function(){	
			new Effect.Highlight(id,{duration:1.2,startcolor: '#ff0000',endcolor:'#000000'});
			Effect.SlideUp(id);
		},
		onFailure: function(){
			alert('kan item niet verwijderen');
		}
	});
	return false;
	
}

function goto_update_wagen (elm,aantal,type) {
	$('updatecart').show();
	$('idtocart').value = elm;
	$('type_item').value = type;
	$('aantal').value = aantal;
	$('aantal').focus();
	$('aantal').select();
	return false;

}
function update_wagen_aantal () {
	if ($F('aantal').blank() || $F('aantal') == 0) {
		return false;
	};
	id = $F('idtocart').replace('id_','');
	new Ajax.Request('/cart/update_winkel_aantal/' + $F('type_item'), {
		parameters: {aantal:$F('aantal'),type:id},
		onSuccess: function(){	
			$('updatecart').hide();
			id_to_aantal = 'aantal_' + id;
			$(id_to_aantal).update($F('aantal') + " X");
			totaalprijs = $('prijs_'+id).innerHTML * $F('aantal');
			$('totaal_'+id).update(totaalprijs.toFixed(2));
			$('aantal').value ='0'; 
			new Effect.ScrollTo("id_" + id, {offset: -24});
			new Effect.Highlight("id_" + id,{duration:2,startcolor: '#00ff00',endcolor:'#000000'});
		},
		onFailure: function(){
			alert('kan ww niet bijwerken');
		}
	});
	return false;
}
function show_methode_div (elm) {
	go = false;
	if ($('rembours').visible() === true) {
		if(elm == 'rembours'){ new Effect.toggle('rembours','blind');go = true}
		new Effect.SlideUp('rembours');
	}
	if ($('bezorgen').visible() === true) {
		if(elm == 'bezorgen'){ new Effect.toggle('bezorgen','blind');go = true}
		new Effect.SlideUp('bezorgen');
	}
	if ($('winkel').visible() === true) {
		if(elm == 'winkel'){ new Effect.toggle('winkel','blind'); go = true}
		new Effect.SlideUp('winkel');
	}
	if ($('ideal').visible() === true) {
		if(elm == 'ideal'){ new Effect.toggle('ideal','blind');go = true}
		new Effect.SlideUp('ideal');
	}
	if (go === false) {
		Effect.SlideDown(elm);
	};
	return false;
}






function gototop () {
	new Effect.ScrollTo('login', {});
	return false;
}
function trim(tgt){
	return tgt.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
}
function isNumberKey(evt)
{
   var charCode = (evt.which) ? evt.which : event.keyCode
   if (charCode > 31 && (charCode < 48 || charCode > 57))
      return false;

   return true;
}
