var nummer = "1234567890"
var alfabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"

function hextorgb(n1,n2,n3,n4,n5,n6) {
	n1 = replacevals(n1)
	n2 = replacevals(n2)
	n3 = replacevals(n3)
	n4 = replacevals(n4)
	n5 = replacevals(n5)
	n6 = replacevals(n6)

	var returnval = ((16 * n1) + (1 * n2))
	var returnval1 = 16 * n3 + n4
	var returnval2 = 16 * n5 + n6

	return ((16 * n1) + (1 * n2))+","+((16 * n3) + (1 * n4))+","+((16 * n5) + (1 * n6))
}

function replacevals(n) {
	if (n == 'a') { n = '10' }
	if (n == 'b') { n = '11' }
	if (n == 'c') { n = '12' }
	if (n == 'd') { n = '13' }
	if (n == 'e') { n = '14' }
	if (n == 'f') { n = '15' }

	return n
}

function replacevalsreverse(thenum) {
	if (thenum == 10) { thenum = 'a' }
	if (thenum == 11) { thenum = 'b' }
	if (thenum == 12) { thenum = 'c' }
	if (thenum == 13) { thenum = 'd' }
	if (thenum == 14) { thenum = 'e' }
	if (thenum == 15) { thenum = 'f' }

	return thenum
}

function rgbtohex(num1, num2, num3) {
	return calc10to16(num1) + calc10to16(num2) + calc10to16(num3)
}

function calc10to16(num) {
	if (num < 16) {
		var thenum = replacevalsreverse(num)
		return thenum
	} else {
		var themod=num % 16
		var thenum=((num-themod) / 16)
		thenum = replacevalsreverse(thenum)
		themod = replacevalsreverse(themod)

		return "" + thenum + themod
	}
}

function getCurrentStyle(obj, prop) {
    if (document.defaultView && document.defaultView.getComputedStyle && document.body) {
        var computedStyle = document.defaultView.getComputedStyle(obj, null)
        var sx = computedStyle.getPropertyValue(prop)
        sx = sx.replace('rgb(', '')
        sx = sx.replace(')', '')
        var sxarr = sx.split(',')
        return '#' + rgbtohex(sxarr[0],sxarr[1],sxarr[2])
    } else if (obj && obj.currentStyle) {
        return obj.currentStyle.backgroundColor
    }
}

function getUrl(url) {
	return url.substring(0,url.lastIndexOf("/")+1)
}

function optie(deze, idBlok, idSubOnderdeel, bloknr, idDag, e) {
	var blnVeranderd = false
	var blnDoorgaan
	var z, i

	if (getCurrentStyle(deze, 'background-color') == '#c0c0c0') {
		if (eval("document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value") < eval("maxBlok" + idSubOnderdeel)) {
			deze.className = 's'
			eval("document.frmReserveer.hid" + idBlok + ".value = 'O'")
			eval("document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value = parseInt(document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value) + 1")
			document.frmReserveer.idblokken.value = document.frmReserveer.idblokken.value + ";" + idBlok + ";"
			aantalReserveringen++
			blnDoorgaan = true
			for (i=1;i < eval("maxBlok" + idSubOnderdeel) && blnDoorgaan;i++) {
				if ((bloknr + i) <= eval("document.frmReserveer.hoogsteBlok" + idSubOnderdeel + "_" + idDag + ".value")) {
					z = eval("document.frmReserveer.hid" + (idBlok + (i * eval("blokGrootte" + idSubOnderdeel))) + ".value")
					try {
						if (z == "R")
							throw "ok"
						else
							throw "nok"
					} catch(er) {
						if (er == "ok") {
							eval("document.getElementById('bl" + (idBlok + (i * parseInt(eval("blokGrootte"+idSubOnderdeel)))) + "').className = 's';")
							eval("document.frmReserveer.hid" + (idBlok + (i * eval("blokGrootte"+idSubOnderdeel))) + ".value = 'O'")
							eval("document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value = parseInt(document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value) + 1")
							document.frmReserveer.idblokken.value = document.frmReserveer.idblokken.value + ";" + (idBlok + (i * parseInt(eval("blokGrootte" + idSubOnderdeel)))) + ";"
							aantalReserveringen++
						} else
							blnDoorgaan = false
					}
				}
			}
		} else {
			alert('Er mogen niet meerdere blokken per dag worden gereserveerd.')
		}
	} else {
		deze.className = 'o'
		eval("document.frmReserveer.hid"+idBlok+".value = 'R'")
		eval("document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value = parseInt(document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value) - 1")
		document.frmReserveer.idblokken.value = document.frmReserveer.idblokken.value.replace(';' + idBlok + ';','')
		aantalReserveringen--
		blnDoorgaan = true
		for (i=1;i < eval("maxBlok" + idSubOnderdeel) && blnDoorgaan;i++) {
			if ((bloknr + i) <= eval("document.frmReserveer.hoogsteBlok" + idSubOnderdeel + "_" + idDag + ".value")) {
				z = eval("document.frmReserveer.hid" + (idBlok + (i * eval("blokGrootte" + idSubOnderdeel))) + ".value")
				try {
					if (z == "O")
						throw "ok"
					else
						throw "nok"
				} catch(er) {
					if (er == "ok") {
						eval("document.getElementById('bl" + (idBlok + (i * parseInt(eval("blokGrootte"+idSubOnderdeel)))) + "').className = 'o';")
						eval("document.frmReserveer.hid" + (idBlok + (i * eval("blokGrootte"+idSubOnderdeel))) + ".value = 'R'")
						eval("document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value = parseInt(document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value) - 1")
						document.frmReserveer.idblokken.value = document.frmReserveer.idblokken.value.replace(';' + (idBlok + (i * eval("blokGrootte"+idSubOnderdeel))) + ';','')
						aantalReserveringen--
					} else
						blnDoorgaan = false
				}
			}
		}
	}
	if (blnVeranderd) {
		popUpOut(e, idBlok)
		popUp(e, idBlok)
	}
}

