function Typed_IntBoxCheck(control){
	var intval=parseInt(control.value, 10);
	if (isNaN(intval)) {
		control.value="0";
	} else {
		control.value=intval;
	}
}

function Typed_IntBoxNullCheck(control) {
	var intval=parseInt(control.value, 10);
	if (isNaN(intval)) {
		control.value="";
	} else {
		control.value=intval;
	}
}

function Typed_IntBoxMinCheck(control,min) {
	var intval=parseInt(control.value, 10);
	if (intval<min) control.value=min;
}

function Typed_IntBoxMaxCheck(control,max) {
	var intval=parseInt(control.value, 10);
	if (intval>max) control.value=max;
}

function Typed_FloatBoxCheck(control) {
	var Floatval=parseFloat(control.value.replace(/\,/, "."));
	if (isNaN(Floatval)) {
		control.value="0";
	} else {
		control.value=Floatval;
	}
}

function Typed_FloatBoxNullCheck(control) {
	var Floatval=parseFloat(control.value.replace(/\,/, "."));
	if (isNaN(Floatval)) {
		control.value="";
	} else {
		control.value=Floatval;
	}
}

function Typed_FloatBoxMinCheck(control,min) {
	var Floatval=parseFloat(control.value);
	if (Floatval<min) control.value=min;
}

function Typed_FloatBoxMaxCheck(control,max) {
	var Floatval=parseFloat(control.value);
	if (Floatval>max) control.value=max;
}

function Typed_FloatBoxPrecisionCheck(control,precision) {
	if(control.value!='') {
		var Floatval=parseFloat(control.value);
		control.value=(Math.round(Math.pow(10,precision)*Floatval)/Math.pow(10,precision)).toString();
	}
}

function Typed_TimeBoxCheck(control) {
	var p=new Date();
	var v=control.value;
	control.value=p.getHours()+':'+p.getMinutes();
	var a=v.indexOf(':');
	if (a>0) {
		var h=parseInt(v.substr(0,a), 10);
		var m=parseInt(v.substring(a+1), 10);
		if (!isNaN(h) && !isNaN(m) && h>=0 && h<24 && m>=0 && m<60) {
			if (m.toString().length>1) {
				control.value=h+':'+m;
			} else {
				control.value=h+':0'+m;
			}
			if (control.value.length==4) control.value='0'+control.value;
		}
	}
}

function Typed_TimeBoxNullCheck(control) {
	var v=control.value;
	control.value='';
	var a=v.indexOf(':');
	if (a>0){
		var h=parseInt(v.substr(0,a), 10);
		var m=parseInt(v.substring(a+1), 10);
		if (!isNaN(h) && !isNaN(m) && h>=0 && h<24 && m>=0 && m<60){
			if (m.toString().length>1) {
				control.value=h+':'+m;
			} else {
				control.value=h+':0'+m;
			}
			if (control.value.length==4) control.value='0'+control.value;
		}
	}
}

function Typed_TimeBoxMinCheck(control,min){
	if (control.value!='' && control.value<min) control.value=min;
}

function Typed_TimeBoxMaxCheck(control,max){
	if (control.value!='' && control.value>max) control.value=max;
}

function Typed_DateBoxCheck(control) {
	var p=new Date();
	var v=control.value;
	var a=v.indexOf('/');
	var b=v.lastIndexOf('/');
	if (a!=-1 && b>a+1 && b+1<v.length) {
		var d=parseInt(v.substr(0,a), 10);
		var m=parseInt(v.substring(a+1,b), 10);
		var y=parseInt(v.substr(b+1), 10);
		if (!isNaN(y) && y<100) y=2000+y;
		if (!isNaN(d) && !isNaN(m) && !isNaN(y)) p=new Date(y,m-1,d);
	}
	control.value=p.getDate()+'/'+(p.getMonth()+1)+'/'+p.getFullYear();
}

