// browser detect
is = getClient()
function getClient() {
  // convert all characters to lowercase to simplify testing
  var agt=navigator.userAgent.toLowerCase()
  var apv=navigator.appVersion.toLowerCase()
  this.major = parseInt(navigator.appVersion)
  this.minor = parseFloat(navigator.appVersion)
  // browserversion
  this.opera = (agt.indexOf('opera')!=-1);
  this.ns  = ((agt.indexOf('mozilla')!=-1) && ((agt.indexOf('spoofer')==-1) && (agt.indexOf('compatible') == -1)))
  this.ns4 = (this.ns && (this.minor >= 4.03) && (this.major < 5))
  this.ns6 = (this.ns && (this.major == 5) || this.opera)
  this.gecko = (this.ns && (this.major >= 5))
  this.ie   = (agt.indexOf("msie") != -1)
  this.ie4  = (this.ie && (this.major == 3))
  this.ie45 = (agt.indexOf('msie 4.5') != -1);
  this.ie5  = (this.ie && (this.major == 4))
  // platform
  this.mac = (apv.indexOf("macintosh")>0);
  this.win = (apv.indexOf("win")>0);	
  // compatible browsers
  this.ie4comp = ((this.ie4 && !this.mac) || this.ie45 || this.ie5)
  this.ns4comp = (this.ns4);
  this.ns6comp = (this.gecko || this.ns6);
  this.comp = (this.ie4comp || this.ns4comp || this.ns6comp);
  return (this)
}

function doCheck(strForm, strFields, strFieldNames){
	var arrFields, arrFieldNames;
	var blnResult=true;
	var objFrm;
	objFrm = document.forms[strForm];
	arrFields = strFields.split(",");
	arrFieldNames = strFieldNames.split(",");
	for(i=0; i<arrFields.length; i++){
		if(objFrm.elements[arrFields[i]]){
			if((objFrm.elements[arrFields[i]].type == "text") || (objFrm.elements[arrFields[i]].type == "textarea") || (objFrm.elements[arrFields[i]].type == "file") || (objFrm.elements[arrFields[i]].type == "password") || (objFrm.elements[arrFields[i]].type == "hidden") || (objFrm.elements[arrFields[i]].type == "select-one")){
				if(arrFields[i]=='txtEmail' || arrFields[i]=='Email' || arrFields[i]=='E-mail' || arrFields[i]=='e-mail' || arrFields[i]=='email'){
					if(!checkEmail(objFrm.elements[arrFields[i]].value)){ 
						alert('U heeft een ongeldig of geen email adres ingevuld!');
						objFrm.elements[arrFields[i]].focus();
						blnResult=false;
						break;
					}
				}
				if(objFrm.elements[arrFields[i]].value + ''==''){ 
					alert('U bent het veld ' +arrFieldNames[i]+ ' vergeten in te vullen');
					objFrm.elements[arrFields[i]].focus();
					blnResult=false;
					break;	
				}
			}else{
				var blnChecked = false;
				if(objFrm.elements[arrFields[i]].length !== "undefined"){
					for(j=0; j<objFrm.elements[arrFields[i]].length; j++){
						if(objFrm.elements[arrFields[i]][j].checked){
							blnChecked = true;
							break;
						}
					}
				}else{
					if(objFrm.elements[arrFields[i]].checked){
						blnChecked = true;
					}
				}
				if(!blnChecked){
					alert('U bent het veld ' +arrFieldNames[i]+ ' vergeten in te vullen');
					blnResult = false;
					break;
				}				
			}	
		}
	}
	return blnResult;
}


function checkEmail(checkString){
    var newstr = "";
    var at = false;
    var dot = false;

    // Als email een '@' heeft
    if (checkString.indexOf("@") != -1) {
      at = true;

    // Als email een '.' heeft
    } else if (checkString.indexOf(".") != -1) {
      dot = true;
    }

    // Onthouden van de string
    for (var i = 0; i < checkString.length; i++) {
        ch = checkString.substring(i, i + 1)
        if ((ch >= "A" && ch <= "Z") || (ch >= "a" && ch <= "z")
                || (ch == "@") || (ch == ".") || (ch == "_")
                || (ch == "-") || (ch >= "0" && ch <= "9")) {
                newstr += ch;
                if (ch == "@") {
                    at=true;
                }
                if (ch == ".") {
                    dot=true;
                }
        }
    }
    if ((at == true) && (dot == true)) {
        return true;
    }
    else {
      return false;
    }
}

function submitpage(target,name){
	status = "loading document... (" + name + ")";
	document.location = target;
}

function SubmitVote(strForm,blnResults,strType){
	var objForm = document.forms[strForm];
	var strQuestions = objForm.questions.value;
	var arrQuestions = strQuestions.split(",");
	var objElement = "";
	var strAnswers = "";
	var blnChecked = false;
	if(blnResults){
		objForm.action = "/scripts/handle.asp?type=vote&results=true";
		blnChecked = true;
	}else{
		for(i=0; i<arrQuestions.length; i++){
			blnChecked = false;
			objElement = objForm.elements["answer_id"+arrQuestions[i]];
			for(j=0; j<objElement.length; j++){
				if(objElement[j].checked){
					strAnswers = strAnswers + objElement[j].value + ","
					blnChecked = true;
					break;	
				}	
			}
			if(!blnChecked){
				break;
			}
		}
		objForm.action = "/scripts/handle.asp?type=vote";
	}
	if(blnChecked){
		objForm.answers.value = strAnswers.substr(0,strAnswers.length-1);
		objForm.submit(); 
	}else{
		if (strType == "poll"){
			alert("U dient teminste 1 keuze te maken per gestelde vraag.");
		}else{
			alert("U dient alle vragen te beantwoorden om deze enquete te versturen.");
		}
	}
} 