function reserveerLink() {
	var intAantalPersonen = document.getElementById('aantalpersonen').value
	var intMinAantalPersonen = document.getElementById('minaantalpersonen').value

	if (document.frmReserveer.idblokken.value == '')
		alert("Er is nog niets geselecteerd")
	else {
		var maxDag = document.frmReserveer.maxDag.value;
		var blnDoorgaan = true
		for (j=0;j<arrSubOndId.length;j++) {
			for (i=1;i<=maxDag && blnDoorgaan;i++) {
				if (eval("document.frmReserveer.huidigAantalBlokken" + arrSubOndId[j] + "_" + i + ".value") > 0) {
					if ( eval("minBlok" + arrSubOndId[j]) > eval("document.frmReserveer.huidigAantalBlokken" + arrSubOndId[j] + "_" + i + ".value") ) {
						if (eval("minBlok" + arrSubOndId[j]) == 1)
							alert("Er moet minimaal 1 blok worden gereserveerd op " + eval("document.frmReserveer.dag" + i + ".value") + " op " + arrSubOndNaam[j] + ".")
						else
							alert("Er moeten minimaal " + eval("minBlok" + arrSubOndId[j]) + " blokken worden gereserveerd op " + eval("document.frmReserveer.dag" + i + ".value") + " op " + arrSubOndNaam[j] + ".")
						blnDoorgaan = false
					}
				}
			}
		}

		var aantal = 1

		for (var i = 2;i <= intAantalPersonen;i++) {
			if (document.getElementById('vinkje' + i).style.display != 'none')
				aantal++
			else if (document.getElementById('ckb' + i).checked)
				aantal++
		}

		if (aantal < intMinAantalPersonen) {
			alert('Er moeten minimaal ' + intMinAantalPersonen + ' spelers worder geselecteerd.')
			blnDoorgaan = false
		}

		if (blnDoorgaan) {
			document.frmReserveer.action = 'reserveersave.asp'
			document.frmReserveer.submit()
		}
	}
}

function checkOchtend() {
	if (document.frmReserveer.ckbAnders)
		document.frmReserveer.ckbAnders.checked = false

	if (document.frmReserveer.ckbAvond.checked)
		document.frmReserveer.ckbMiddag.checked = true
}

function checkMiddag() {
	if (document.frmReserveer.ckbAnders)
		document.frmReserveer.ckbAnders.checked = false

	if (!document.frmReserveer.ckbMiddag.checked) {
		if (document.frmReserveer.ckbOchtend.checked && document.frmReserveer.ckbAvond.checked) {
			alert("Mogelijkheid om de middag weg te laten niet toegestaan\nals de ochtend en de avond zijn geselecteerd.")
			document.frmReserveer.ckbMiddag.checked = true
		}
	}
}

