/*
Module Name : General
Version     : 1.0
ReleaseDate :
Author	    :Skylark Team
Description :
*/
function nullCheck(obj,strMessage)
{
	if(obj.value.length<1)
	{
		alert(strMessage);
		obj.focus();
		return false
	}
	else return true;
}
function spaceChk(obj,strMessage)
{
	if(obj.value.indexOf(" ",0)==0)
	{
		alert(strMessage);
		obj.select();
		return false;
	}
	else return true;
}
function spaceCheck(obj,strMessage)
{
	var intSize;
	intSize=obj.value.length;
	for(var i=0;i<intSize;i++)
	{
		if(obj.value.charAt(i)==' ')
		{
			alert(strMessage);
			obj.select();
			obj.focus();
			return false;
		}
		
	}
	return true;
}
function validYear(obj,intYear,strMessage)
{
	if(obj.value.length<4 || obj.value<intYear ||isNaN(obj.value))
	{
	alert(strMessage);
	obj.select();
	return false;
	}
	else return true;
}
function emailCheck(obj)
{
	if(obj.value.length>0)
	{
		var intAtPosition,intDotPosition;
		intAtPosition=obj.value.indexOf("@");
		intSecondAtPosition=obj.value.indexOf("@",intAtPosition+1)
		intDotPosition=obj.value.indexOf(".",intAtPosition+1)
		intSecondDotPosition=obj.value.indexOf(".",intDotPosition+1)
	
		if(intAtPosition<1||intDotPosition<(intAtPosition+2)||intDotPosition==(obj.value.length-1)||obj.value.charAt(obj.value.length-1)=="."||intDotPosition+1==intSecondDotPosition||intSecondAtPosition>-1)
		{
			alert("Please enter a valid email address");
			obj.select();
			return false;
		}
		else 
		{
			return true;
		}
	}
	else
	{
		return true;
	}
	
}
function numberCheck(obj,strMessage)
{
	//if(obj.value.length>0)
	//{
	if(isNaN(obj.value))
	{
		alert(strMessage);
		obj.select();
		obj.focus();
		return false;
	}
	//}
	else return true;
}
function realnumber(obj,strMessage)
{
	if(!isNaN(obj.value))
	{
		if(obj.value<0)
		{
			alert(strMessage);
			obj.select();
			obj.focus();
			return false;
		}
		else return true;
	}
	else
	{
	alert(strMessage);
		obj.select();
		obj.focus();
		return false;
	}
}
function alphaHyphen(obj,strMessage)
{
	var asciiValue;
	var blnAlphastatus=true;
	for(var i=0;i<obj.value.length;i++)
	{
		//modified by arun on 21/11/2001
		
		//blnAlphastatus=isLetters(obj.value.charAt(i));
		var charati=obj.value.charAt(i)
		if(charati=='"')
		{
				alert(strMessage);
				obj.select();
				return false;
		}
	}
	return true;
}

function isLetters (c)
{   
	
	return ( ((c >= "a") && (c <= "z")) || ((c >= "A") && (c <= "Z")) || ((c >= 0) && (c <= 9)) || (c==" "))
}	

function alphaCheck(obj,strMessage)
{
	var asciiValue;
	var blnAlphastatus=true;
	for(var i=0;i<obj.value.length;i++)
	{
		blnAlphastatus=isLetter(obj.value.charAt(i));
		if(!blnAlphastatus)
		{
				alert(strMessage);
				obj.select();
				return false;
		}
	}
	return true;
}

function isLetter (c)
{   return ( ((c >= "a") && (c <= "z")) || ((c >= "A") && (c <= "Z")) || (c==" ") )
}

function charcterCheck(obj,strMessage)
{
	var charLength=true;
	for(var i=0;i<obj.value.length;i++)
	{
		charLength=noSpecialchar(obj.value.charAt(i));
		if(!charLength)
		{
			alert(strMessage);
			obj.select();
			return false;
		}
	}
	return true;
}
function noSpecialchar(c)
{
	return ( ((c >= "a") && (c <= "z")) || ((c >= "A") && (c <= "Z"))|| ((c >= 0) && (c <= 9)) )
}


function dateCheck(obj,strDate)
{

}
//----------------------This function is to get the ascii value of any key---------------------------------------------//
function toAscii(chr)
{
	var strSymbols = " !\"#$%&'()*+,-./0123456789:;<=>?@"
	var loAZ = "abcdefghijklmnopqrstuvwxyz"
    strSymbols+= loAZ.toUpperCase()
    strSymbols+= "[\\]^_`"
    strSymbols+= loAZ
    strSymbols+= "{|}~"
	var loc
    loc = strSymbols.indexOf(chr)
    if (loc >-1)
    {
        Ascii_Decimal = 32 + loc;
        return (32 + loc);
    }
	return(0) // If not in range 32-126 return ZERO
}



