// Wereld van Wijn - JavaScript Document

//// ALGEMEEN ////
function preload() { //plaatjes preloaden
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=preload.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function findObj(theObj, theDoc) {
  var p, i, foundObj;  
  if(!theDoc) theDoc = document;
  if( (p = theObj.indexOf("?")) > 0 && parent.frames.length) {
    theDoc = parent.frames[theObj.substring(p+1)].document;
    theObj = theObj.substring(0,p);
  }
  if(!(foundObj = theDoc[theObj]) && theDoc.all) foundObj = theDoc.all[theObj];
  for (i=0; !foundObj && i < theDoc.forms.length; i++) foundObj = theDoc.forms[i][theObj];
  for(i=0; !foundObj && theDoc.layers && i < theDoc.layers.length; i++) foundObj = findObj(theObj,theDoc.layers[i].document);
  if(!foundObj && document.getElementById) foundObj = document.getElementById(theObj);
  return foundObj;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function is_integer(input) {
	var validchars = "0123456789";
	var is_integer = true;
	var char = "";
	for (i = 0; i < input.length && is_integer == true; i++) { 
		char = input.charAt(i); 
		if (validchars.indexOf(char) == -1) { is_integer = false; }
	}
	return is_integer;
}
function is_decimal(input) {
	var validchars = "0123456789.,";
	var is_decimal = true;
	var char = "";
	for (i = 0; i < input.length && is_decimal == true; i++) { 
		char = input.charAt(i); 
		if (validchars.indexOf(char) == -1) { is_decimal = false; }
	}
	return is_decimal;
}
function is_allowed(input) {
	var illegalchars = /[\W]/; // alleen letter en nummers en underscore
	var is_allowed = true;
	if (illegalchars.test(input)) { is_allowed = false; }
	return is_allowed;
}
function is_email(input) {
	var emailfilter= /^.+@.+\..{2,3}$/;
	var is_email = true;
	if (!(emailfilter.test(input))) { is_email = false;	}
	return is_email;
}
function loadinwindow(file,target) {
    if (target != '')
        target.window.location.href = file;
    else
        window.location.href = file;
}
function popup(page,h,w,scrollbars) {
	//alert(url);
	url = page;
	var load = window.open(url,'','scrollbars='+scrollbars+',menubar=no,height='+h+',width='+w+',resizable=yes,toolbar=no,location=no,status=no');
}
//// WIJNEN ////
function pass(value,type) {
	if (value != "") {
		if (type == 'land' && document.form_select.form_regio_id) {
			document.form_select.form_regio_id.value = '';
		}
		document.form_select.action = "index.php?page_id=2";
		document.form_select.target = "_self";
		document.form_select.submit();
	}
}

function submitland() {
	if (document.form_select.form_land_id.options[document.form_select.form_land_id.selectedIndex].value != "") {
		document.form_select.actie.value='land';
		document.form_select.action = "index.php?page_id=4";
		document.form_select.target = "_self";
		document.form_select.submit();
		}	
}

function submitregio() {
	if (document.form_select.form_regio_id.options[document.form_select.form_regio_id.selectedIndex].value != "") {
		document.form_select.actie.value='regio';
		document.form_select.action = "index.php?page_id=4";
		document.form_select.target = "_self";
		document.form_select.submit();
		}	
}

function submitstreek() {
	if (document.form_select.form_streek_id.options[document.form_select.form_streek_id.selectedIndex].value != "") {
		document.form_select.actie.value='streek';
		document.form_select.action = "index.php?page_id=4";
		document.form_select.target = "_self";
		document.form_select.submit();
		}	
}

function submitzoek() {
	if (document.zoekform.zoekwoord.value != "") {
		document.zoekform.action = "index.php?page_id=4";
		document.zoekform.target = "_self";
		document.zoekform.submit();
		}	
}

//// ZOEKEN ////
function geefdoor(value) {
	if (value != "") {
		if (document.form_zoek.nostreek) {
			document.form_zoek.nostreek.value = '1';
		}
		document.form_zoek.action = "";
		document.form_zoek.target = "_self";
		document.form_zoek.submit();
	}
}

function resetzoekform() {
	document.location = "index.php?page_id=9";
}

function submitadvancedzoek() {
	document.form_zoek.action = "index.php?page_id=4";
	document.form_zoek.target = "_self";
	document.form_zoek.submit();
}

function kelderresetzoekform() {
	document.location = "index.php?page_id=28";
}

function keldersubmitadvancedzoek(userid) {
	document.form_zoek.actie.value = "zoek";
	document.form_zoek.action = "index.php?page_id=20&actie=zoek&userid="+userid;
	document.form_zoek.target = "_self";
	document.form_zoek.submit();
}

//// PROEFFORMULIER ////
function load(id) {
	//alert(url);
	url = 'regioinfo.php?regioid='+id;
	var load = window.open(url,'','scrollbars=yes,menubar=no,height=720,width=800,resizable=yes,toolbar=no,location=no,status=no');
}

function confirmdel(wijnid) {
	conf = confirm('Weet u zeker dat u deze wijn wilt verwijderen?');
	if (conf == true) {
		window.location='?page_id=17&wijnid='+wijnid;
	}
}

function kelderconfirmdel(wijnid) {
	conf = confirm('Weet u zeker dat u deze wijn wilt verwijderen?');
	if (conf == true) {
		window.location='?page_id=26&wijnid='+wijnid;
	}
}

function confirmcommentdel(commentid,wijnid,pageid) {
	conf = confirm('Weet u zeker dat u dit bericht wilt verwijderen?');
	if (conf == true) {
		window.location='?page_id='+pageid+'&commentid='+commentid+'&returnwijnid='+wijnid;
	}
}

function newWindow(file,window) {
    msgWindow=open(file,window,'resizable=no,width=735,height=360');
    if (msgWindow.opener == null) msgWindow.opener = self;
}

function submitaddcomment(pageid) {
	if (document.form_editcomment.bericht.value !== "") {
		document.form_editcomment.action = "?page_id="+pageid;
		document.form_editcomment.target = "_self";
		document.form_editcomment.submit();
	} else {
		alert ("U heeft geen reactie ingetypt!");
	}
}

//// INVOER ////
function pass2(value,type) {
	if (value != "") {
		if (type == 'land' && document.form_invoer.form_regio_id) {
			document.form_invoer.form_regio_id.value = '';
		}
		//document.form_invoer.action = "index.php?page_id=8";
		document.form_invoer.action = "";
		document.form_invoer.enctype = "application/x-www-form-urlencoded";
		document.form_invoer.target = "_self";
		document.form_invoer.submit();
	}
}

function inputfile(doel) {
   alert('Selecteer een bestand door op Bladeren.../Browse... te klikken!');
   doel.value = "";
   submitdruif('foo');
}

function setfocus(bron,i,doel,add) { //verander ...select --> springt naar ..text / --> maakt ..text leeg
	if (bron.options[i].selected == true) {
		if (add) { add.disabled = false; }
		doel.focus();
	} else if (bron.options[i].selected !== true) {
		if (add) { add.disabled = true; }
		doel.value = "";
	}
}

function setfocus2(bron,i,doel,add) { //klik op ...text --> ...select springt naar "anders, namelijk:"
	doel.options[i].selected = true;
	if (add) { add.disabled = false; }
}

function disableprijs() {
	document.form_invoer.prijs.style.color="#999999";
	document.form_invoer.prijs.value='onbekend';
}

function enableprijs() {
	document.form_invoer.prijs.style.color="#000000";
	document.form_invoer.prijsonbekend.checked=false;
	document.form_invoer.prijs.value='';
}

function disableselect(SOURCE,TARGET){
	SOURCE.style.color = "#000000";
	TARGET.style.color = "#999999";
	for(var i = 0;i < TARGET.length;i++){
		TARGET.options[i].selected = false;
	}
}

function submitdruif(kleur) {
	if (kleur != "") {
		document.form_invoer.action = "#druif";
		document.form_invoer.enctype = "application/x-www-form-urlencoded";
		document.form_invoer.target = "_self";
		document.form_invoer.submit();
	}
}

function submitplaatje(welke) {
	if (welke != "") {
		document.form_invoer.action = "";
		document.form_invoer.encoding = "multipart/form-data";
		document.form_invoer.enctype = "multipart/form-data";
		document.form_invoer.target = "_self";
		document.form_invoer.actie.value = "plaatje";
		document.form_invoer.submit();
	}
}

function submitwijn() {
	var fatal_error = new Array();
	var error = "";
	var nrerrors = 0;
	
	if (document.form_invoer.form_land_id.value == "")	{ fatal_error[0] = "• U moet een land van herkomst kiezen!\n"; } else { fatal_error[0] = 0; }
	if (document.form_invoer.form_regio_id.value == "")	{ fatal_error[1] = "• U moet een regio van herkomst kiezen!\n"; } else { fatal_error[1] = 0; }
	if (document.form_invoer.wijnnaam.value == "")		{ fatal_error[2] = "• U moet een naam voor de wijn opgeven!\n"; } else { fatal_error[2] = 0; }
	if (document.form_invoer.eindoordeel.value == "")	{ fatal_error[3] = "• U moet een eindoordeel voor de wijn opgeven!\n"; } else { fatal_error[3] = 0; }
	if (document.form_invoer.jaartal.value == "")		{ fatal_error[4] = "• U moet een oogstjaar kiezen!\n"; } else { fatal_error[4] = 0; }
	if (document.form_invoer.wijnsoort.value == "")		{ fatal_error[5] = "• U moet een wijnsoort kiezen!\n"; } else { fatal_error[5] = 0; }
	if (document.form_invoer.beschrijving.value == "")	{ fatal_error[6] = "• U moet een beschrijving van de wijn opgeven!\n"; } else { fatal_error[6] = 0; }
	if (!is_integer(document.form_invoer.eindoordeel.value) && document.form_invoer.eindoordeel.value !== "??" || document.form_invoer.eindoordeel.value < 0 || document.form_invoer.eindoordeel.value > 100) { fatal_error[7] = "• U moet voor het eindoordeel een geheel getal tussen 0 en 100 opgeven!\n"; } else { fatal_error[7] = 0; }
	if (!is_decimal(document.form_invoer.prijs.value) && document.form_invoer.prijs.value !== "onbekend") { fatal_error[8] = "• U moet voor de prijs een getal opgeven of \'onbekend\' aanklikken!\n"; } else { fatal_error[8] = 0; }
	if (!is_decimal(document.form_invoer.alcohol.value)) { fatal_error[9] = "• U moet voor het alcoholpercentage een getal opgeven, zonder %-teken!\n"; } else { fatal_error[9] = 0; }
	if (!is_integer(document.form_invoer.ervaring.value)) { fatal_error[10] = "• U moet voor \'ervaring\' het aantal geproefde flessen opgeven!\n"; } else { fatal_error[10] = 0; }
	
	for (i=0; i < fatal_error.length; i++) { if (fatal_error[i] !== 0) { error = error+fatal_error[i]; nrerrors++; } }
	if (nrerrors == 1) { nrerrtxt = "Er is "+nrerrors+" fout aangetroffen. "; } else { nrerrtxt = "Er zijn "+nrerrors+" fouten aangetroffen. "; }
	if (error !== "") { alert(nrerrtxt+"De wijn kon niet worden ingevoerd...\n\n"+error); }
	
	if (error == "") {
		document.form_invoer.action = "index.php?page_id=10";
		document.form_invoer.encoding = "application/x-www-form-urlencoded";
		document.form_invoer.enctype = "application/x-www-form-urlencoded";
		document.form_invoer.target = "_self";
		document.form_invoer.submit();
	}
}

function submitkelderwijn() {
	var fatal_error = new Array();
	var error = "";
	var nrerrors = 0;
	
	if (document.form_invoer.form_land_id.value == "")	{ fatal_error[0] = "• U moet een land van herkomst kiezen!\n"; } else { fatal_error[0] = 0; }
	if (document.form_invoer.form_regio_id.value == "")	{ fatal_error[1] = "• U moet een regio van herkomst kiezen!\n"; } else { fatal_error[1] = 0; }
	if (document.form_invoer.wijnnaam.value == "")		{ fatal_error[2] = "• U moet een naam voor de wijn opgeven!\n"; } else { fatal_error[2] = 0; }
	if (document.form_invoer.flessen.value == "")	{ fatal_error[3] = "• U moet het aantal flessen dat u van deze wijn in de kelder heeft liggen opgeven!\n"; } else { fatal_error[3] = 0; }
	if (document.form_invoer.jaartal.value == "")		{ fatal_error[4] = "• U moet een oogstjaar kiezen!\n"; } else { fatal_error[4] = 0; }
	if (document.form_invoer.wijnsoort.value == "")		{ fatal_error[5] = "• U moet een wijnsoort kiezen!\n"; } else { fatal_error[5] = 0; }
	if (!is_integer(document.form_invoer.flessen.value)) { fatal_error[6] = "• U moet het aantal flessen dat u van deze wijn in de kelder heeft liggen opgeven met een geheel getal!\n"; } else { fatal_error[6] = 0; }
	if (!is_decimal(document.form_invoer.prijs.value) && document.form_invoer.prijs.value !== "onbekend") { fatal_error[7] = "• U moet voor de prijs een getal opgeven of \'onbekend\' aanklikken!\n"; } else { fatal_error[7] = 0; }
	if (!is_decimal(document.form_invoer.alcohol.value)) { fatal_error[8] = "• U moet voor het alcoholpercentage een getal opgeven, zonder %-teken!\n"; } else { fatal_error[8] = 0; }
	if (!is_integer(document.form_invoer.ervaring.value)) { fatal_error[9] = "• U moet voor \'ervaring\' het aantal geproefde flessen opgeven!\n"; } else { fatal_error[9] = 0; }
	if (document.form_invoer.eindoordeel.value !== "")	{ if (!is_integer(document.form_invoer.eindoordeel.value) && document.form_invoer.eindoordeel.value !== "??" || document.form_invoer.eindoordeel.value < 0 || document.form_invoer.eindoordeel.value > 100) { fatal_error[10] = "• U moet voor het eindoordeel een geheel getal tussen 0 en 100 opgeven!\n"; } else { fatal_error[10] = 0; } }
	
	for (i=0; i < fatal_error.length; i++) { if (fatal_error[i] !== 0) { error = error+fatal_error[i]; nrerrors++; } }
	if (nrerrors == 1) { nrerrtxt = "Er is "+nrerrors+" fout aangetroffen. "; } else { nrerrtxt = "Er zijn "+nrerrors+" fouten aangetroffen. "; }
	if (error !== "") { alert(nrerrtxt+"De wijn kon niet worden ingevoerd...\n\n"+error); }
	
	if (error == "") {
		document.form_invoer.action = "index.php?page_id=23";
		document.form_invoer.encoding = "application/x-www-form-urlencoded";
		document.form_invoer.enctype = "application/x-www-form-urlencoded";
		document.form_invoer.target = "_self";
		document.form_invoer.submit();
	}
}

function submitreset(pageid) {
	/*document.invoerform.action = "index.php?page_id=10";
	document.invoerform.method = "post";
	document.invoerform.actie.value = "reset";
	document.invoerform.submit();*/
	document.location = "index.php?page_id="+pageid;
}

var isIE=window.attachEvent?true:false;
var selectDefaults=[];

function addEvent(el,ev,fn) {
	if(isIE)el.attachEvent('on'+ev,fn);
	else if (el.addEventListener) el.addEventListener(ev,fn,false);
}

addEvent(window,'load',buildMultiselects);

function buildMultiselects(){
	do {
		found=0;
		a=document.getElementsByTagName('select');
		for (b=0;b<a.length,!found;b++) {
			var ms=a[b];
			if (ms==null) break;
			var name=ms.name.substring(0,ms.name.length-2);
			if (ms.name.substring(ms.name.length-2,ms.name.length)=='[]') {
				selectDefaults[name]=[];
				found=1;
				disabled=(ms.disabled)?1:0;
				//width=ms.offsetWidth;
				width=150;
				height=ms.offsetHeight;
				if(width<120)width=120;
				if(height<60)height=60;
				var wrapper=document.createElement('div');
				wrapper.style.width=width+"px";
				wrapper.style.height=height+"px";
				wrapper.style.position='relative';
				wrapper.style.border="2px solid #000";
				wrapper.style.borderColor="#333 #ccc #ccc #333";
				wrapper.style.font="10px sans-serif";
				wrapper.style.backgroundColor='#FFFFFF';
				el=document.createElement('div');
				el.style.position='absolute';
				el.style.top='0px';
				el.style.left='0';
				el.style.overflow='auto';
				el.style.width=(isIE?width-4:width)+4+"px";
				el.style.height=height-(isIE?19:15)+19+"px";
				c=ms.getElementsByTagName('option');
				for (d=0;d<c.length;d++) {
					el2=document.createElement('label');
					el2.style.display="block";
					el2.style.border="1px solid #eee";
					el2.style.borderWidth="1px 0";
					el2.style.font="10px arial";
					el2.style.lineHeight="10px";
					el2.style.paddingLeft="20px";
					el2.htmlFor=ms.name+d;
					el3=document.createElement('input');
					el3.type="checkbox";
					if (c[d].selected) {
						el3.checked="checked";
						el3.defaultChecked=true;
					}
					selectDefaults[name][d]=c[d].selected?'checked':'';
					if (disabled) el3.disabled="disabled";
					el3.value=c[d].value;
					el3.style.marginLeft="-16px";
					el3.style.marginTop="-5px";
					el3.name=ms.name;
					el3.id=ms.name+d;
					var text=c[d].innerHTML;
					text=text.replace(/\&nbsp;?/g,' ');
					text=text.replace(/\&lt;?/g,'<');
					text=text.replace(/\&gt;?/g,'>');
					el4=document.createTextNode(text);
					el2.appendChild(el3);
					el2.appendChild(el4);
					el.appendChild(el2);
				}
				wrapper.appendChild(el);
				ms.parentNode.insertBefore(wrapper,ms);
				ms.parentNode.removeChild(ms);
			}
		}
	} while (found);
}

function multiselect_selectall(name,val) {
	var els=document.getElementsByTagName('input'),found=0;
	for (var i=0;i<els.length;++i) {
		if (els[i].name==name+'[]') els[i].checked=val=='reset'?selectDefaults[name][found++]:val;
	}
}

// Accepts a variable number of arguments, in triplets as follows:
// arg 1: simple name of a layer object, such as "Layer1"
// arg 2: ignored (for backward compatibility)
// arg 3: 'hide' or 'show'
// repeat...
// Example: showHideLayers(Layer1,'','show',Layer2,'','hide');
function showHideLayers() { 
  var i, visStr, obj, args = showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) {
    if ((obj = findObj(args[i])) != null) {
      visStr = args[i+2];
      if (obj.style) {
        obj = obj.style;
        if(visStr == 'show') visStr = 'visible';
        else if(visStr == 'hide') visStr = 'hidden';
      }
      obj.visibility = visStr;
    }
  }
}

//// EDITWIJN ////
function pass3(value,type) {
	if (value != "") {
		if (type == 'land' && document.form_invoer.form_regio_id) {
			document.form_invoer.form_regio_id.value = '';
		}
		document.form_invoer.action = "";
		document.form_invoer.enctype = "application/x-www-form-urlencoded";
		document.form_invoer.target = "_self";
		document.form_invoer.submit();
	}
}
function editinputfile(doel) {
   alert('Selecteer een bestand door op Bladeren.../Browse... te klikken!');
   doel.value = "";
   pass3('foo');
}
function editsubmitplaatje(welke) {
	if (welke != "") {
		document.form_invoer.action = "";
		document.form_invoer.encoding = "multipart/form-data";
		document.form_invoer.enctype = "multipart/form-data";
		document.form_invoer.target = "_self";
		document.form_invoer.actie.value = "plaatje";
		document.form_invoer.submit();
	}
}
function editsubmitwijn() {
	var fatal_error = new Array();
	var error = "";
	var nrerrors = 0;
	
	if (document.form_invoer.form_land_id.value == "")	{ fatal_error[0] = "• U moet een land van herkomst kiezen!\n"; } else { fatal_error[0] = 0; }
	if (document.form_invoer.form_regio_id.value == "")	{ fatal_error[1] = "• U moet een regio van herkomst kiezen!\n"; } else { fatal_error[1] = 0; }
	if (document.form_invoer.wijnnaam.value == "")		{ fatal_error[2] = "• U moet een naam voor de wijn opgeven!\n"; } else { fatal_error[2] = 0; }
	if (document.form_invoer.eindoordeel.value == "")	{ fatal_error[3] = "• U moet een eindoordeel voor de wijn opgeven!\n"; } else { fatal_error[3] = 0; }
	if (document.form_invoer.jaartal.value == "")		{ fatal_error[4] = "• U moet een oogstjaar kiezen!\n"; } else { fatal_error[4] = 0; }
	if (document.form_invoer.wijnsoort.value == "")		{ fatal_error[5] = "• U moet een wijnsoort kiezen!\n"; } else { fatal_error[5] = 0; }
	if (document.form_invoer.beschrijving.value == "")	{ fatal_error[6] = "• U moet een beschrijving van de wijn opgeven!\n"; } else { fatal_error[6] = 0; }
	if (!is_integer(document.form_invoer.eindoordeel.value) && document.form_invoer.eindoordeel.value !== "??" || document.form_invoer.eindoordeel.value < 0 || document.form_invoer.eindoordeel.value > 100) { fatal_error[7] = "• U moet voor het eindoordeel een geheel getal tussen 0 en 100 opgeven!\n"; } else { fatal_error[7] = 0; }
	if (!is_decimal(document.form_invoer.prijs.value) && document.form_invoer.prijs.value !== "onbekend") { fatal_error[8] = "• U moet voor de prijs een getal opgeven of \'onbekend\' aanklikken!\n"; } else { fatal_error[8] = 0; }
	if (!is_decimal(document.form_invoer.alcohol.value)) { fatal_error[9] = "• U moet voor het alcoholpercentage een getal opgeven, zonder %-teken!\n"; } else { fatal_error[9] = 0; }
	if (!is_integer(document.form_invoer.ervaring.value)) { fatal_error[10] = "• U moet voor \'ervaring\' het aantal geproefde flessen opgeven!\n"; } else { fatal_error[10] = 0; }
	
	for (i=0; i < fatal_error.length; i++) { if (fatal_error[i] !== 0) { error = error+fatal_error[i]; nrerrors++; } }
	if (nrerrors == 1) { nrerrtxt = "Er is "+nrerrors+" fout aangetroffen. "; } else { nrerrtxt = "Er zijn "+nrerrors+" fouten aangetroffen. "; }
	if (error !== "") { alert(nrerrtxt+"De wijn kan niet worden gewijzigd...\n\n"+error); }
	
	if (error == "") {
		document.form_invoer.action = "?page_id=12";
		document.form_invoer.encoding = "application/x-www-form-urlencoded";
		document.form_invoer.enctype = "application/x-www-form-urlencoded";
		document.form_invoer.target = "_self";
		document.form_invoer.submit();
	}
}
function editsubmitkelderwijn() {
	var fatal_error = new Array();
	var error = "";
	var nrerrors = 0;
	
	if (document.form_invoer.form_land_id.value == "")	{ fatal_error[0] = "• U moet een land van herkomst kiezen!\n"; } else { fatal_error[0] = 0; }
	if (document.form_invoer.form_regio_id.value == "")	{ fatal_error[1] = "• U moet een regio van herkomst kiezen!\n"; } else { fatal_error[1] = 0; }
	if (document.form_invoer.wijnnaam.value == "")		{ fatal_error[2] = "• U moet een naam voor de wijn opgeven!\n"; } else { fatal_error[2] = 0; }
	if (document.form_invoer.flessen.value == "")	{ fatal_error[3] = "• U moet het aantal flessen dat u van deze wijn in de kelder heeft liggen opgeven!\n"; } else { fatal_error[3] = 0; }
	if (document.form_invoer.jaartal.value == "")		{ fatal_error[4] = "• U moet een oogstjaar kiezen!\n"; } else { fatal_error[4] = 0; }
	if (document.form_invoer.wijnsoort.value == "")		{ fatal_error[5] = "• U moet een wijnsoort kiezen!\n"; } else { fatal_error[5] = 0; }
	if (!is_integer(document.form_invoer.flessen.value)) { fatal_error[6] = "• U moet het aantal flessen dat u van deze wijn in de kelder heeft liggen opgeven met een geheel getal!\n"; } else { fatal_error[6] = 0; }
	if (!is_decimal(document.form_invoer.prijs.value) && document.form_invoer.prijs.value !== "onbekend") { fatal_error[7] = "• U moet voor de prijs een getal opgeven of \'onbekend\' aanklikken!\n"; } else { fatal_error[7] = 0; }
	if (!is_decimal(document.form_invoer.alcohol.value)) { fatal_error[8] = "• U moet voor het alcoholpercentage een getal opgeven, zonder %-teken!\n"; } else { fatal_error[8] = 0; }
	if (!is_integer(document.form_invoer.ervaring.value)) { fatal_error[9] = "• U moet voor \'ervaring\' het aantal geproefde flessen opgeven!\n"; } else { fatal_error[9] = 0; }
	if (document.form_invoer.eindoordeel.value !== "")	{ if (!is_integer(document.form_invoer.eindoordeel.value) && document.form_invoer.eindoordeel.value !== "??" || document.form_invoer.eindoordeel.value < 0 || document.form_invoer.eindoordeel.value > 100) { fatal_error[10] = "• U moet voor het eindoordeel een geheel getal tussen 0 en 100 opgeven!\n"; } else { fatal_error[10] = 0; } }
	
	for (i=0; i < fatal_error.length; i++) { if (fatal_error[i] !== 0) { error = error+fatal_error[i]; nrerrors++; } }
	if (nrerrors == 1) { nrerrtxt = "Er is "+nrerrors+" fout aangetroffen. "; } else { nrerrtxt = "Er zijn "+nrerrors+" fouten aangetroffen. "; }
	if (error !== "") { alert(nrerrtxt+"De wijn kan niet worden gewijzigd...\n\n"+error); }
	
	if (error == "") {
		document.form_invoer.action = "?page_id=25";
		document.form_invoer.encoding = "application/x-www-form-urlencoded";
		document.form_invoer.enctype = "application/x-www-form-urlencoded";
		document.form_invoer.target = "_self";
		document.form_invoer.submit();
	}
}
function editsubmitreset(pageid,wijnid) {
	/*document.invoerform.action = "index.php?page_id=10";
	document.invoerform.method = "post";
	document.invoerform.actie.value = "reset";
	document.invoerform.submit();*/
	document.location = "index.php?page_id="+pageid+"&wijnid="+wijnid;
}

function switchminderflessen(actie) {
	document.form_invoer.minderflessen.disabled = actie;
}
function flessenplusmin(actie) {
	aantal = document.form_invoer.minderflessennr.value;
	if (actie == "plus") {
		document.form_invoer.minderflessennr.value++;
	} else
	if (actie == "min" && aantal >= 1) {
		document.form_invoer.minderflessennr.value--;
	}
}
function editsubmitnaardb() {
	var fatal_error = new Array();
	var error = "";
	var nrerrors = 0;
	
	if (document.form_invoer.form_land_id.value == "")	{ fatal_error[0] = "• U moet een land van herkomst kiezen!\n"; } else { fatal_error[0] = 0; }
	if (document.form_invoer.form_regio_id.value == "")	{ fatal_error[1] = "• U moet een regio van herkomst kiezen!\n"; } else { fatal_error[1] = 0; }
	if (document.form_invoer.wijnnaam.value == "")		{ fatal_error[2] = "• U moet een naam voor de wijn opgeven!\n"; } else { fatal_error[2] = 0; }
	if (document.form_invoer.eindoordeel.value == "")	{ fatal_error[3] = "• U moet een eindoordeel voor de wijn opgeven!\n"; } else { fatal_error[3] = 0; }
	if (document.form_invoer.jaartal.value == "")		{ fatal_error[4] = "• U moet een oogstjaar kiezen!\n"; } else { fatal_error[4] = 0; }
	if (document.form_invoer.wijnsoort.value == "")		{ fatal_error[5] = "• U moet een wijnsoort kiezen!\n"; } else { fatal_error[5] = 0; }
	if (document.form_invoer.beschrijving.value == "")	{ fatal_error[6] = "• U moet een beschrijving van de wijn opgeven!\n"; } else { fatal_error[6] = 0; }
	if (!is_integer(document.form_invoer.eindoordeel.value) || document.form_invoer.eindoordeel.value < 0 || document.form_invoer.eindoordeel.value > 100) { fatal_error[7] = "• U moet voor het eindoordeel een geheel getal tussen 0 en 100 opgeven!\n"; } else { fatal_error[7] = 0; }
	if (!is_decimal(document.form_invoer.prijs.value) && document.form_invoer.prijs.value !== "onbekend") { fatal_error[8] = "• U moet voor de prijs een getal opgeven of \'onbekend\' aanklikken!\n"; } else { fatal_error[8] = 0; }
	if (!is_decimal(document.form_invoer.alcohol.value)) { fatal_error[9] = "• U moet voor het alcoholpercentage een getal opgeven, zonder %-teken!\n"; } else { fatal_error[9] = 0; }
	if (!is_integer(document.form_invoer.ervaring.value)) { fatal_error[10] = "• U moet voor \'ervaring\' het aantal geproefde flessen opgeven!\n"; } else { fatal_error[10] = 0; }
	
	for (i=0; i < fatal_error.length; i++) { if (fatal_error[i] !== 0) { error = error+fatal_error[i]; nrerrors++; } }
	if (nrerrors == 1) { nrerrtxt = "Er is "+nrerrors+" fout aangetroffen. "; } else { nrerrtxt = "Er zijn "+nrerrors+" fouten aangetroffen. "; }
	if (error !== "") { alert(nrerrtxt+"De wijn kan niet worden overgebracht naar de Wijnen database...\n\n"+error); }
	
	if (error == "") {
		document.form_invoer.actie.value = "naardb";
		document.form_invoer.action = "?page_id=27";
		document.form_invoer.encoding = "application/x-www-form-urlencoded";
		document.form_invoer.enctype = "application/x-www-form-urlencoded";
		document.form_invoer.target = "_self";
		document.form_invoer.submit();
	}
}
//// GLOSSARIUM ////
function gloss_submitzoek() {
	if (document.zoekform.zoekwoord.value != "") {
		document.zoekform.actie.value = "zoek";
		document.zoekform.action = "index.php?page_id=3";
		document.zoekform.target = "_self";
		document.zoekform.submit();
	}
}
function gloss_submitadd() {
	if (document.addform.inputterm.value != "") {
		document.addform.actie.value = "add";
		document.addform.action = "index.php?page_id=3";
		document.addform.target = "_self";
		document.addform.submit();
	}
}

//// GEBRUIKER ////
function submitdoedit() {
	document.form_edituser.actie.value = "doedit";
	document.form_edituser.action = "index.php?page_id=13";
	document.form_edituser.target = "_self";
	document.form_edituser.submit();
}
function submitedituser() {
	document.form_edituser.actie.value = "edituser";
	document.form_edituser.action = "index.php?page_id=13";
	document.form_edituser.target = "_self";
	document.form_edituser.submit();
}

function submitdoeditkelder() {
	document.form_edituserkelder.actie.value = "doeditkelder";
	document.form_edituserkelder.action = "index.php?page_id=13";
	document.form_edituserkelder.target = "_self";
	document.form_edituserkelder.submit();
}
function submitedituserkelder() {
	document.form_edituserkelder.actie.value = "edituserkelder";
	document.form_edituserkelder.action = "index.php?page_id=13";
	document.form_edituserkelder.target = "_self";
	document.form_edituserkelder.submit();
}
function submitnewkelder() {
	document.form_edituserkelder.actie.value = "newkelder";
	document.form_edituserkelder.action = "index.php?page_id=23";
	document.form_edituserkelder.target = "_self";
	document.form_edituserkelder.submit();
}

//// REGISTREREN ////
function submitdoregister() {
	var fatal_error = new Array();
	var error = "";
	var nrerrors = 0;
	
	if (document.form_registration.inputusernaam.value == "")	{ fatal_error[0] = "• U moet een gebruikersnaam invoeren!\n"; } else { fatal_error[0] = 0; }
	if (document.form_registration.inputpassword.value == "")	{ fatal_error[1] = "• U moet een wachtwoord invoeren!\n"; } else { fatal_error[1] = 0; }
	if (document.form_registration.inputpassword2.value == "")	{ fatal_error[2] = "• U moet uw wachtwoord ter bevestiging herhalen!\n"; } else { fatal_error[2] = 0; }
	if (document.form_registration.inputvoornaam.value == "")	{ fatal_error[3] = "• U moet uw voornaam invoeren!\n"; } else { fatal_error[3] = 0; }
	if (document.form_registration.inputachternaam.value == "")	{ fatal_error[4] = "• U moet uw achternaam invoeren!\n"; } else { fatal_error[4] = 0; }
	if (!is_allowed(document.form_registration.inputusernaam.value)) { fatal_error[5] = "• Uw gebruikersnaam mag alleen de tekens 0-9, a-z, A-Z en _ (underscore) bevatten!\n"; } else { fatal_error[5] = 0; }
	if (document.form_registration.inputusernaam.value !== "" && document.form_registration.inputusernaam.value.length < 4 || document.form_registration.inputusernaam.value.length > 12) { fatal_error[6] = "• Uw gebruikersnaam moet min. 4 en mag max. 12 tekens lang zijn!\n"; } else { fatal_error[6] = 0; }
	if (!is_allowed(document.form_registration.inputpassword.value)) { fatal_error[7] = "• Uw wachtwoord mag alleen de tekens 0-9, a-z, A-Z en _ (underscore) bevatten!\n"; } else { fatal_error[7] = 0; }
	if (document.form_registration.inputpassword.value !== "" && document.form_registration.inputpassword.value.length < 4 || document.form_registration.inputpassword.value.length > 12) { fatal_error[8] = "• Uw wachtwoord moet min. 4 en mag max. 12 tekens lang zijn!\n"; } else { fatal_error[8] = 0; }
	if (document.form_registration.inputpassword2.value !== document.form_registration.inputpassword.value && document.form_registration.inputpassword.value !== "" && document.form_registration.inputpassword2.value !== "") { fatal_error[9] = "• U heeft niet tweemaal hetzelfde wachtwoord ingevoerd!\n"; } else { fatal_error[9] = 0; }
	if (document.form_registration.inputemail.value == "" || !is_email(document.form_registration.inputemail.value)) { fatal_error[10] = "• U moet een geldig e-mailadres invoeren!\n"; } else { fatal_error[10] = 0; }
	if (!document.form_registration.inputaccoord.checked) { fatal_error[11] = "• U moet accoord gaan met de Algemene Gebruiksvoorwaarden en het Privacy Beleid van Wereld van Wijn!\n"; } else { fatal_error[11] = 0; }
	
	for (i=0; i < fatal_error.length; i++) { if (fatal_error[i] !== 0) { error = error+fatal_error[i]; nrerrors++; } }
	if (nrerrors == 1) { nrerrtxt = "Er is "+nrerrors+" fout aangetroffen. "; } else { nrerrtxt = "Er zijn "+nrerrors+" fouten aangetroffen. "; }
	if (error !== "") { alert(nrerrtxt+"De registratiegegevens konden niet worden verzonden...\n\n"+error); }
	
	if (error == "") {
		document.form_registration.action = "index.php?page_id=14";
		document.form_registration.actie.value = "doregister";
		document.form_registration.encoding = "application/x-www-form-urlencoded";
		document.form_registration.enctype = "application/x-www-form-urlencoded";
		document.form_registration.target = "_self";
		document.form_registration.submit();
	}
}

//// FORUM ////
function submitaddtopic() {

	var fatal_error = new Array();
	var error = "";
	var nrerrors = 0;
	
	if (document.form_forumadd.input_forumid.value == "")	{ fatal_error[0] = "• U moet een forum kiezen waaraan u het onderwerp wilt toevoegen!\n"; } else { fatal_error[0] = 0; }
	if (document.form_forumadd.input_titel.value == "")	{ fatal_error[1] = "• U moet een onderwerp invoeren!\n"; } else { fatal_error[1] = 0; }
	if (document.form_forumadd.bericht.value == "")	{ fatal_error[2] = "• U moet een bericht invoeren!\n"; } else { fatal_error[2] = 0; }
	
	for (i=0; i < fatal_error.length; i++) { if (fatal_error[i] !== 0) { error = error+fatal_error[i]; nrerrors++; } }
	if (nrerrors == 1) { nrerrtxt = "Er is "+nrerrors+" fout aangetroffen. "; } else { nrerrtxt = "Er zijn "+nrerrors+" fouten aangetroffen. "; }
	if (error !== "") { alert(nrerrtxt+"Het onderwerp kon niet worden verzonden...\n\n"+error); }
	
	if (error == "") {
		document.form_forumadd.submit();
	}
}

function submitaddreply() {
	var fatal_error = new Array();
	var error = "";
	var nrerrors = 0;
	
	if (document.form_forumadd.bericht.value == "")	{ fatal_error[0] = "• U moet een bericht invoeren!\n"; } else { fatal_error[0] = 0; }
	
	for (i=0; i < fatal_error.length; i++) { if (fatal_error[i] !== 0) { error = error+fatal_error[i]; nrerrors++; } }
	if (nrerrors == 1) { nrerrtxt = "Er is "+nrerrors+" fout aangetroffen. "; } else { nrerrtxt = "Er zijn "+nrerrors+" fouten aangetroffen. "; }
	if (error !== "") { alert(nrerrtxt+"Uw reactie kon niet worden verzonden...\n\n"+error); }
	
	if (error == "") {
		document.form_forumadd.submit();
	}
}

function confirmforumpostdel(postid,topicid) {
	conf = confirm('Weet u zeker dat u dit bericht wilt verwijderen?');
	if (conf == true) {
		window.location='?page_id=17&postid='+postid+'&returntopicid='+topicid;
	}
}

//// ADMIN ////
function go0(id,hendel) {
	object = id.value;
	if (hendel.value == -1) { code = decode64(object); } else
	if (hendel.value ==  1) { code = encode64(object); }
	id.value = code;
	hendel.value = -1*hendel.value;
}

// Base64 Encoder
// Code : http://www.aardwulf.com/tutor/base64/howto-1.asp
function encode64(input) {
	var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
	var output = "";
	var chr1, chr2, chr3 = "";
	var enc1, enc2, enc3, enc4 = "";
	var i = 0;
	
	do {
		chr1 = input.charCodeAt(i++);
		chr2 = input.charCodeAt(i++);
		chr3 = input.charCodeAt(i++);
		enc1 = chr1 >> 2;
		enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
		enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
		enc4 = chr3 & 63;
		if (isNaN(chr2)) { enc3 = enc4 = 64; } else
		if (isNaN(chr3)) { enc4 = 64; }
		output = output + 
		keyStr.charAt(enc1) + 
		keyStr.charAt(enc2) + 
		keyStr.charAt(enc3) + 
		keyStr.charAt(enc4);
		chr1 = chr2 = chr3 = "";
		enc1 = enc2 = enc3 = enc4 = "";
	} while (i < input.length);
	
	return output;
}

// Base64 Decoder
function decode64(input) {
	var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
	var output = "";
	var chr1, chr2, chr3 = "";
	var enc1, enc2, enc3, enc4 = "";
	var i = 0;
	
	// remove all characters that are not A-Z, a-z, 0-9, +, /, or =
	var base64test = /[^A-Za-z0-9\+\/\=]/g;
	if (base64test.exec(input)) {
		alert("There were invalid base64 characters in the input text.\n" +
		"Valid base64 characters are A-Z, a-z, 0-9, ´+´, ´/´, and ´=´\n" +
		"Expect errors in decoding.");
	}
	input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
	
	do {
		enc1 = keyStr.indexOf(input.charAt(i++));
		enc2 = keyStr.indexOf(input.charAt(i++));
		enc3 = keyStr.indexOf(input.charAt(i++));
		enc4 = keyStr.indexOf(input.charAt(i++));
		chr1 = (enc1 << 2) | (enc2 >> 4);
		chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
		chr3 = ((enc3 & 3) << 6) | enc4;
		output = output + String.fromCharCode(chr1);
		if (enc3 != 64) { output = output + String.fromCharCode(chr2); }
		if (enc4 != 64) { output = output + String.fromCharCode(chr3); }
		chr1 = chr2 = chr3 = "";
		enc1 = enc2 = enc3 = enc4 = "";
	} while (i < input.length);
	
	return output;
}

function confirmuserdel(userid,usernaam) {
	vraag = "Weet u zeker dat u gebruiker '"+usernaam+"' wilt verwijderen?";
	conf = confirm(vraag);
	if (conf == true) {
		window.location='?page_id=17&userid='+userid;
	}
}

function submitadddruif() {
	if (document.adminform.inputdruifnaam.value != "") {
		document.adminform.action = "?page_id=10&actie=druif_invoer";
		document.adminform.method = "post";
		document.adminform.target = "_self";
		document.adminform.submit();
	}
}
