/*
	Ewout & Etienne
	General JavaScript
	by Victor Zuydweg
	jan 2007
*/

/* Initial load */

function init()
{
	if(document.all) setMenu();
}

if(window.addEventListener)
	window.addEventListener("load", init, false);
else if (window.attachEvent)
	window.attachEvent("onload", init);
else
	window.onload=init;

/*
	set submenu items cos stupid IE 7- can't handle hover on anything but anchors...
*/

function setMenu()
{
	if (document.all&&document.getElementById)
	{
		navRoot = document.getElementById("menu");
		for (i=0; i<navRoot.childNodes.length; i++)
		{
			node = navRoot.childNodes[i];
			if (node.nodeName=="LI")
			{
				node.onmouseover=function()
				{
					this.className+=" over";
				}
				node.onmouseout=function()
				{
					this.className=this.className.replace(" over", "");
				}
			}
		}
	}

}

/*
	Write Flash objects in order to negate the 'click here to activate'-rule in IE
	For ease of scripting it does work so in each and every browser
*/

function writeFlash(src,w,h,c)
{
	if(c.length>0) c = ' class="'+c+'"';
	else c = "";
	
	var result="";
	result += '<object'+c+' type="application/x-shockwave-flash" data="'+src+'" width="'+w+'" height="'+h+'" wmode="transparent">';
	result += '<param name="movie" value="'+src+'" />';
	result += '<param name="wmode" value="transparent" />';
	result += '</object>';
	document.write(result);
}

// Validate form op gastenboek-page

repeat = false;
function validateGastenboek(obj)
{
	errors = 0;
	for (i=0; i<obj.length; i++)
	{
		switch(obj[i].name)
		{
			case "f_email":
				if( obj[i].value != "" && !isEmail(obj[i]))
				{
					setError(obj[i]);
					errors++;
				}
				else resetError(obj[i]);
				break;
			case "f_name":
			case "f_mess":
				if(obj[i].value == "")
				{
					setError(obj[i]);
					errors++;
				}
				else resetError(obj[i]);
				break;
			case "f_versturen":
				if(repeat) return false;
				repeat = true;
				break;
		}
	}
	if(errors>0)
	{
		repeat = false;
		return false;
	}
	else return true;
}

// Validate form op news-page

function validateNieuws(obj)
{
	errors = 0;
	for (i=0; i<obj.length; i++)
	{
		switch(obj[i].name)
		{
			case "f_title":
			case "f_mess":
				if(obj[i].value == "")
				{
					setError(obj[i]);
					errors++;
				}
				else resetError(obj[i]);
				break;
			case "f_versturen":
				if(repeat) return false;
				repeat = true;
				break;
		}
	}
	if(errors>0)
	{
		repeat = false;
		return false;
	}
	else return true;
}

function isEmail(obj)
{
    apos=obj.value.indexOf("@")
    dotpos=obj.value.lastIndexOf(".")
    if (apos<1||dotpos-apos<2)
	{
		setError(obj);
		return false;
	}
    else
	{
		resetError(obj);
		return true;
	}
}

// setStyle on error

var errorClass = "error";

function setError(obj)
{
	if(!obj.error)
	{
		obj.className += " " + errorClass;
		l_obj = document.getElementById(obj.name.replace("f_","l_"));
		if(l_obj)l_obj.className += " " + errorClass;
	}
	obj.error = true;
}

function resetError(obj)
{
    obj.className = obj.className.replace(errorClass,"");
	l_obj = document.getElementById(obj.name.replace("f_","l_"));
	if(l_obj)l_obj.className = obj.className.replace(errorClass,"");
	obj.error = false;
}