function Typed_DateBoxNullCheck(control) {
	var v=control.value;
	control.value='';
	var a=v.indexOf('/');var b=v.lastIndexOf('/');
	if (a!=-1 && b>a+1 && b+1<v.length) {
		var d=parseInt(v.substr(0,a), 10);
		var m=parseInt(v.substring(a+1,b), 10);
		var y=parseInt(v.substr(b+1), 10);
		if (!isNaN(y) && y<100) y=2000+y;
		if (!isNaN(d) && !isNaN(m) && !isNaN(y)) {
			var p=new Date(y,m-1,d);
			control.value=p.getDate()+'/'+(p.getMonth()+1)+'/'+p.getFullYear();
		}
	}
}

function Typed_DateBoxMinCheck(control,min) {
	var p=control.value;
	var a=p.indexOf('/');
	var b=p.lastIndexOf('/');
	if (a!=-1 && b>a+1 && b+1<p.length && parseInt(p.substr(b+1), 10)*10000+parseInt(p.substring(a+1,b), 10)*100+parseInt(p.substr(0,a), 10)<min) {
		control.value=(min%100)+'/'+(Math.round(min/100)%100)+'/'+Math.round(min/10000);
	}
}

function Typed_DateBoxMaxCheck(control,max) {
	var p=control.value;
	var a=p.indexOf('/');
	var b=p.lastIndexOf('/');
	if (a!=-1 && b>a+1 && b+1<p.length && parseInt(p.substr(b+1), 10)*10000+parseInt(p.substring(a+1,b), 10)*100+parseInt(p.substr(0,a), 10)>max) {
		control.value=(max%100)+'/'+(Math.round(max/100)%100)+'/'+Math.round(max/10000);
	}
}

function Typed_DateBoxCheckE(control) {
	var p=new Date();
	var v=control.value;
	var a=v.indexOf('/');
	var b=v.lastIndexOf('/');
	if (a!=-1 && b>a+1 && b+1<v.length) {
		var d=parseInt(v.substring(a+1,b), 10);
		var m=parseInt(v.substr(0,a), 10);
		var y=parseInt(v.substr(b+1), 10);
		if (!isNaN(d) && !isNaN(m) && !isNaN(y)) {
			p=new Date(y,m-1,d);
		}
	}
	control.value=(p.getMonth()+1)+'/'+p.getDate()+'/'+p.getFullYear();
}

function Typed_DateBoxNullCheckE(control) {
	var v=control.value;
	control.value='';
	var a=v.indexOf('/');
	var b=v.lastIndexOf('/');
	if (a!=-1 && b>a+1 && b+1<v.length) {
		var d=parseInt(v.substring(a+1,b), 10);
		var m=parseInt(v.substr(0,a), 10);
		var y=parseInt(v.substr(b+1), 10);
		if (!isNaN(d) && !isNaN(m) && !isNaN(y)) {
			var p=new Date(y,m-1,d);
			control.value=(p.getMonth()+1)+'/'+p.getDate()+'/'+p.getFullYear();
		}
	}
}

function Typed_DateBoxMinCheckE(control,min) {
	var p=control.value;
	var a=p.indexOf('/');
	var b=p.lastIndexOf('/');
	if (a!=-1 && b>a+1 && b+1<p.length && parseInt(p.substr(b+1), 10)*10000+parseInt(p.substr(0,a), 10)*100+parseInt(p.substring(a+1,b), 10)<min) {
		control.value=(Math.round(min/100)%100)+'/'+(min%100)+'/'+Math.round(min/10000);
	}
}

function Typed_DateBoxMaxCheckE(control,max) {
	var p=control.value;
	var a=p.indexOf('/');
	var b=p.lastIndexOf('/');
	if (a!=-1 && b>a+1 && b+1<p.length && parseInt(p.substr(b+1), 10)*10000+parseInt(p.substr(0,a), 10)*100+parseInt(p.substring(a+1,b), 10)>max) {
		control.value=(Math.round(max/100)%100)+'/'+(max%100)+'/'+Math.round(max/10000);
	}
}

function Typed_ColorBoxCheck(control) {
	if (control.value=="")
		control.value="#FFFFFF";
	Typed_ColorBoxNullCheck(control);
}

function Typed_ColorBoxNullCheck(control) {
	control.form.elements[control.id+"_view"].style.backgroundColor=control.value;
}