function checkAvond() {
	if (document.frmReserveer.ckbAnders)
		document.frmReserveer.ckbAnders.checked = false

	if (document.frmReserveer.ckbOchtend.checked)
		document.frmReserveer.ckbMiddag.checked = true
}

function setAnders() {
	document.frmReserveer.ckbOchtend.checked = false
	document.frmReserveer.ckbMiddag.checked = false
	document.frmReserveer.ckbAvond.checked = false
}

function aanvragenCode() {
	if (document.getElementById('emailadres').value == '')
		alert('U kunt uw inlogcode niet aanvragen zonder uw e-mailadres in te vullen.')
	else {
		document.frmInloggen.action = "stuurcode.asp"
		document.frmInloggen.submit()
	}
}

function bekijk() {
	var strStartDatum = document.frmReserveer.dtmStartDatum.value
	var strEindDatum = document.frmReserveer.dtmEindDatum.value
	var strDatumNu = document.frmReserveer.datumnu.value
	var strRevStartDatum = strStartDatum.substr(6,4) + strStartDatum.substr(3,2) + strStartDatum.substr(0,2)
	var strRevEindDatum = strEindDatum.substr(6,4) + strEindDatum.substr(3,2) + strEindDatum.substr(0,2)
	var blnGekozen = false
	var aantaldagen = parseInt(document.frmReserveer.tonendagen.value)
	var strStartDatumCheck = strDatumNu.substr(3,2) + "/" + strDatumNu.substr(0,2) + "/" + strDatumNu.substr(6,4)
	var strEindDatumCheck = strEindDatum.substr(3,2) + "/" + strEindDatum.substr(0,2) + "/" + strEindDatum.substr(6,4)
	var verschildagen = DateDiff("d", strStartDatumCheck, strEindDatumCheck)

	if (document.forms['frmReserveer'].elements['ID'].length == undefined) {
		if (document.frmReserveer.ID.checked)
			blnGekozen = true
	} else {
		for (i=0;i< document.frmReserveer.ID.length;i++) {
			if (document.frmReserveer.ID[i].checked)
				blnGekozen = true
		}
	}

	if (!blnGekozen) {
		alert("Er is geen onderdeel gekozen.")
	} else if (!checkDate(strStartDatum)) {
		alert('Datum is niet correct\nVul datum in als dd-mm-eejj\ndd = dag, mm = maand, ee = eeuw, jj = jaar')
		document.frmReserveer.dtmStartDatum.focus()
	} else if (!checkDate(strEindDatum)) {
		alert('Datum is niet correct\nVul datum in als dd-mm-eejj\ndd = dag, mm = maand, ee = eeuw, jj = jaar')
		document.frmReserveer.dtmEindDatum.focus()
	} else if (strEindDatum != '' && strRevStartDatum > strRevEindDatum) {
		alert('Startdatum moet voor einddatum liggen')
		document.frmReserveer.dtmEindDatum.focus()
	} else if (verschildagen > aantaldagen) {
		document.frmReserveer.dtmEindDatum.focus()
		alert("Er kan maximaal " + aantaldagen + " dagen vooruit gereserveerd worden")
	} else
		document.frmReserveer.submit()
}

function inloggen() {
	document.frmReserveer.action = "default.asp?MODE=HERHAAL&START=J&I=J"
	document.frmReserveer.submit()
}


