function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

// validates that the field value string has one or more characters in it
function isNotEmpty(elem) {
	var str = elem.value;
    var re = /.+/;
    if(!str.match(re)) {
        alert("Gelieve verplichte velden in te vullen.");
        setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
        return false;
    } else {
        return true;
    }
}
function isNotEmpty2(elem, string) {
	var str = elem.value;
    var re = /.+/;
    if(!str.match(re)) {
        alert("Gelieve " + string + " in te vullen.");
        setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
        return false;
    } else {
        return true;
    }
}
function checkDate2(fld) {
    var mo, day, yr;
    var entry = fld.value;
    var re = /\b\d{1,2}[\/-]\d{1,2}[\/-]\d{4}\b/;
	
	if(entry == ""){
		return true;
	}else{
		if (re.test(entry)) {
			var delimChar = (entry.indexOf("/") != -1) ? "/" : "-";
			var delim1 = entry.indexOf(delimChar);
			var delim2 = entry.lastIndexOf(delimChar);
			day = parseInt(entry.substring(0, delim1), 10);
			mo = parseInt(entry.substring(delim1+1, delim2), 10);
			yr = parseInt(entry.substring(delim2+1), 10);
			var testDate = new Date(yr, mo-1, day);
			//alert(testDate)
			if (testDate.getDate() == day) {
				if (testDate.getMonth() + 1 == mo) {
					if (testDate.getFullYear() == yr) {
						return true;
					} else {
						alert("Dit is geen geldige datum.");
					}
				} else {
					alert("Dit is geen geldige datum.");
				}
			} else {
				alert("Dit is geen geldige datum.");
			}
		} else {
			alert("Dit is geen geldige datum.");
		}
		return false;
	}
}
function checkDate(fld) {
    var mo, day, yr;
    var entry = fld.value;
    var re = /\b\d{1,2}[\/-]\d{1,2}[\/-]\d{4}\b/;
    if (re.test(entry)) {
        var delimChar = (entry.indexOf("/") != -1) ? "/" : "-";
        var delim1 = entry.indexOf(delimChar);
        var delim2 = entry.lastIndexOf(delimChar);
        day = parseInt(entry.substring(0, delim1), 10);
        mo = parseInt(entry.substring(delim1+1, delim2), 10);
        yr = parseInt(entry.substring(delim2+1), 10);
        var testDate = new Date(yr, mo-1, day);
        //alert(testDate)
        if (testDate.getDate() == day) {
            if (testDate.getMonth() + 1 == mo) {
                if (testDate.getFullYear() == yr) {
                    return true;
                } else {
                    alert("Dit is geen geldige datum.");
                }
            } else {
                alert("Dit is geen geldige datum.");
            }
        } else {
            alert("Dit is geen geldige datum.");
        }
    } else {
        alert("Dit is geen geldige datum.");
    }
    return false;
}
//validates dates
function validateDate(fld) {
    if (!checkDate(fld)) {
        // focus if validation fails
        fld.focus();
        fld.select();
    }
}
//validates that the entry is a positive or negative number
function isNumber(elem) {
	var str = elem.value;
    var re = /^[-]?\d*\.?\d*$/;
    str = str.toString();
    if (!str.match(re)) {
        alert("Geen geldig getal.");
        setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
        return false;
    }
    return true;
}
// validates that the entry is 16 characters long
function isLen16(elem) {
	var str = elem.value;
    var re = /\b.{16}\b/;
    if (!str.match(re)) {
        alert("Entry does not contain the required 16 characters.");
        setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
        return false;
    } else {
        return true;
    }
}
// validates that the entry is formatted as an e-mail address
function isEMailAddr(elem) {
	var str = elem.value;
    var re = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
    if (!str.match(re) && str != "") {
        alert("Dit is geen geldig emailadres.");
        setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
        return false;
    } else {
        return true;
    }
}
// validate that the user made a selection other than default
function isChosen(select) {
    if (select.selectedIndex == 0) {
        alert("Gelieve een keuze te maken.");
        return false;
    } else {
        return true;
    }
}
// validate that the user made a selection other than default
function isChosenCountry(select) {
    if (select.selectedIndex == 0) {
        alert("Gelieve een land te kiezen.");
        return false;
    } else {
        return true;
    }
}

// validate that the user has checked one of the radio buttons
function isValidRadio(radio) {
    var valid = false;
    for (var i = 0; i < radio.length; i++) {
        if (radio[i].checked) {
            return true;
        }
    }
    alert("Gelieve een keuze te maken.");
    return false;
}

function focusElement(formName, elemName) {
    var elem = document.forms[formName].elements[elemName];
    elem.focus();
    elem.select();
}

function confirmUrl(URL, msg) 
{
   if(confirm(msg)) {
      location.href = URL;
   }
}

function confirmSubmit(frm, msg) 
{
   if(confirm(msg)) {
      eval("document."+frm+".submit()");
	}
}

function IsValidTime(elem) {
	var timeStr = elem.value;
	// Checks if time is in HH:MM:SS AM/PM format.
	// The seconds and AM/PM are optional.
	
	var timePat = /^(\d{1,2}):(\d{2})(:(\d{2}))?(\s?(AM|am|PM|pm))?$/;
	
	var matchArray = timeStr.match(timePat);
	if (matchArray == null) {
		alert("Dit is geen geldige tijd.");
		return false;
	}
	hour = matchArray[1];
	minute = matchArray[2];
	second = matchArray[4];
	ampm = matchArray[6];
	
	if (second=="") { second = null; }
	if (ampm=="") { ampm = null }
	
	if (hour < 0  || hour > 23) {
		alert("Uur tussen 0 en 23.");
		return false;
	}
	/*if (hour <= 12 && ampm == null) {
		if (confirm("Please indicate which time format you are using.  OK = Standard Time, CANCEL = Military Time")) {
			alert("You must specify AM or PM.");
			return false;
		}
	}*/
	if  (hour > 12 && ampm != null) {
		alert("You can't specify AM or PM for military time.");
		return false;
	}
	if (minute<0 || minute > 59) {
		alert ("Minuten tussen 0 en 59.");
		return false;
	}
	if (second != null && (second < 0 || second > 59)) {
		alert ("Seconden tussen 0 en 59.");
		return false;
	}
	return true;
}