
function GetKeySet(DataString, Key, Splitters){
	var arrRec=DataString.split(Splitters[0]);
	for(var i=0;i<arrRec.length;i++){
		var arrTmp=arrRec[i].split(Splitters[1]);
		if(arrTmp[0]==Key) return arrTmp;
	}
	return null;
}

function formatNumber(number, decPoints){
	var tmpRT=number.toString(10);
	if(tmpRT.indexOf('.')<0)
	tmpRT+='.';
	var tmp=tmpRT.substr(tmpRT.indexOf('.')+1,tmpRT.length);
	if(tmp.length>2)
	tmpRT=tmpRT.substr(0,tmpRT.indexOf('.')+3);
	for(var j=tmp.length;j<2;j++)tmpRT+='0';
	return tmpRT;
}

function validateField(field,message,regexp){
	var bEmpty=false;
	var strAction='enter';
	var field_value='';
	var xField=(field.length>0 && !field.type)?field[0]:field;
	var selectedIndex=-1;
	
	switch(xField.type){
		case 'textarea':
		case 'hidden':
		case 'password':
		case 'file':
		case 'text':{
			field_value=trim(field.value);
			bEmpty=(field_value.length<1);
			break;
		}
		case 'select-one':{
			if(field.selectedIndex>=0) field_value=field.options[field.selectedIndex].value;
			bEmpty=(field.selectedIndex<0 || field_value.length<1);
			strAction='select';
			break;
		}
		case 'checkbox':{
			strAction='select';
			bEmpty=!xField.checked;
			break;
		}
		case 'radio':{
			strAction='select';
			bEmpty=true;
			if(xField!=field){
				for(var intIdx=0;intIdx<field.length;intIdx++){
					if(field[intIdx].checked){
						bEmpty=false;
						selectedIndex=intIdx;
						break;
					}
				}
			}
			else
				bEmpty=xField.checked;
			break;
		}
		default:{
			bEmpty=true;
			alert('form element \''+xField.name+'\' ['+xField.type+'] is not supported by checkEmpty() function');
			break;
		}
	}
	
	if(regexp && !bEmpty){
		bEmpty=!regexp.test(field_value);
	}
	
	if(bEmpty){
		if(message) alert(message);
		else alert('Please '+strAction+' a value for field \''+xField.name+'\'');
		if(xField.type!='hidden') xField.focus();
	}
	
	return (xField.type=='radio')?selectedIndex:!bEmpty;
}

//Remove spaces from start and end of a string
function trim(value) {
   var temp = value;
   var obj = /^(\s*)([\W\w]*)(\b\s*$)/;
   if (obj.test(temp)) { temp = temp.replace(obj, '$2'); }
   var obj = / +/g;
   temp = temp.replace(obj, " ");
   if (temp == " ") { temp = ""; }
   return temp;
}

function ValidateNumeric(control){
	control.value=trim(control.value);
	if(!IsNumeric(control.value)){
		alert('Please enter numeric values only');
		control.focus();}}

function removeChar(Target){
	var re=/[^0-9]/g;
	Target=Target.replace(re,'');
	return Target;}

function removeNonNum(Target){
	var re=/[^0-9|\^.|\^-]/g;
	Target=Target.replace(re,'');
	return Target;}

function removeDigit(Target){
	var re=/[0-9]/g;
	Target=Target.replace(re,'');
	return Target;}

function IsEmail(strEmail)
{
	var status = false;
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	if (filter.test(strEmail)) status=true;
	return status;
}

function IsValidURL(strURL)
{
	var status = true;
	//var filter= /http:\/\/[A-Za-z0-9\.-]{3,}\.[A-Za-z]{2}/
	//var filter= /^(http:\/\/www.|https:\/\/|ftp:\/\/www.|www.){1}[0-9A-Za-z\.\-]*\.[0-9A-Za-z\.\-]*$/
	//var filter= /^(http:\/\/|https:\/\/|ftp:\/\/www.|www.){1}[0-9A-Za-z\.\-\/]*\.[0-9A-Za-z\.\-]*$/
	//if (filter.test(strURL)) status=true;
	return status;

}

