function formatNumeric(obj) 
{
	var n=''
	n += obj.value
	n = n.replace(/[kK]/, '000') // replace 'k' with '000' 
	n = n.replace(/[^0-9.]/g, '') // remove all non-numeric chars
	n = n.replace(/^0+([0-9])/g, '$1') // remove leading 0s
	n = n.replace(/^0+/g, '0') // replace 0s (e.g. 000) with 0
	if(n.length < 1)
	{
		n = 0	
	} 
	obj.value = n
}

function isPositiveNum(obj)
{
	formatNumeric(obj)
	return obj.value > 0

}

function chkNum(obj)
{
	formatNumeric(obj)
	return !isNaN(obj.value)
}

function chkLen(o, l) 
{
	if( o.value.length > l)
	{
		o.value = o.value.substring(0, l)
	} 
}

function isEmpty(obj)
{
	obj.value = obj.value.replace(/^ +/g, '')
	obj.value = obj.value.replace(/ +$/g, '')
	return obj.value.length == 0
}

function chkSpChr(f)
{
	var i
	for(i=0; i < f.elements.length; i++)
	{
		if(f.elements[i].type=="text" || f.elements[i].type=="textarea") 
		{
			if(f.elements[i].value.length > 0)
			{
				txt = f.elements[i].value
				txt = txt.replace(/\'/g,"''")
				f.elements[i].value = txt
			}
		}
	}
	
}


function isLoginData(obj)
{
	txt = obj.value
	txt1 = txt.replace(/[^0-9a-zA-Z_]/g, '')
	return txt == txt1
}


function isDate(dt)
{
	var err=0
	var a=dt
	var d,m,y
	a = dt.replace(/ +/g, '')
	a = a.replace(/^(\d)[\/\-:](\d{1,2})[\/\-:](\d+)$/, "0$1/$2/$3")
	a = a.replace(/^(\d\d)[\/\-:](\d)[\/\-:](\d+)$/, "$1/0$2/$3")

	if(a.length == 0)
	{
		return 0
	}

	if(a.length < 7 || a.length > 10 )
	{
		err=1
	}
	m = parseInt(a.substring(0, 2), 10)
	d = parseInt(a.substring(3, 5), 10)
	y = parseInt(a.substring(6), 10)

	if(isNaN(d) || isNaN(m) || isNaN(y))
	{
		err = 2
	}

	if (m<1 || m>12 || d<1 || d>31 )
	{ 
		err = 4
	}
	if (m==4 || m==6 || m==9 || m==11)
	{
		if (d==31)
		{
		 	err=8
		}
	}
	if (m==2 && d>28 && !isLeap(y))
	{
		err = 16
	}
	if(err > 0)
	{
		//alert("Please select a valid date" + dt)
	}
	return err==0
}


function isBritishDate(dt)
{
	var err=0
	var a=dt
	var d,m,y
	a = dt.replace(/ +/g, '')
	a = a.replace(/^(\d)[\/\-:](\d{1,2})[\/\-:](\d+)$/, "0$1/$2/$3")
	a = a.replace(/^(\d\d)[\/\-:](\d)[\/\-:](\d+)$/, "$1/0$2/$3")

	if(a.length == 0)
	{
		return 0
	}

	if(a.length < 7 || a.length > 10 )
	{
		err=1
	}
	d = parseInt(a.substring(0, 2), 10)
	m = parseInt(a.substring(3, 5), 10)
	y = parseInt(a.substring(6), 10)

	if(isNaN(d) || isNaN(m) || isNaN(y))
	{
		err = 2
	}

	if (m<1 || m>12 || d<1 || d>31 )
	{ 
		err = 4
	}
	if (m==4 || m==6 || m==9 || m==11)
	{
		if (d==31)
		{
		 	err=8
		}
	}
	if (m==2 && d>28 && !isLeap(y))
	{
		err = 16
	}
	if(err > 0)
	{
		//alert("Please select a valid date" + dt)
	}
	return err==0
}

function DMYtoMDY(dt)
{
	var err=0
	var a=dt
	var d,m,y
	a = dt.replace(/ +/g, '')
	a = a.replace(/^(\d)[\/\-:](\d{1,2})[\/\-:](\d+)$/, "0$1/$2/$3")
	a = a.replace(/^(\d\d)[\/\-:](\d)[\/\-:](\d+)$/, "$1/0$2/$3")

	if(a.length == 0)
	{
		return ''
	}

	d = parseInt(a.substring(0, 2), 10)
	m = parseInt(a.substring(3, 5), 10)
	y = parseInt(a.substring(6), 10)
	
	return m + '/' + d + '/' + y
}

	
function isLeap(y)
{
	if((y%400)==0)
	{
		return true
	}
	if((y%100) ==0)
	{
		return false
	}
	if((y%4)==0)
	{
		return true
	}
	return false
	
}