function reserveer(idSubOnderdeel,idBlok,deze, bloknr, idDag, e) {
	// voor de controle word er gebruik gemaakt van de volgende velden:
	// "document.frmReserveer.huidigAantalBlokken + idSubOnderdeel + idDag" het aantal huidig gereservereerde blokken 
	// "document.frmReserveer.hoogsteBlok + idSubOnderdeel + idDag" het het hoogste blokid 
	// "minBlok + idSubOnderdeel" het minimum aantal blokken per reservering per dag
	// "maxBlok + idSubOnderdeel" het maximum aantal blokken per reservering per dag
	// "blokGrootte + idSubOnderdeel" de lengte van een blok / 5
	var blnVeranderd = false
	if (getCurrentStyle(deze, 'background-color') == '#cae05a') { // reserveer
		if ( eval("document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value") < eval("maxBlok"+idSubOnderdeel) ) {
			if ( eval("document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value") == 0 ) { // eerste selectie mag overal
				deze.className = 's'
				eval("document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value = parseInt(document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value) + 1")
				eval("document.frmReserveer.hid"+idBlok+".value = 'S'")
				document.frmReserveer.idblokken.value = document.frmReserveer.idblokken.value + ";" + idBlok + ";"
				aantalReserveringen++
				blnVeranderd = true
				//Reserveer direct het minimum aantal blokken, als daarvoor de ruimte is.
				blnDoorgaan = true;
				for (i=1;i < eval("minBlok" + idSubOnderdeel) && blnDoorgaan;i++) {
					if ((bloknr + i) <= eval("document.frmReserveer.hoogsteBlok" + idSubOnderdeel + "_" + idDag + ".value")) {
						z = eval("document.frmReserveer.hid" + (idBlok + (i * parseInt(eval("blokGrootte" + idSubOnderdeel)))) + ".value")
						try {
							if (z == "B") 
								throw "ok"
							else
								throw "nok"
						} catch(er) {
							if (er == "ok") {
								eval("document.getElementById('bl" + (idBlok + (i * parseInt(eval("blokGrootte"+idSubOnderdeel)))) + "').className = 's';")
								eval("document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value = parseInt(document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value) + 1")
								eval("document.frmReserveer.hid" + (idBlok + (i * eval("blokGrootte"+idSubOnderdeel))) + ".value = 'S'")
								document.frmReserveer.idblokken.value = document.frmReserveer.idblokken.value + ";" + (idBlok + (i * parseInt(eval("blokGrootte" + idSubOnderdeel)))) + ";"
								aantalReserveringen++
							} else
								blnDoorgaan = false
						}
					}
				}
			} else {
				var blokLinks
				var blokRechts

				if (bloknr > 1) { blokLinks = idBlok - eval("blokGrootte"+idSubOnderdeel) } else { blokLinks = idBlok }
				if (bloknr < eval("document.frmReserveer.hoogsteBlok" + idSubOnderdeel + "_" + idDag + ".value")) { blokRechts = idBlok + eval("blokGrootte"+idSubOnderdeel) } else { blokRechts = idBlok }
					
				if ( eval("document.frmReserveer.hid"+blokLinks+".value") == 'S' || eval("document.frmReserveer.hid"+blokRechts+".value") == 'S' ) {
					deze.className = 's'
					eval("document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value = parseInt(document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value) + 1")
					eval("document.frmReserveer.hid"+idBlok+".value = 'S'")
					aantalReserveringen++
					document.frmReserveer.idblokken.value = document.frmReserveer.idblokken.value + ";" + idBlok + ";"
					blnVeranderd = true
				} else {
					alert("Blokken moeten aaneengesloten zijn.")
				}
			}
		} else {
			alert("Er mogen niet meer blokken per dag worden gereserveerd.")
		}	
	} else { // annuleer
		var blokLinks
		var blokRechts

		if (bloknr > 1) { blokLinks = idBlok - eval("blokGrootte"+idSubOnderdeel) } else { blokLinks = idBlok }
		if (bloknr < eval("document.frmReserveer.hoogsteBlok" + idSubOnderdeel + "_" + idDag + ".value")) { blokRechts = idBlok + eval("blokGrootte"+idSubOnderdeel) } else { blokRechts = idBlok }

		if ( (eval("document.frmReserveer.hid"+blokLinks+".value == 'S'") && blokLinks != idBlok) && (eval("document.frmReserveer.hid" + blokRechts + ".value == 'S'") && blokRechts != idBlok) ) {
			alert("Blokken moeten aaneengesloten zijn.")
		} else {
			deze.className = 'b'
			eval("document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value = parseInt(document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value) - 1")
			eval("document.frmReserveer.hid"+idBlok+".value = 'B'")
			document.frmReserveer.idblokken.value = document.frmReserveer.idblokken.value.replace(';' + idBlok + ';','')
			aantalReserveringen--
			blnVeranderd = true
			blnDoorgaan = true
			for (i=1;i < eval("minBlok" + idSubOnderdeel) && blnDoorgaan;i++) {
				if ((bloknr + i) <= eval("document.frmReserveer.hoogsteBlok" + idSubOnderdeel + "_" + idDag + ".value")) {
					z = eval("document.frmReserveer.hid" + (idBlok + (i * parseInt(eval("blokGrootte" + idSubOnderdeel)))) + ".value")
					try {
						if (z == "S") 
							throw "ok"
						else
							throw "nok"
					} catch(er) {
						if (er == "ok") {
							eval("document.getElementById('bl" + (idBlok + (i * parseInt(eval("blokGrootte"+idSubOnderdeel)))) + "').className = 'b';")
							eval("document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value = parseInt(document.frmReserveer.huidigAantalBlokken" + idSubOnderdeel + "_" + idDag + ".value) - 1")
							eval("document.frmReserveer.hid" + (idBlok + (i * eval("blokGrootte"+idSubOnderdeel))) + ".value = 'B'")
							document.frmReserveer.idblokken.value = document.frmReserveer.idblokken.value.replace(';' + (idBlok + (i * eval("blokGrootte"+idSubOnderdeel))) + ';','')
							aantalReserveringen--
						} else
							blnDoorgaan = false
					}
				}
			}
		}
	}
	if (blnVeranderd) {
		popUpOut(e, idBlok)
		popUp(e, idBlok)
	}
}

