// splComm.js
var msPerDay = 24 * 60 * 60 * 1000 ;
var today = new Date();
var reInteger = /^\d+$/

// to handles up/ down arrows among the same name input text boxes.
function keyHandler(fld, ind) 
{
	switch (event.keyCode) {
	case 38: // when pressing up arrow
		{
			if ( ind > 0)
			{eval("document.forms[0]." + fld + "[ind-1].focus()");
			eval("document.forms[0]." + fld + "[ind-1].select()");}
		}
		break	
	case 40: // when pressing down arrow
		{
			if (ind < 20)
			{eval("document.forms[0]." + fld + "[ind+1].focus()");
			eval("document.forms[0]." + fld + "[ind+1].select()");}
		}
		break	
	}
}

// to creates an array of fixed number elements passed by the user
function makeArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 0
	} 
	return this
}


var daysInMonth = makeArray(12);
daysInMonth[1] = 31;
daysInMonth[2] = 29;   // must programmatically check this
daysInMonth[3] = 31;
daysInMonth[4] = 30;
daysInMonth[5] = 31;
daysInMonth[6] = 30;
daysInMonth[7] = 31;
daysInMonth[8] = 31;
daysInMonth[9] = 30;
daysInMonth[10] = 31;
daysInMonth[11] = 30;
daysInMonth[12] = 31;

// to check whether the date is valid
function checkDate(strValue)				
{
	var date_array = strValue.split('/'); 
	if (date_array.length != 3) 
	{	return false;}
	else
	{
		var strMonth = date_array[0];
		var strDay = date_array[1];	
		var strYear = date_array[2];

		var intMonth = 	parseInt(strMonth);
		var intDay = 	parseInt(strDay);
		if (strMonth=="08") intMonth=8;
		if (strMonth=="09") intMonth=9;
		if (strDay=="08") intDay=8;
		if (strDay=="09") intDay=9;
		var intYear =	parseInt(strYear);
		
		if (!isIntegerInRange(intMonth, 1, 12))	{return false;}

			
		if (intMonth!=2)
		{
			if (intDay > daysInMonth[intMonth])	{return false;}  
			
		}
		else 
		{
    		var intDaysInFeb = daysInFebruary(intYear);
		    
    		if (intDay > intDaysInFeb)	{return false;}
		}
		return true;
	}
}
	
	
// to calculates the number of days in february depends on the year
function daysInFebruary (year)
{   
	if ((year % 4 == 0)&& (!(year % 100 == 0) || (year % 400 == 0))) return 29; 
	else return 28;
}	
	
	
	
// to check whether a variable s is an integer or not.
function isInteger (s)
{   var i;

	if (isEmpty(s)) 
	if (isInteger.arguments.length == 1) return defaultEmptyOK;
	else return (isInteger.arguments[1] == true);

	return reInteger.test(s)
}

// to check an integer s falls into the range between a and b (a<= s <= b)
function isIntegerInRange (s, a, b)
{   
	var num = s
	return ((num >= a) && (num <= b));
}

////////////////////////////////////////////////////////////////////////////////
// AUTOJUMP
// This will allow AutoJump between Each Textbox
// How to use... add a script tag on the body of the page.
//<INPUT maxLength=4 size=6 name=Mapbook>
//<INPUT maxLength=3 size=5 name=Page>
//<INPUT maxLength=3 size=5 name=Parcel>
//<SCRIPT language=javascript>
//  autojump('Mapbook', 'Page', 4);
//  autojump('Page', 'Parcel', 3);
//</SCRIPT>
var downStrokeField;
function autojump(fieldName,nextFieldName,fakeMaxLength)
{
var myForm=document.forms[0];
var myField=myForm.elements[fieldName];
myField.nextField=myForm.elements[nextFieldName];
// default maxLength for html input textbox = null
// default maxLength for aspx textbox = 2147483647
if (myField.maxLength == null || myField.maxLength >= 100)
    myField.maxLength=fakeMaxLength;

    myField.onkeydown=autojump_keyDown;
    myField.onkeyup=autojump_keyUp;
}

function autojump_keyDown()
{
this.beforeLength=this.value.length;
downStrokeField=this;
}

function autojump_keyUp()
{
if ((this == downStrokeField) && (this.value.length > this.beforeLength) && 
(this.value.length >= this.maxLength))
this.nextField.focus();
downStrokeField=null;

}
// AUTOJUMP END
////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////
// Source: http://www.web-source.net/web_development/currency_formatting.htm
function CurrencyFormatted(amount)
{
	var i = parseFloat(amount);
	if(isNaN(i)) { i = 0.00; }
	var minus = '';
	if(i < 0) { minus = '-'; }
	i = Math.abs(i);
	i = parseInt((i + .005) * 100);
	i = i / 100;
	s = new String(i);
	if(s.indexOf('.') < 0) { s += '.00'; }
	if(s.indexOf('.') == (s.length - 2)) { s += '0'; }
	s = minus + s;
	return s;
}
////////////////////////////////////////////////////////////////////////////////

