var vorige;
var checkavail = true;
var stack = "";
var xmlhttp;
var totaal;
var oud;
var oudnr;

function changeTopOver(nr,naam) {
	oud = document.getElementById('topimg' + nr).src;
	document.getElementById('topimg' + nr).src = 'images/lib/groepen/' + naam + '.jpg';
}

function changeTopOut(nr,naam) {
	document.getElementById('topimg' + nr).src = oud;
}

function change(nr,naam) {
   if (vorige) {
		document.getElementById(vorige).style.display = 'none';
		document.getElementById('topimg' + oudnr).src = 'images/lib/groepen/' + vorige + '.jpg';
	}
	if (document.getElementById(naam)) {
		document.getElementById(naam).style.display = 'block';
		oud = 'images/lib/groepen/' + naam + '_mo.jpg';
		document.getElementById('topimg' + nr).src = oud;
		vorige = naam;
		oudnr = nr;
	}
	vorigesub = null;
}

function changeSub(naam) {
	if (vorigesub) {
		document.getElementById(vorigesub).style.display = 'none';
	}
	document.getElementById(naam).style.display = 'block';
	vorigesub = naam;
}

function addItem(id) {
	location.href = 'default.asp?act=add&id=' + id;
}

function initScreen() {
	showShoppingBasket()
	if (document.getElementById(init2)) document.getElementById(init2).style.display = '';
	if (document.getElementById(init3)) document.getElementById(init3).style.display = '';
}

function resetCookie() {
	document.cookie = cookieName + "=";
}

function OpnieuwLaden() {
	document.cookie = cookieName + "=";
	location.href = "default.asp";
}

function doorgaan() {
	location.href = "verzenden.asp?referentie=" + referentie + "&opnieuw=1";
}

function formatBedrag(invoer){
	invoer = Math.round(invoer * 100) / 100
	var test = invoer.toString()
	deel = test.split('.')
	if (deel[1]) {
		if (deel[1].length == 1) {
			bedrag = test + '0'
		} else {
			bedrag = test
		}
	} else {
		bedrag = test + '.00'
	}
	bedrag = bedrag.replace(",","")
	bedrag = bedrag.replace(".",",")
	return bedrag
}

function saveNumber(id) {
	oldnumber = document.getElementById('a-' + id).value
}

function processNumber(id) {
	if (isNaN(isNaN(document.getElementById('a-' + id).value))) {
		document.getElementById('a-' + id).value = oldnumber
	} else {
		bereken()
	}
}

function bereken() {
	totaal = 0
	var inhoud = ""
	for (i=1; i <= parseInt(document.getElementById("counter").value); i ++) {
		document.getElementById("a-" + i).value = document.getElementById("a-" + i).value.replace(" ","")
		if (document.getElementById("a-" + i).value == "") {
			subtotaal = 0 
		} else {
			subtotaal = parseInt(document.getElementById("a-" + i).value) * parseFloat(document.getElementById("p-" + i).value)
		}
		document.getElementById('t-' + i ).value = formatBedrag(subtotaal)
		totaal = totaal + subtotaal
		if (inhoud != "") inhoud = inhoud + "~"
		inhoud = inhoud + document.getElementById('id-' + i).value + '#' + document.getElementById('a-' + i).value + '#' + document.getElementById("p-" + i).value
	}
	document.cookie = cookieName + "=" + escape(inhoud)
	document.getElementById('subtot').value = formatBedrag(totaal)

	transport = parseFloat(document.getElementById('transport').value)
	admin = parseFloat(document.getElementById('admin').value)

	handling = transport + admin

	subbedrag = totaal + parseFloat(handling)
	btwbedrag = subbedrag * .19
	totbedrag = subbedrag + btwbedrag

	document.getElementById('totaal-sub').value = formatBedrag(subbedrag)
	document.getElementById('totaal-btw').value = formatBedrag(btwbedrag)
	document.getElementById('totaal-voldoen').value = formatBedrag(totbedrag)

	showShoppingBasket()
} 

function checkFields() {
	fout = false;
	if (document.winkelwagen.naam.value == '')     fout = true;
	if (document.winkelwagen.adres.value == '')    fout = true;
	if (document.winkelwagen.postcode.value == '') fout = true;
	if (document.winkelwagen.plaats.value == '')   fout = true;
	if (document.winkelwagen.telefoon.value == '') fout = true;
	if (document.winkelwagen.postcode.value == '') fout = true;
	if (document.winkelwagen.email.value == '')    fout = true;
	if (!document.winkelwagen.akkoord.checked)     fout = true;
	if (document.getElementById('banken') && !fout && document.winkelwagen.betaal[0].checked && document.winkelwagen.banknaam[0]) {
		fout = true
		for (i=0; i<document.winkelwagen.banknaam.length; i++) {
			 if (document.winkelwagen.banknaam[i].checked) fout = false
		}
	}
	if (fout) {
		document.winkelwagen.verzenden.disabled = 'disabled'
	} else {
		document.winkelwagen.verzenden.disabled = ''
	}
}