//---------------------------This function is to trim the string--------------------------------------//
function trim(obj,strMessage)
{
	var strInput=obj.value;
	//alert(strInput);
	//alert("before"+strInput.length);
	
	//for left trim
	var intFullLength=strInput.length
	for(var i=0;i<intFullLength;i++)
	{
		while(strInput.charAt(0)==' ')
		{
			strInput=strInput.substring(i+1);
		}
	}
	//alert(strInput)
	var intLenLtrimmed=strInput.length;
	//alert("after"+intLenLtrimmed);
	//for right trim
	for(var j=intLenLtrimmed;j>0;j--)
	{
		while(strInput.charAt(strInput.length-1)==' ')
		{
			strInput=strInput.substring(0,strInput.length-1);
		} 
		
	}
	//alert("afterC"+strInput.length);
	//alert(strInput)
	//return strInput
	if(strInput.length<1)
	{
		alert(strMessage);
		obj.focus();
		return false;
	}
	return true;
}

function nullCheckWithTrim(obj,strMessage)
{
var strInput=obj.value;
	//alert(strInput);
	//alert("before"+strInput.length);
	
	//for left trim
	var intFullLength=strInput.length
	for(var i=0;i<intFullLength;i++)
	{
		while(strInput.charAt(0)==' ')
		{
			strInput=strInput.substring(i+1);
		}
	}
	//alert(strInput)
	var intLenLtrimmed=strInput.length;
	//alert("after"+intLenLtrimmed);
	//for right trim
	for(var j=intLenLtrimmed;j>0;j--)
	{
		while(strInput.charAt(strInput.length-1)==' ')
		{
			strInput=strInput.substring(0,strInput.length-1);
		} 
		
	}
	//alert("afterC"+strInput.length);
	//alert(strInput)
	//return strInput
	if(strInput.length<1)
	{
		alert(strMessage);
		obj.focus();
		return false;
	}
	return true;
}

//-------------------This function is to validate the telephone number---------------//

function isTelephone(obj,strMessage)
{
	var intSize;
	var numbercount=0;
	var char1
	intSize=obj.value.length;
	if(obj.value.length>0)
	{
	for(var i=0;i<intSize;i++)
	{
		char1=obj.value.charAt(i)
		if((char1>=0 && char1<=9)||(char1>='a' && char1<='z')||(char1>='A' && char1<='Z')||(char1=="-")||(char1=="+")||(char1=="(")||(char1==")"))
		{
			if(char1>=0 && char1<=9)
			{
				numbercount++;
			}
		}
		else
		{
			alert(strMessage);
			obj.select();
			return false;
		}
		
	}
	if(numbercount<7)
	{
		alert(strMessage);
		obj.select();
		return false;
	}
	}
	return true;
}

//----------------End function-----------------------------------------------------------------------------------------//
//-------------------This function is to validate the fax number---------------//

function isFax(obj,strMessage)
{
	var intSize;
	var numbercount=0;
	var char1
	intSize=obj.value.length;
	if(obj.value.length>0)
	{
	for(var i=0;i<intSize;i++)
	{
		char1=obj.value.charAt(i)
		if((char1>=0 && char1<=9)||(char1==' ')||(char1=="-")||(char1=="+")||(char1=="(")||(char1==")"))
		{
			if(char1>=0 && char1<=9)
			{
				numbercount++;
			}
		}
		else
		{
			alert(strMessage);
			obj.select();
			return false;
		}
		
	}
	if(numbercount<10)
	{
		alert(strMessage);
		obj.select();
		return false;
	}
	}
	return true;
}


//----------------End function-----------------------------------------------------------------------------------------//


//---------------function to accept character-------------------------------------------------------------------------//

function charCheck(obj,strMessage)
{
	var strLength=obj.value
	//alert(strLength.length);
	
	var intSize;
	var intFlag;
	intFlag=0;
	intFlag1=0;
	intFlag2=0;
	var charLength=true;
	intSize=obj.value.length;
	for(var i=0;i<intSize;i++)
	{
		charLength=noSpecialchar(obj.value.charAt(i));
		if(charLength)
		{
			if((obj.value.charAt(i)==' '))
				intFlag=1;
			else
			{
				intFlag=0;
				intFlag1=1;
				intFlag2=1;
			}
			
			
			
		}
		else
		{
			//alert("inside else")
			intFlag=1;
			
		}
	}	
	//alert(intFlag)
	if(intFlag==1 && intFlag1==0 && intFlag2==0)
	{
		alert(strMessage);
		obj.focus();
		return false;
	}
	else
		return true;
	
		
}
function isNumberCheck(obj,strMessage)
{
	var charLength=true;
	for(var i=0;i<obj.value.length;i++)
	{
		charLength=isNumber(obj.value.charAt(i));
		if(!charLength)
		{
			alert(strMessage);
			obj.select();
			return false;
		}
	}
	return true;
}
function isNumber(c)
{
	return (((c >= 0) && (c <= 9)))
}

//--------------------------------end function----------------------------------------------//
//-------------------------------Function for date check -----------------------------------//

