function isDatum(obj, label) {
  var Day;
  var Month;
  var Year;
  var test;
  var reDate  = /^(\d{1,2})-(\d{1,2})-(\d{4})$/;
  var Valid  = false;
  if ((obj.value.length == 0) || (obj.value == null))
    Valid = true;
  else {
    Valid = (reDate.test(obj.value));
    if (Valid){
      Day   = Number(RegExp.$1);
      Month = Number(RegExp.$2) - 1;
      Year  = Number(RegExp.$3);
      test = new Date(Year,Month,Day);
      if (!( (Year  == (test.getYear()<1000?test.getYear()+1900:test.getYear())) &&
        (Month == test.getMonth()) &&
        (Day   == test.getDate()))){
          alert('Geen geldige datum in het veld ' + label + '.');
          Valid = false;
      }
    } else alert('Geen geldig datumformaat (dd-mm-yyyy) in het veld ' + label + '.');
  }
  return (Valid);
}

function checkFormat(obj, format) {
  var regEx  = new RegExp(format);
  if (obj.value=='' || regEx.test(obj.value))
    return true;
  else {
    obj.focus();
    alert('Ingevoerde waarde is niet correct!');
    return false;
  }
}

function comboRefresh(url,obj) {
  form = null;
  //obj = event.srcElement;
  if (obj.form != null)
    form = obj.form;
  else {
    par = obj.parentElement;
    while (par != null && par.tagName != 'FORM')
      par = par.parentElement;
      
    if (par != null)
      form = par;
  }
  if (form != null) {
    form.action = url;
    form.submit();
  }
  else 
    alert('fout!');
}

function memoHandler(obj,maxLength,event) {
  switch (event.type) {
    case 'keypress':
      if (event.charCode!=0) return (obj.value.length<maxLength);
      break;
    case 'change':
      if (obj.value.length>maxLength) {
        alert ("De ingevoerde tekst is te lang. Deze zal worden ingekort tot de maximaal toegestane lengte.");
        obj.value=obj.value.substr(0,maxLength);
      }
      break;
    case 'paste':
      range=document.selection.createRange();
      range.text=window.clipboardData.getData("Text");
      if (obj.value.length>maxLength) {
        alert ("De ingevoerde tekst is te lang. Deze zal worden ingekort tot de maximaal toegestane lengte.");
        obj.value=obj.value.substr(0,maxLength);
      }
      return false;
    case 'drop':
      range=document.selection.createRange();
      range.text=event.dataTransfer.getData("Text");
      if (obj.value.length>maxLength) {
        alert ("De ingevoerde tekst is te lang. Deze zal worden ingekort tot de maximaal toegestane lengte.");
        obj.value=obj.value.substr(0,maxLength);
      }
      return false;
  }
  return true;
}

function checkFields(frm) 
{
	for (i=0; i<mFields.length;i++) 
	{
		var obj = document.getElementById(mFields[i]);
		if (obj!=null && obj.form == frm)
		{
			if (obj.type == 'radio') 
			{
				radioChecked = false;
				objList = document.getElementsByName(mFields[i]);
				for (j=0; j<objList.length; j++) 
				{
					if (objList[j].checked) 
					{
						radioChecked = true;
					}
				}
				if (!radioChecked)
				{
					alert('Het veld ' + (obj.title ? obj.title : obj.name) + ' is verplicht.');
					obj.focus();
					return false;
				}
			} 
			else 
			{
				if (obj.value.length==0) 
				{
					alert('Het veld ' + (obj.title ? obj.title : obj.name) + ' is verplicht.');
					obj.focus();
					return false;
				}
			}
		}
	}
	for (i=0; i<nFields.length;i++) {
		var obj = document.getElementById(nFields[i]);
		if (obj!=null && obj.form == frm){
			if (obj.value.length>0) { 
				if (isNaN(obj.value.replace(',','.'))){
					alert('In het veld ' + (obj.title ? obj.title : obj.name ) + ' mogen alleen cijfers ingevuld worden.');
					obj.select();
					return false;
				}
			}
		}
	}
    for (i=0; i<dFields.length;i++) {
		var obj = document.getElementById(dFields[i]);
		if (obj!=null && obj.form == frm){
			if (obj.value.length>0) {
				var b = isDatum(obj,(obj.title ? obj.title : obj.name ));
				if (!b) {
					obj.select();
					return false;
				}
			}
		}
	}
	return true;
}
function changeVisibility(name,vis) {
	obj = document.getElementById(name);
	if (obj != null)
		obj.style.visibility = vis;
}
function expandNode(objname,imgname) {
	obj = document.getElementById(objname);
	im = document.getElementById(imgname);
	if (obj.style.display=='none') {
		obj.style.display='block';
		im.src = 'minus.gif';
	} else {
		obj.style.display='none';
		im.src = 'plus.gif';
	}
}