function winopen(theURL, Name, popW, popH, scroll) {
	var winleft = (screen.width - popW) / 2;
	var winUp = (screen.height - popH) / 2;
	winProp = 'width='+popW+',height='+popH+',left='+winleft+',top='+winUp+',scrollbars='+scroll+',titlebar=no,status=no,location=no,menubar=no,toolbar=no,directories=no';
	Win = window.open(theURL, Name, winProp)
	if (parseInt(navigator.appVersion) >= 4) { Win.window.focus(); }
}

function GotoMailLink(host, account, name)
{
	//document.write('<a href="mailto:'+account+'@'+host+'">')
	//name ? document.write(name) : document.write(account+'@'+host);
	//document.write('</a>');
	return location.href = 'mailto:'+account+'@'+host
}

function ShowHideID(Element,ShowHide){
	if (ShowHide == 1){
		Element.style.visibility='visible';
	}else if (ShowHide == 0){
		Element.style.visibility='hidden';
	}
}

function getElt () 
{ if (is.ns4comp)
  {
    var currentLayer = document.layers[getElt.arguments[0]];
    for (var i=1; i<getElt.arguments.length && currentLayer; i++)
    {   currentLayer = currentLayer.document.layers[getElt.arguments[i]];
    }
    return currentLayer;
  } 
  else if (is.ie4comp) {
    var elt = eval('document.all.' + getElt.arguments[getElt.arguments.length-1]);
    return(elt);
  }
  else if (is.ns6comp) {
	var elt = document.getElementById(getElt.arguments[getElt.arguments.length-1]);
	return(elt);
  }
}

function setIframe(Iframe)
{
	var the_height=document.getElementById(Iframe).contentWindow.document.body.scrollHeight;
	document.getElementById(Iframe).style.height=the_height + 20;
}

function DisplayOrHide(ElementID){
	element = document.getElementById(ElementID);
	vis = element.style.display;
	
	if (vis == "none"){
		element.style.display = "block";
	}else{
		element.style.display = "none";
	}
}

function subscriberselect(categoryid,subscriberid,checked){
	for (i=0;i<document.forms[0].elements.length;i++)
	{
		var element = document.forms[0].elements[i].name;
		if (element.substring(0,element.indexOf('_')) == categoryid || categoryid == 0){
			document.forms[0].elements[i].checked = checked;
		}
	}
}

function doSubscribercheck(){
	var blnValid = false;
	for (i=0;i<document.forms[0].elements.length;i++)
	{
		if(document.forms[0].elements[i].checked){
			blnValid = true;
		}
	}
	
	if(blnValid){
		frmSubmit.submit();
	}else{
		alert("Je moet tenminste 1 abonnee selecteren.");
	}
}

/* fix/functions for active content */

function ShowFlash(flurl,flname,flheight,flwidth,flalign,flbgcolor,flwmode,flquality,flversion,flmenu)
{
	document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=' + flversion + ',0,0,0" width="' + flwidth + '" height="' + flheight + '" id="' + flname + '" align="' + flalign + '">');
	document.write('<param name="allowScriptAccess" value="sameDomain" />');
	document.write('<param name="wmode" value="' + flwmode +'" />');
	document.write('<param name="menu" value="' + flmenu +'" />');
	document.write('<param name="movie" value="' + flurl + '" /><param name="quality" value="' + flquality + '" /><param name="bgcolor" value="' + flbgcolor + '" /><embed src="' + flurl + '" quality="high" bgcolor="' + flbgcolor + '" width="' + flwidth + '" height="' + flheight + '" name="' + flname +'" align="' + flalign + '" wmode="' + flwmode + '" menu="' + flmenu + '" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
	document.write('</object>');
}

function ShowMovie(murl,mname,mheight,mwidth,mautostart,mstatusbar,mshowcontrols,mtext)
{
	document.write('<OBJECT ID="' + mname + '" HEIGHT="' + mheight + '" WIDTH="' + mwidth + '" CLASSID="CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95" TYPE="application/x-oleobject">');
	document.write('<PARAM NAME="FileName" VALUE="' + murl + '">');
	document.write('<PARAM NAME="autostart" VALUE="' + mautostart + '">');
	document.write('<PARAM NAME="ShowStatusbar" VALUE="' + mstatusbar + '">');
	document.write('<PARAM NAME="showcontrols" VALUE="' + mshowcontrols + '">');
	document.write('<EMBED TYPE="application/x-mplayer2" SRC="' + murl + '" standby="' + mtext + '" AUTOSTART="' + mautostart + '" SHOWCONTROLS="' + mshowcontrols + '"></EMBED>');
	document.write('</OBJECT>');
}

function ShowQt(qurl,qwidth,qheight,qcontroller,qautoplay,qloop)
{
	document.write('<EMBED SRC="' + qurl + '" BORDER="0" WIDTH="' + qwidth + '" HEIGHT="' + qheight + '" CONTROLLER="' + qcontroller + '" AUTOPLAY="' + qautoplay + '" LOOP="' + qloop + '" SCALE="ToFit" BORDER="0" PLUGINSPAGE="http://www.apple.com/quicktime/download/index.html" TARGET="myself"></EMBED>');
}

function PostModule(sTarget)
{
	var frm	= window.document.forms("frmModule");
	frm.target = sTarget;
	frm.submit()	
}