function postcodeFout() {
	re = /^[1-9][0-9]{3} ?[a-zA-Z]{2}$/
	invoer = document.winkelwagen.postcode.value
	if (invoer != '') {
		OK = re.exec(invoer);
		if (OK) {
			document.winkelwagen.postcode.value = invoer.substr(0,4) + " " + invoer.substr(invoer.length - 2,2).toUpperCase();
			return false
		} else {
			alert (invoer + " is geen geldige Nederlandse postcode!");
			document.winkelwagen.postcode.focus()
			return true
		}
	} 
}

function checkPostcode() {
	re = /^[1-9][0-9]{3} ?[a-zA-Z]{2}$/
	invoer = document.winkelwagen.postcode.value
	if (invoer != '') {
		OK = re.exec(invoer);
		if (OK) {
			document.winkelwagen.postcode.value = invoer.substr(0,4) + " " + invoer.substr(invoer.length - 2,2).toUpperCase();
		} else {
			alert (invoer + " is geen geldige Nederlandse postcode!");
			document.winkelwagen.postcode.focus()
		}
	} 
}

function checkEmail() {
	re = /^[A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)*[@][A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)+$/
	if (document.winkelwagen.email.value != '') {
		if (!re.exec(document.winkelwagen.email.value)) {
			alert('Fout in emailadres')
			document.winkelwagen.email.focus()
		}
	}
}

function emailFout () {
	re = /^[A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)*[@][A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)+$/
	if (document.winkelwagen.email.value != '') {
		if (!re.exec(document.winkelwagen.email.value)) {
			alert('Fout in emailadres')
			document.winkelwagen.email.focus()
			return true
		} else {
			return false
		}
	}
}

function versturen() {
	fout = false;
	if (!fout) {
		fout = postcodeFout();
	}
	if (!fout) {
		fout = emailFout()
	}
	
	if (!fout) {
		if (document.winkelwagen.betaal[0].checked) {
			if (confirm('MELDING\r\n\r\nU verlaat de webshop en wordt doorgeschakeld naar de beveiligde omgeving van uw Bank.\r\nNa de verwerking van uw betaling komt uw weer terug in de webshop.\r\nU krijgt vervolgens een melding dat de bestelling is verwerkt')) {
				return true;
			}
		} else {
			return true;
		}
	}
	else {
		return false;
	}
}

function verwijderCurrent(nr) {
	if (confirm('Artikel verwijderen?')) {
		document.getElementById('item'+ nr).style.display = 'none'
		document.getElementById('a-' + nr).value = 0
		bereken()
		if (totaal == 0) {
			nieuw = ""
			document.cookie = cookieName + "=" + escape(nieuw)
			location.href = 'default.asp?grp=hom&ref=default&reset=1'
		}
	}
}

function addToCart(artikelcode) {
	ajaxRequest('winkelwagentje');
	xmlhttp2.open("GET","getbasket.asp?artikel=" + artikelcode ,true);
	xmlhttp2.send(null);
}

function removeFromCart(artikelcode) {
	ajaxRequest('winkelwagentje');
	xmlhttp2.open("GET","getbasket.asp?remove_artikel=" + artikelcode ,true);
	xmlhttp2.send(null);
	document.getElementById('artikel_' + artikelcode).style.display = 'none';
	document.getElementById('amount_' + artikelcode).value = 0;
	updateCartTotals();
}

function updateCartTotals() {
	frm = document.winkelwagen;
	subtotal = 0;
	for (var i=0; i < frm.elements.length; ++i) {
		form_field = frm.elements[i];
		form_id = form_field.id;
		if (form_id.substring(0,7) == "amount_") {
			artikelcode = form_id.substring(form_id.lastIndexOf("_") + 1)
			item_quantity = parseInt(form_field.value);
			artikelprijs = document.getElementById('price_' + artikelcode).value;
			document.getElementById('total_' + artikelcode).innerHTML = "€ " + formatBedrag(artikelprijs * item_quantity);
			subtotal = subtotal + (artikelprijs * item_quantity);
		}
	}
	document.getElementById('cart_subtotal').innerHTML = "<br />€ " + formatBedrag(subtotal);
	
	transport = parseFloat(document.getElementById('transport').value)
	admin = parseFloat(document.getElementById('admin').value)

	handling = transport + admin

	subbedrag = subtotal + parseFloat(handling)
	btwbedrag = subbedrag * .19
	totbedrag = subbedrag + btwbedrag

	document.getElementById('totaal-sub').value = formatBedrag(subbedrag)
	document.getElementById('totaal-btw').value = formatBedrag(btwbedrag)
	document.getElementById('totaal-voldoen').value = formatBedrag(totbedrag)
}