function DateValidate(datevalue,monthvalue,yearvalue)	
{

		
	if (!datevalue>=1) 
	{
		alert("Please enter the date");
		
		return false;
	}
	
	if (!monthvalue>=1)
	{
		alert("Please enter a valid month");
		
		return false;
	}
	
	if (!yearvalue>=1)
	{
		alert("Please enter a valid year");

		return false;
	}
	
    if (datevalue  >31 )
    {
		alert("Please enter a valid date");
		 
		return false;
    }
    
	 if (monthvalue  >12 )
	   {
		alert("Please enter a valid month");
		 
		return false;
		}

	if (yearvalue<1000)
		{
			alert("Please enter the year in the specified format.");
			 
			return false;
		}
   //check for leap year
	if(monthvalue==2)
	{
		var isleap=(yearvalue%4==0&&(yearvalue%100!=0||yearvalue%400==0));
		if(datevalue>29||(datevalue==29&&!isleap))
		{
			alert("Please enter a valid date");
			 
			return false;
		}
	}

//check for 31days
	if (((monthvalue==4) || (monthvalue==6) || (monthvalue==9) || (monthvalue==11)) && (datevalue==31) )
	{
		alert("Please enter a valid date");
		 
		return false;
	}

	return true; 

}

//****************************************************************************
// for mouse over submenu 

var isNav, isIE
var coll
var styleObj 

if (document.layers)
{
	isNav = true
}
else
{
	isIE = true
	coll = "all."
	styleObj = ".style"
}


function show(obj)
{
	var theObj = getObject(obj)
	if (isNav)
	{
		document.statussubmenu.visibility="show"
	}
	else
	{

		theObj.visibility = "visible"
	}
}

function hide(obj)
{
	var theObj = getObject(obj)
	
	if (isNav)
	{
		document.statussubmenu.visibility="hidden"
	}
	else
	{
		theObj.visibility = "hidden"
	}
}


function getObject(obj)
{
	var theObj
	if (typeof obj == "string")
	{
		if (isNav){
			  theObj = "document." + obj			
		}
		else
		{
			theObj = eval("document." + coll + obj +styleObj)
		}

	}
	else
	{
		theObj = obj
	}
	return theObj
}

function showMenu(menuname)
{
	show(menuname)
}

function hide_menu(menuname)
{
	hide(menuname)
}
//*****************************************************************************


/********checking valid date formate(dd/mm/yyyy) *********************************/
//added by arun on 28/01/2002

function checkDateFormat(objDate)
{
	var strDate=objDate.value;
	//alert(strDate);
	if(strDate.length!=0)
	{
		var arrDate=strDate.split("/");
		//alert(arrDate.length);
		//alert(arrDate[0]);
		//alert(arrDate[1]);
		//alert(arrDate[2]);
		if(arrDate.length!=3 || arrDate[2].length!=4)
		{
			alert("Enter date in dd/mm/yyyy format");
			objDate.focus();
			objDate.select();
			return false;
		}
		if(isNaN(arrDate[0]) || isNaN(arrDate[1]) || isNaN(arrDate[2]))
		{
			alert("Enter number for day,month and year");
			objDate.focus();
			objDate.select();
			return false;
		}
		
	}
	return true;
	
}
/*****************************************************************************************/

/************To check whether the date is valid*******************************************/
function checkValidDate(objDate)
{
	var strDate=objDate.value;
	//alert(strDate);
	if(strDate.length!=0)
	{
		var arrDate=strDate.split("/");
		//alert(arrDate.length);
		//alert(arrDate[0]);
		//alert(arrDate[1]);
		//alert(arrDate[2]);
		var intDay=arrDate[0];
		var intMonth=arrDate[1];
		var intYear=arrDate[2];
		
		var intLeap    =intYear%4;
		
		var arrMonth=new Array(31,28,31,30,31,30,31,31,30,31,30,31);
		
		if (intLeap==0)
		{
			arrMonth[1]=29;
		}
		if(intMonth<=0 || intMonth>12)
		{
			alert("Enter Month between 1 and 12");
			objDate.focus();
			objDate.select();
			return false;
		}
		if(intDay<=0 || intDay>arrMonth[intMonth-1])
		{
			alert("Enter Day between 1 and "+arrMonth[intMonth-1]);
			objDate.focus();
			objDate.select();
			return false;
		}
		
	}
	return true;
}
/***************************************************************************************/

/*******To check whether the To date is bigger than the from date *********************/
function checkGreaterDate(objDate1,objDate2)
{
	var strFromDate=objDate1.value;
	var strToDate=objDate2.value
	if(strFromDate.length!=0 && strToDate.length!=0)
	{
		var arrFromDate=strFromDate.split("/");
		var arrToDate=strToDate.split("/");
		var objFromDate=new Date(arrFromDate[2],arrFromDate[1],arrFromDate[0]);
		var objToDate=new Date(arrToDate[2],arrToDate[1],arrToDate[0]);
		if(objFromDate>objToDate)
		{
			alert("To date should be greater than the From date");
			return false
		}
	}
	return true;
}
/**************************************************************************************/
