/* SERVER CACHE */
function addLoadEvent(func)
{
	var oldonload = window.onload;
	if (typeof window.onload != 'function')
	{
		window.onload = func;
	}
	else
	{
		window.onload = function()
		{
			oldonload();
			func();
		}
	}
}
function addClass(element,value)
{
	if (!element.className)
	{
		element.className = value;
	}
	else
	{
		newClassName = element.className;
		newClassName+= " ";
		newClassName+= value;
		element.className = newClassName;
	}
}
function GoToUrl(url)
{
	window.location.href = url;
}
function validateForm(whichform)
{
	for (var i=0; i<whichform.elements.length; i++)
	{
		var element = whichform.elements[i];
		if (element.name == 'search'){
			if (element.className.indexOf("text") != -1)
			{
				if (!isFilled(element))
				{
					alert("Gelieve een zoekterm op te geven.");
					element.focus();
					return false;
				}
	   		}
	   	} else if (element.name == 'username'){
			if (element.className.indexOf("text") != -1)
			{
				if (!isFilled(element))
				{
					alert("Gelieve een gebruikersnaam in te geven.");
					element.focus();
					return false;
				}
	   		}
	   	} else if (element.name == 'password'){
			if (element.className.indexOf("text") != -1)
			{
				if (!isFilled(element))
				{
					alert("Gelieve een wachtwoord in te geven.");
					element.focus();
					return false;
				}
	   		}
	   	}
	}
	return true;
}
function isFilled(field)
{
	if (field.value.length < 1)
	{
		return false;
	}
	else
	{
		return true;
	}
}
function prepareForms()
{
	for (var i=0; i<document.forms.length; i++)
	{
		var thisform = document.forms[i];
		thisform.onsubmit = function()
		{
		  return validateForm(this);
		}
	}
}
//addLoadEvent(prepareForms);
// check multi checkboxes based on the name passed in.
function CheckMultiple(name) 
{
	theFrm = document.frmSS;
	for (var i=0; i < theFrm.length; i++) 
	{
		fldObj = theFrm.elements[i];
		var fieldnamecheck=fldObj.name.indexOf(name);
		if (fieldnamecheck != -1) {
			if (fldObj.checked) {
				return true;
			}
		}
	}
	return false;
}
// check multi checkboxes based on the name passed in.
function CheckMultiple2(theFrm,name) 
{
	//theFrm = document.frmSS;
	for (var i=0; i < theFrm.length; i++) 
	{
		fldObj = theFrm.elements[i];
		var fieldnamecheck=fldObj.name.indexOf(name);
		if (fieldnamecheck != -1) {
			if (fldObj.checked) {
				return true;
			}
		}
	}
	return false;
}
function CheckSS()
{
	theFrm = document.frmSS;
	hasDot = theFrm.Email.value.indexOf(".");
	hasAt = theFrm.Email.value.indexOf("@");
	if (hasDot == -1 || hasAt == -1)
	{
		alert("Please enter a valid email address.");
		theFrm.Email.focus();
		theFrm.Email.select();
		//return false;
	}
	//return true;
}
function MM_CheckFlashVersion(reqVerStr,msg){
  with(navigator){
    var isIE  = (appVersion.indexOf("MSIE") != -1 && userAgent.indexOf("Opera") == -1);
    var isWin = (appVersion.toLowerCase().indexOf("win") != -1);
    if (!isIE || !isWin){  
      var flashVer = -1;
      if (plugins && plugins.length > 0){
        var desc = plugins["Shockwave Flash"] ? plugins["Shockwave Flash"].description : "";
        desc = plugins["Shockwave Flash 2.0"] ? plugins["Shockwave Flash 2.0"].description : desc;
        if (desc == "") flashVer = -1;
        else{
          var descArr = desc.split(" ");
          var tempArrMajor = descArr[2].split(".");
          var verMajor = tempArrMajor[0];
          var tempArrMinor = (descArr[3] != "") ? descArr[3].split("r") : descArr[4].split("r");
          var verMinor = (tempArrMinor[1] > 0) ? tempArrMinor[1] : 0;
          flashVer =  parseFloat(verMajor + "." + verMinor);
        }
      }
      // WebTV has Flash Player 4 or lower -- too low for video
      else if (userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 4.0;
      var verArr = reqVerStr.split(",");
      var reqVer = parseFloat(verArr[0] + "." + verArr[2]);
      if (flashVer < reqVer){
        if (confirm(msg))
          window.location = "http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash";
      }
    }
  } 
}
function showhide(layer_ref1,layer_ref2) {
	state1 = 'hidden';
	state2 = 'visible';
	/*if (document.all) { //IS IE 4 or 5 (or 6 beta)
		eval( "document.all." + layer_ref1 + ".style.visibility = state1");
		eval( "document.all." + layer_ref2 + ".style.visibility = state2");
	}*/
	if (document.layers) { //IS NETSCAPE 4 or below
		document.layers[layer_ref1].visibility = state1;
		document.layers[layer_ref2].visibility = state2;
	}
	if (document.getElementById) {// && !document.all) {
		maxwell_smart1 = document.getElementById(layer_ref1);
		maxwell_smart1.style.visibility = state1;
		maxwell_smart2 = document.getElementById(layer_ref2);
		maxwell_smart2.style.visibility = state2;
	}
}
function showhidedisplay(layer_ref1,layer_ref2) {
	state1 = 'none';
	state2 = 'block';
	/*if (document.all) { //IS IE 4 or 5 (or 6 beta)
		eval( "document.all." + layer_ref1 + ".style.display = state1");
		eval( "document.all." + layer_ref2 + ".style.display = state2");
	}*/
	if (document.layers) { //IS NETSCAPE 4 or below
		document.layers[layer_ref1].display = state1;
		document.layers[layer_ref2].display = state2;
	}
	if (document.getElementById) {// && !document.all) {
		maxwell_smart1 = document.getElementById(layer_ref1);
		maxwell_smart1.style.display = state1;
		maxwell_smart2 = document.getElementById(layer_ref2);
		maxwell_smart2.style.display = state2;
	}
}
function changeSpan(layer_ref,value){
	/*if (document.all) { //IS IE 4 or 5 (or 6 beta)
		eval( "document.all." + layer_ref + ".innerHTML = value");
	}*/
	if (document.layers) { //IS NETSCAPE 4 or below
		document.layers[layer_ref].innerHTML = value;
	}
	if (document.getElementById) {// && !document.all) {
		maxwell_smart = document.getElementById(layer_ref);
		maxwell_smart.innerHTML = value;
	}
}
function setMaxLength() {
	var x = document.getElementsByTagName('textarea');
	var counter = document.createElement('div');
	counter.className = 'counter';
	for (var i=0;i<x.length;i++) {
		if (x[i].getAttribute('maxlength')) {
			var counterClone = counter.cloneNode(true);
			counterClone.relatedElement = x[i];
			counterClone.innerHTML = '<span>0</span>/'+x[i].getAttribute('maxlength');
			x[i].parentNode.insertBefore(counterClone,x[i].nextSibling);
			x[i].relatedElement = counterClone.getElementsByTagName('span')[0];
			x[i].onkeyup = x[i].onchange = x[i].onblur = checkMaxLength;
			x[i].onkeyup();
			x[i].onblur();
			x[i].onchange();
		}
	}
}
function checkMaxLength() {
	var maxLength = this.getAttribute('maxlength');
	var currentLength = this.value.length;
	if ((currentLength - 1) > maxLength)
		this.relatedElement.className = 'toomuch';
	else
		this.relatedElement.className = '';
	this.relatedElement.firstChild.nodeValue = currentLength;
	// not innerHTML
	limiet(this, this.relatedElement.firstChild.nodeValue, maxLength);
}
function checkRequiredFields(theFrm,fieldsArray,useshowhide,div1,div2){	
	for (var i=0; i < theFrm.length; i++) 
	{
		var element = theFrm.elements[i];
		//alert(element.name);
		for (var j in fieldsArray) {
			//alert(element.name + ' == ' + fieldsArray[j]);
			if (element.name == fieldsArray[j]){
				if (element.className.indexOf("text") == -1){
					var elmname = element.name;
					// Radio Button Validation
					if (element.className.indexOf("check") != -1){
						if(elmname == 'accept_tou'){ var btn = CheckMultiple2(theFrm, 'accept_tou') };
						if(elmname == 'accept_pp'){ var btn = CheckMultiple2(theFrm, 'accept_pp')};
						//var btn = CheckMultiple(elmname);
						//alert(btn);
						if(!btn) {
							alert('Please fill in all the required fields (marked with an *)');
							return false;
						}
					} else {
						//if(elmname == 'accept_tou'){ alert('here');	var btn = valButton(theFrm.accept_tou) };
						//if(elmname == 'accept_pp'){ alert('here2'); var btn = valButton(theFrm.accept_pp)};
						//if(elmname == 'type_partnership'){ alert('here3'); var btn = valButton(theFrm.type_partnership)};
						var btn = valButton(theFrm.type_partnership);
						if (btn == null) {
							alert('Please fill in all the required fields (marked with an *)');
							return false;
						}
						//else alert('Button value ' + btn + ' selected'); 
						//var validBtn = valButton(element);
						//alert(validBtn);
					}
				} else if(!isFilled(element)){
					//alert(element.name);
					alert('Please fill in all the required fields (marked with an *)');
					return false;
				}
			}
		}
	}
	if(useshowhide == true) showhide(div1,div2);
	return true;
}
function valButton(btn) {
    var cnt = -1;
    for (var i=btn.length-1; i > -1; i--) {
        if (btn[i].checked) {cnt = i; i = -1;}
    }
    if (cnt > -1) return btn[cnt].value;
    else return null;
}
function limiet(veld, teller, maximum) {
	//alert(veld + ' - ' + teller + ' - ' + maximum);
	if (veld.value.length > maximum) {
		veld.value = veld.value.substring(0, maximum);
		//teller.value = maximum - veld.value.length;
		//alert(teller);
	} else {
		teller.value = maximum - veld.value.length;
	}
}
function getHeight() {
	var divh = document.getElementById('signup').offsetHeight;
	var divh2 = document.getElementById('l-col').offsetHeight;
	if(divh > divh2) {
		document.getElementById('bodyblock').style.height = divh +"px";
 	} else {
 		document.getElementById('bodyblock').style.height = divh2 +"px";
 	}
 }