function to_uc(item){
	item.value=item.value.toUpperCase();
	}

function num_param(p){
	var x; if(isNaN(p)){ x=0; } else{ x=p; }
	return x;
	}

function num_round(x,d){
	var decs=px_num_param(d); var y=x;
	var base=Math.pow(10,decs); y=Math.round(y*base)/base;
	return y;
	}

function to_date(item){
	if (item.value == ""){ return false; }
	var txt = item.value; item.value = "";
	
	txt = txt.replace(/\W/g," "); txt = txt.replace(/_/g," ");
	while(txt.search("  ") >= 0){ txt = txt.replace(/  /g," "); }
	while(txt.substr(0,1) == " "){ txt = txt.substr(1,txt.length); }
	while(txt.substr(txt.length-1,1)==" "){ txt=txt.substr(0,txt.length-1);}

	var nr_flds = 1;
	if(txt.search(" ") >= 0){ var anArray=txt.match(/ /g);nr_flds= anArray.length +1; }	
	if (nr_flds>3){ return false; }

	var dt = new Date(); dt.getTime(); var aNumber = new Number(txt);
	if(nr_flds == 1 && aNumber>99){
		if(aNumber<=9999){ txt = txt.substr(0,2) + " " + txt.substr(2,2); nr_flds+=1;}
		else{ txt = txt.substr(0,2) + " " + txt.substr(2,2) + " " + txt.substr(4,4); nr_flds+=2;}
		}
	if(nr_flds == 1){
		// bij numeriek en 2301 en 311203 etc. moet hier gesplitst worden
		var curr_month = dt.getMonth() + 1;
		txt += " " + curr_month;
		}
	if(nr_flds <= 2){ var curr_year = dt.getFullYear(); txt += " " + curr_year; }

	var dt = new Date();
	anArray = txt.split(" "); 
	if(isNaN(anArray[0]) || isNaN(anArray[1])){
		var tmpdt = new Date(txt);
		dt.setFullYear(tmpdt.getFullYear());
		dt.setMonth(tmpdt.getMonth());
		dt.setDate(tmpdt.getDate());
		}
	else{
		var tmp_year = anArray[2]*1;
		if(tmp_year >= 100 && tmp_year <= 999 ){ tmp_year += 1000; }
		if(tmp_year <= 99 ){ tmp_year += 2000; }
		dt.setFullYear(tmp_year);
		dt.setDate(1);
		dt.setMonth(anArray[1] - 1);
		dt.setDate(anArray[0]);
		}

	if(isNaN(dt.valueOf())){ return false; }

	var newvalue = "";
	var day = dt.getDate(); day = ((day < 10) ? "0" : "") + day;
	var month = dt.getMonth() + 1; month = ((month < 10) ? "0" : "") + month;
	newvalue = day  + "-" + month;

	item.value = newvalue + "-" + dt.getFullYear();
	return true;
	}

function to_time(item){
	if (item.value == ""){ return false; }
	var txt = item.value; item.value = "";
	
	txt = txt.replace(/\W/g," "); txt = txt.replace(/_/g," ");
	while(txt.search("  ") >= 0){ txt = txt.replace(/  /g," "); }
	while(txt.substr(0,1) == " "){ txt = txt.substr(1,txt.length); }
	while(txt.substr(txt.length-1,1)==" "){ txt=txt.substr(0,txt.length-1);}

	var nr_flds = 1; var anArray;
	if(txt.search(" ") >= 0){ anArray=txt.match(/ /g); nr_flds= anArray.length +1; }	
	if (nr_flds>3){ return false; }

	var aNumber = new Number(txt);
	if(nr_flds == 1 && aNumber>24){
		if(aNumber<=2400){ txt = txt.substr(0,2) + " " + txt.substr(2,2); nr_flds+=1; }
		else{ return false; }
		}
	else{ txt = txt + " 00" }
	
	anArray = txt.split(" "); 
	if(isNaN(anArray[0]) || isNaN(anArray[1])){ return false; }
	if(anArray[0] > 24){ return false; }
	if(anArray[1] > 59){ return false; }
	
	var hour = anArray[0]; hour = ((hour.length < 2) ? "0" : "") + hour;
	var minute = anArray[1]; minute = ((minute.length < 2) ? "0" : "") + minute;

	item.value = hour + ":" + minute;

	return true;
	}

function to_number(item,d,n,z){
	var decs=num_param(d),neg=num_param(n),zero=num_param(z);

	if (item.value==""){ return false; }

	var nr=item.value;item.value="";
	nr = eval(nr.replace(/,/g,"."))

	if(isNaN(nr)){ return false; }
	if(!neg && (nr < 0)){ return false; } 
	if(nr > 999999999 || nr < -999999999){ return false; } 

	if(decs*1 >= 0){ nr = px_round(nr,decs); }

	var txt = nr.toString(); var pos = txt.search(/\./);
	if(decs > 0){
		if(pos >= 0){
			var mod = txt.substr(pos + 1,txt.length);	
			for(var i=0; i<(decs - mod.length); i++){ txt += "0"; }
			}
		else{ txt += ".00"; }
		}
	if(decs == -1){
		if(pos >= 0){
			var float_decs = txt.length - pos - 1;
			if(float_decs > 8){ nr = px_round(nr,8); txt = nr.toString(); }
			}
		}
	if(!nr && !zero){ return true; }

	item.value = txt;
	return true;
	}

function hidemessage(){
	if (document.getElementById) { // DOM3 = IE5, NS6
		document.getElementById('message').style.visibility = 'hidden';
	}
	else {
		if (document.layers) { // Netscape 4
			document.message.visibility = 'hidden';
		}
		else { // IE 4
			document.all.message.style.visibility = 'hidden';
		}
	}
}