function xhtmlReq(f_sUrl) {
	var oXMLHTTP
	var antw = ''

	if (window.XMLHttpRequest) {
		oXMLHTTP = new XMLHttpRequest()
		oXMLHTTP.open("GET", f_sUrl, false)
		try {
			oXMLHTTP.send(null)
			antw = oXMLHTTP.responseText
		} catch(e) {
			alert('mislukt: ' + e)
		}
	} else if (window.ActiveXObject) {
		oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP")
		if (oXMLHTTP) {
			oXMLHTTP.open("GET", f_sUrl, false)
			try  {
				oXMLHTTP.send()
				antw = oXMLHTTP.responseText
			} catch (e) {
				alert('mislukt: ' + e)
			}
		}
	}
	return antw
}

function getUrlWithOut() {
	var strTemp = window.location.href

	if (strTemp.indexOf('#') > 0) {
		strTemp = strTemp.substring(0,strTemp.indexOf('#'))
	}
	return strTemp
}

function aanmelden() {
	window.open('Klant.asp?MODE=AANMELDEN','_self')
}

function uitleg() {
	document.getElementById('divUitleg').style.display = 'block'
}

function setOnderdeel(id) {
	document.getElementById('tonendagen').value = eval("document.getElementById('Ond" + id + "').value;")
	var strDatumNu = document.frmReserveer.dtmStartDatum.value
	var strStartDatumCheck = strDatumNu.substr(3,2) + "/" + strDatumNu.substr(0,2) + "/" + strDatumNu.substr(6,4)
	document.frmReserveer.dtmEindDatum.value = dateAdd("d", parseInt(document.getElementById('tonendagen').value), strStartDatumCheck)
}

function checkEnter(evt) {
	var evt = (evt) ? evt : ((event) ? event : null)
	var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null)
	var key

	if(window.event)
		key = window.event.keyCode
	else
		key = evt.which

	if (key == 13) {
		if (node.id == 'inlogcode' || node.id == 'emailadres') {
			return true
		} else if (node.id == 'datumvan' || node.id == 'datumtot') {
			bekijk()
		} else
			return false
	}
}

function checkNaam(f_id, f_idklant) {
	var tmp = xhtmlReq('xmlNaam.asp?N=' + document.getElementById('naam' + f_id).value + '&ID=' + f_id + '&IDK=' + f_idklant)
	eval(tmp)
}

function schoon(f_id) {
	document.getElementById('naam' + f_id).value = ''
	document.getElementById('speler' + f_id).value = ''
}

function abonnement(f_id) {
	window.open('abonnement.asp?ID=' + f_id, 'Abonnement', 'width=200, height=200', '_blank')
}

function checkMedespeler(f_id, f_idklant) {
	var tmp = xhtmlReq('xmlMedespeler.asp?N=' + document.getElementById('speler' + f_id).value + '&ID=' + f_id + '&IDK=' + f_idklant)
	eval(tmp)
}

xhtmlReq('schonen.asp')
document.onkeypress = checkEnter