/*
 * 
 * @param {Object} arrayObject
 * Functie om te bepalen of een object een array is
 * Input  : Obect
 * Output : true indien een array
 */
function isArray(arrayObject) {
	if (arrayObject==null || typeof(arrayObject)!="object" || typeof(arrayObject.length)!="number"){
		return false;
	} else {
		return true;
	}
}

function clearDefault(el) {
	if (el.defaultValue==el.value) el.value = ""
	}
	
var windowName="sabportal";

function launchPopUp(filename, windowParms, newWindow) {
	var parms=new Array();
	parms["resizable"]="yes";
	parms["toolbar"]=1;
	parms["directories"]=0;
	parms["location"]=1;
	parms["status"]=1; 
	parms["menuBar"]=1; 
	parms["scrollbars"]="yes";
	parms["top"]=10; 
	parms["left"]=10;
	parms["width"]=880;
	parms["height"]=600;
	if (windowParms){
		if (windowParms !== ""){
			windowParms=trim(windowParms);
			var parmsin=new Array();
			parmsin = windowParms.split(",");
			i=0;
			var tempArray = new Array();
			for (pair in parmsin) {
				tempArray = parmsin[pair].split("=");
				parms[tempArray[0]]=tempArray[1];
			}
		}
	}
	var winspecs = "";
	for (key in parms){
		winspecs = winspecs + key + "=" + parms[key] + ", ";
	}
	var winName = "windowname"; 
	if (newWindow){
		if (newWindow == 'true'){
			winName = "";
		}
	}
	windowName = window.open(filename, winName, winspecs);
	windowName.focus();
}

function trim(string) { 
	var tstring = "";
	string = '' + string;
	splitstring = string.split(" ");
	for(i = 0; i < splitstring.length; i++)	tstring += splitstring[i];
	return tstring;
} 
	
function closePopUpWindow(){
	if (windowName && windowName.open && !windowName.closed) windowName.close();
	}
	
function setZoomWindowWidth() {
	 var winW = 630;

	if (parseInt(navigator.appVersion)>3) {
	 if (navigator.appName=="Netscape") {
	  winW = window.innerWidth-25;
	 }
	 if (navigator.appName.indexOf("Microsoft")!=-1) {
	  winW = document.body.offsetWidth-20;
	 }
	}
	return winW;	 
}

function setZoomWindowHeight() {
	 var winH = 460;

	if (parseInt(navigator.appVersion)>3) {
	 if (navigator.appName=="Netscape") {
	  winH = window.innerHeight-20;
	 }
	 if (navigator.appName.indexOf("Microsoft")!=-1) {
	  winH = document.body.offsetHeight-20;
	 }
	}
	return winH;	 
}

function SelectAll(id) {
    document.getElementById(id).focus();
    document.getElementById(id).select();
	}
		
function _EXT_String_trim() {
	 var s = this;
	 if (s.length > 0) while (s.indexOf(' ') == 0) s = s.substr(1);
	 if (s.length > 0) while(s.lastIndexOf(' ') == s.length - 1) s = s.substr(0, s.length - 1);
	 return s;
}

String.prototype.trim = _EXT_String_trim;

// Check of meegegeven datum voldoet aan format dd-mm-yyyy.
// Zoniet maak megegeven veld leeg en geef alert.
function checkDate(dateField){
	errorDescription = "de ingevoerde datum is niet geldig DD-MM-YYYY";
	myDate = dateField.value;
	myDate = myDate.replace(/ /g,'-');
	myDate = myDate.replace(/\//g,'-');

	intFirst = myDate.indexOf('-');
	intSec   = myDate.lastIndexOf('-');
	intLen   = myDate.length;

	day      = myDate.substr(0,intFirst);
	month    = myDate.substr(intFirst+1,intSec-(intFirst+1));
	year     = myDate.substr(intSec+1,intLen-intSec);
	
	myDateField = new Date();
	try {
		myDateField.setYear(year);
		myDateField.setMonth(month-1);
		myDateField.setDate(day);
	} catch(err) {
		alert(errorDescription);
		dateField.value="";
		return false;
	}

	if(!(day==myDateField.getDate() && month==myDateField.getMonth()+1)){
		alert(errorDescription);
		dateField.value="";
		return false;
	}
	return true;
}