function NumericKeyPress(event,inp,id){
	var pvl,min,max,dec;
	pvl=getv(id).split('|');
	dec=pvl[3];
	max=pvl[2];
	min=pvl[1];
	pvl=inp.value;
	setv(id,pvl+'|'+min+'|'+max+'|'+dec);
	var keyCode = event.keyCode|event.which;
	if(keyCode<32) return(true);
	if(keyCode>47 && keyCode<58){
		return(true);
	}
	if(keyCode==60){
		if(inp.style.textAlign=="right"){
			inp.value = min;
		}
	}else if(keyCode==62){
		if(inp.style.textAlign=="right"){
			inp.value = max;
		}
	}else{
		var s = inp.value.substr(0,1);
		if(keyCode==44) keyCode = 46;
		if(dec && keyCode==46 && inp.value.indexOf('.')==-1 && inp.value.indexOf(',')==-1){
			event.keyCode=event.which=keyCode;
			return(true);
		}
		if(keyCode==45 && min<0 && s!='-') inp.value = '-'+inp.value;
		if(keyCode==43 && max>0 && s=='-') inp.value = inp.value.substr(1);
	}
	return(event.returnValue=false);
}

function NumericKeyChange(inp,id,or){
	var pvl,min,max,dec;
	pvl=getv(id).split('|');
	dec=1*pvl[3];
	max=1*pvl[2];
	min=1*pvl[1];
	pvl=1*pvl[0].replace(',','.');
	var i,c,nv='',ov=inp.value;
	for(i=0;i<ov.length;i++){
		c=ov.charAt(i);
		if(c==','){
			nv+='.';
		}else if(c=='.' || c=='-' || c>='0' && c<='9'){
			nv+=c;
		}
	}
	var mod = nv.split('.');
	if(dec==0 || mod.length==2 && mod[0].length==0 && mod[1].length==0){
		nv = mod[0];
	}else if(mod[1] && mod[1].length>dec){
		mod[1] = mod[1].substr(0,dec);
		nv = mod.join('.');
	}
	var float=nv;
	if(or && (float<min || float>max)){
		if(pvl<min){
			nv = min;
		}else if(pvl>max){
			nv = max;
		}else{
			nv = pvl;
		}
	}
	if(nv!=ov){
		inp.value = nv;
	}
}

function TextAreaTab(inp){
	var keyCode = event.keyCode;
	if (keyCode==9){ // tab
		inp.selection = document.selection.createRange();
		inp.selection.text = String.fromCharCode(9);
		event.returnValue = false;
		//inp.value = inp.value + "\t";
		return false;
	}
	return true;
}

function checkForChars(o,c){
	var i,k,v='';
	for(i=0;i<o.value.length;i++){
		k=o.value.charAt(i);
		if(c.search(k)>=0){
			v+=k;
		}
	}
	o.value=v;
}