function omhoog() {
	location.href = '#top'
}

function subUit() {
	if (vorige) {
		document.getElementById(vorige).style.display = 'none'
		vorige = null
	}
	if (vorigesub != '-') {
		document.getElementById(vorigesub).style.display = 'none'
		vorigesub = null
	}
}

// ********************************************* //

function pop() {
	items = stack.split("|")
	var nieuw = ""
	if (items.length > 1) {
		current = items[items.length - 2]
		ret = current.split("~")
		for (i=0; i < items.length - 2; i++) {
			if (nieuw != "" ) nieuw +=  "|"
			nieuw += items[i]
		}
		stack = nieuw
		if (ret[1] == 1) selectSubTop(ret[0])
		if (ret[1] == 2) showCat(ret[0])
	}
}

function ajaxRequest(id) {
	if (window.XMLHttpRequest) {
		xmlhttp2=new XMLHttpRequest();
	} else 
		if (window.ActiveXObject) {
			xmlhttp2=new ActiveXObject("Microsoft.XMLHTTP");
		} else {
			alert("Your browser does not support XMLHTTP!");
	}
	xmlhttp2.onreadystatechange=function() {
		if (xmlhttp2.readyState==4 && id !='') {
			document.getElementById(id).innerHTML = xmlhttp2.responseText
		}
	}
}

function selectSubTop(opvraag) {
	params = "sw=1&" + opvraag
	url = "switchscreen.asp?" + params
	addHistoryEvent(params)
	loadXMLDoc(url);
//	if (document.getElementById('producten')) document.getElementById('producten').innerHTML = ''
}

function showShoppingBasket() {
	ajaxRequest('winkelwagentje');
	xmlhttp2.open("GET","getbasket.asp" ,true);
	xmlhttp2.send(null);
}

function showCat(naam) {
	params = "sw=3&" + naam 
	url = "switchscreen.asp?" + params
	addHistoryEvent(params)
	loadXMLDoc(url);
} 

function meerInfo(code) {
	params = "sw=4&code=" + code
	url = "switchscreen.asp?" + params
	addHistoryEvent(params)
	loadXMLDoc(url);
}

function bijwerkenCookies() {
	ajaxRequest('')
	xmlhttp2.open("GET","bijwerkencookie.asp" ,true);
	xmlhttp2.send(null);
}

function naarWinkelwagentje() {
   bijwerkenCookies()
	if (readCookie(cookieName) == "") {
		alert("Geen artikelen aanwezig")
	} else {
//		subUit()
		params = "sw=6"
		url = "switchscreen.asp?" + params
		addHistoryEvent(params)
		loadXMLDoc(url);
	} 
}

function Annuleren() {
	if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
		xmlhttp=new XMLHttpRequest();
	}
	else {// code for IE6, IE5
		xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	xmlhttp.open("GET","reset.asp",false);
	xmlhttp.send(null);
	showShoppingBasket();
}

function Account() {
	alert('account');
}

function wijzigbetaal() {
	if (document.getElementById('ideal')) {
		if (document.shop.betaal[0].checked) {
			document.getElementById('banken').style.display = 'block'
		} else {
			document.getElementById('banken').style.display = 'none'
		}
	}
	checkFields()
}

/******************************************************/

function loadXMLDoc(url) {
	if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
		xmlhttp=new XMLHttpRequest();
	}
	else {// code for IE6, IE5
		xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	xmlhttp.open("GET",url,false);
	xmlhttp.send(null);
	document.getElementById('catinhoud').innerHTML = xmlhttp.responseText;
}

function historyChange(newLocation, historyData) {
	var url = "switchscreen.asp?" + newLocation;
	loadXMLDoc(url);
}

function viewPage(grp,ref) {
	params = "shop=0&grp=" + grp + "&ref=" + ref;
	url = "switchscreen.asp?" + params;
	loadXMLDoc(url);
}

function foutByIdeal() {
	url = "switchscreen.asp?sw=99";
	loadXMLDoc(url);
}
