
var ArrowOver = new Image()
ArrowOver.src = "../images/arrowright.gif"

var ArrowOut = new Image()
ArrowOut.src = "../images/transparent.gif"	

/*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~
// This function is used to change the Bgcolor of the cell, 
// image etc on mouse over of a link
//
//Input		: cell id, mouse over color, status bar message
//Output	: None
~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*/
function fnMouseOver(sCellID, sOverColor, sStatusMessage)
{
	document.images[sCellID + "IMG"].src = ArrowOver.src	//change the image
	document.all[sCellID].bgColor = sOverColor						//change the cell color
	window.status = sStatusMessage												//set the caption for the status bar
}

/*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~
// This function is used to revert back the Bgcolor of the cell, 
// image etc on mouse out of a link
//
//Input		: cell id, mouse out color
//Output	: None
~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*/
function fnMouseOut(sCellID, sOutColor)
{
	document.images[sCellID+ "IMG"].src = ArrowOut.src	//change the image
	document.all[sCellID].bgColor = sOutColor						//change the cell color
	window.status = ""																	//set the caption for the status bar
}
	
function validate(oForm)
{
//input argument//oForm = contain the object of the form to be validated

	var iCounter=0
	var sFldval,sFldname,sFldType,sFldName2
	var iLength
	var intLoop
	var intStatus=0
	iLength=oForm.elements.length
	while(iCounter<iLength)
	{
	
		sFldval=oForm.elements[iCounter].value;
		sFldname=oForm.elements[iCounter].name;
		if (sFldval != null){
			sFldlen=sFldval.length
			sFldType = sFldname.substring(0,3);
			sFldType = sFldType.toUpperCase();
			sFldName2 = sFldname.substring(3);
		if (sFldType !="CMD" && sFldType!="HID" && sFldType != "SEL")
		{
				if(sFldname.charAt(1) == "R" && sFldval.length==0)
				{
					alert("Please enter value for the "+ sFldName2 +" field")
					eval("sFldval=oForm."+ sFldname+".focus()");
					return false;				
				}
			if((sFldname.charAt(1) == "R" || sFldname.charAt(1) == "N") && sFldval.length > 0)
			{		for (intLoop=0;intLoop!=sFldval.length;++intLoop)
					{
						if(sFldval.charAt(intLoop)!=" ")
						{	intStatus=0;
							break;
						}
						else if(sFldval.charAt(intLoop)==" ")
								intStatus=1;
					}
				if(intStatus==1)
					{
						alert("Space characters entered are not valid") 
						eval("sFldval=oForm."+sFldname+".focus()");
						return false;						
					}
			}
				
			if(sFldname.charAt(0)=="M" && isNaN(sFldval))
				{
					alert("Enter valid money value") 
					eval("sFldval=oForm."+sFldname+".focus()");
					return false;
				}
			if(sFldname.charAt(0)=="M" && !isNaN(sFldval))
				{
					if(parseFloat(sFldval) <0 || parseFloat(sFldval) > parseFloat(922337203685477.5808))
					{
						alert("Enter  value in range 0 - 922337203685477.5808") 
						eval("sFldval=oForm."+sFldname+".focus()");
						return false;
					}
				}			
					
			if(sFldname.charAt(0) == "I" && isNaN(sFldval))
				{
					alert("Enter valid numeric value integer") 
					eval("sFldname = oForm."+ sFldname + ".focus()");
					return false;
				}
			if(sFldname.charAt(0) == "I" &&  !isNaN(sFldval))
				{			
					if(parseInt(sFldval) <0 )//|| parseFloat(sFldval) > parseFloat(2147483647))
						{
							alert("Enter value in numeric range above 0") 
							eval("sFldval=oForm."+sFldname+".focus()");
							return false;
						}
				}
			if(sFldname.charAt(0) == "F" && isNaN(sFldval))
				{
					alert("Enter valid numeric decimal value") 
					eval("sFldval=oForm."+sFldname+".focus()");
					return false;
				}
			if(sFldname.charAt(0) == "F" &&  !isNaN(sFldval))
				{			
					if(parseFloat(sFldval) <0 )
						{
							alert("Enter valid value" ) 
							eval("sFldval=oForm."+sFldname+".focus()");
							return false;
						}
				}
			if(sFldname.charAt(0) == "Y" && isNaN(sFldval))
				{
					alert("Enter valid value ") 
					eval("sFldval=oForm."+sFldname+".focus()");
					return false;
				}
			if(sFldname.charAt(0) == "Y" &&  !isNaN(sFldval))
				{			
					if(parseInt(sFldval) <0 || parseInt(sFldval) > parseInt(255))
						{
							alert("Enter valid  value in range 0 - 255") 
							eval("sFldval=oForm."+sFldname+".focus()");
							return false;
						}
				}
			if(sFldname.charAt(0) == "S" && isNaN(sFldval))
				{
					alert("Enter valid numeric value ") 
					eval("sFldval=oForm."+sFldname+".focus()");
					return false;
				}
			if(sFldname.charAt(0) == "S" && !isNaN(sFldval))
				{			
					if(parseInt(sFldval) < 0  || parseInt(sFldval) > 32767)
						{
							alert("Enter valid value in range 0 - 32767") 
							eval("sFldval=oForm."+sFldname+".focus()");
							return false;
						}
				}
			if(sFldname.charAt(0) == "D" && (sFldval.length > 0)&& (sFldval!=" ")) 	
				{
					var str=sFldval.replace(/-/g,"/");
					if (isNaN(Date.parse(str)) )
					{
						alert("Please Enter a Valid Date");
						eval("sFldval=oForm."+sFldname+".focus()");
						return false;
					}
					else
					{
						if(parseInt(str.length) <6 )
							{
								alert("Enter a Valid Date ");
								eval("sFldval=oForm."+sFldname+".focus()");
								return false;
							}
						else
							if(parseInt(str.Length)>10)
							{
								alert("Enter Valid Date");
								eval("sFldval=oForm."+sFldname+".focus()");
								return false;
							}
					} 
		//************************Change By Rajeev ***************************

					if (DateCheck(oForm, sFldname) == false){
						eval("sFldval=oForm."+sFldname+".focus()");
						return false;
						}
		//*************************End Change *********************************		
				}
				
		//*********************************************************************				
		//************************Changed by Gaurav on 22/04/2000 to validate time*******		

			if(sFldname.charAt(0) == "K" && (sFldval.length > 0)&& (sFldval!=" ")) 	
				{
					var str=sFldval;
						if((parseInt(str.length) <4) || (parseInt(str.length) >4))
							{
								alert("Please Enter a Valid Time like (0130,2300)");
								eval("sFldval=oForm."+sFldname+".focus()");
								return false;
							}
						if (isNaN(sFldval))
							{
								alert("Please Enter a Valid Time like (0130,2300)");
								eval("sFldval=oForm."+sFldname+".focus()");
								return false;
							}
	
				}
			else if ((sFldname.charAt(0) == "K") && (sFldval.charAt(0)==" "))
				{
					alert("Please Enter a Valid Time like (0130,2300)");
					eval("sFldval=oForm."+sFldname+".focus()");
					return false;
				}		
		//*************************End Change *********************************
		//*********************************************************************				
				
				
				
			if(sFldname.charAt(0) == "T")
				{
				  if(eval("oForm." + sFldname + ".value") != "")
				  {
					if(sFldval.indexOf('"') != -1) 
					{
						alert("Please remove double quote(\") from the string.");
						eval("sFldval=oForm."+sFldname+".focus()");
						return false;
					}
					/*if(sFldval.indexOf("'") != -1) 
					{
						alert("Please remove single quote(') from the string.");
						eval("sFldval=oForm."+sFldname+".focus()");
						return false;
					}*/
					if(sFldval.indexOf("*") != -1) 
					{
						alert("Please remove asterisk(*) from the string.");
						eval("sFldval=oForm."+sFldname+".focus()");
						return false;
					}
					if (sFldname.indexOf("EF_") == 2)
					{
						if(!ValidateEMail(eval("oForm." + sFldname)))
							return false
					}
					else if (sFldname.indexOf("ALPHA_") == 2)
					{
						if(!isNaN(eval("oForm." + sFldname + ".value")))
						{
							alert("This field can contain only alphabets.")
							eval("oForm." + sFldname + ".focus()")
							return false;
						}
					}
					else if (sFldname.indexOf("NUM_") == 2)
					{
						if(isNaN(eval("oForm." + sFldname + ".value")))
						{
							alert("This field can contain only number.")
							eval("oForm." + sFldname + ".focus()")
							return false;
						}
					}
					else if (sFldname.indexOf("STATES_") == 2)
					{
						//validity for US States
						var  STATES = "AL,AK,AS,AZ,AR,CA,CO,CT,DE,DC,FM,FL,GA,GU,HI,ID,IL" 
						STATES = STATES + ",IN,IA,KS,KY,LA,ME,MH,MD,MA,MI,MN,MS,MO,MT,NE,NV,NH" 
						STATES = STATES + ",NJ,NM,NY,NC,ND,MP,OH,OK,OR,PW,PA,PR,RI,SC,SD,TN,TX,UT" 
						STATES = STATES + ",VT,VI,VA,WA,WV,WI,WY,AE,AA,AP"
						if(STATES.indexOf("," + eval("oForm." + sFldname + ".value").toUpperCase() + ",") == -1)
						{	
							alert("Please enter a valid 2 digit State Code.")
							eval("oForm." + sFldname + ".focus()")
							return false;
						}
					}

					//check for reqd length
					var find = "_REQ"
					var iPos1 = sFldname.indexOf(find)
					if (iPos1 != -1)
					{
						reqLength = sFldname.substring(iPos1 + find.length, sFldname.length)
						iLen = eval("oForm." + sFldname + ".value").length;
						if (iLen < reqLength)
						{
							alert("This field must be " + reqLength + " characters long.")
							eval("oForm." + sFldname + ".focus()");
							return false
						}
					}

//***************************************************************
		//ExpDate Check for not less than Current One
//************* Made By Pradeep Sharma *************************


/* If You want to check for Expiry Date of Credit Card Then Place this commented code above the include statement

		<SCRIPT LANGUAGE=javascript>
			<!--
				var SYSMONTH,SYSYEAR
				SYSMONTH = "<%Response.write Month(Date())%>"
				SYSYEAR = "<%Response.write Year(Date())%>"
			//-->
		</SCRIPT> 

*/

				    if ((sFldname.indexOf("_ExpDate_") == 5)||(sFldname.indexOf("_CCExpDate") != -1))
				    {
					 var iCMonth, iGMonth;
					 var sValue,sDate;
					 var sCurrentYear,sGivenYear
					 var sDate;
					 sValue= eval("oForm." + sFldname + ".value");

				
					//alert(sDate);
					iGMonth =  sValue.substring(0,2);
					sGivenYear = sValue.substring(4,2);
					
					iCMonth = conDate(SYSMONTH);
					sCurrentYear = SYSYEAR.substring(2,5);
					
					

/*					if (sDate.charAt(1)=="/")
					{
					iCMonth = sDate.substring(1,0);
					iCMonth = "0" + iCMonth;
					sCurrentYear = sDate.substring(9,5);
					}
					else
					{
					iCMonth = sDate.substring(2,0);
					sCurrentYear = sDate.substring(10,8);
					}

*/
					//alert(sCurrentYear + "Curr --- Given" + sGivenYear);

					if (iGMonth > 12)
					{
					 alert("Sorry month cannot be greater than 12"); 
					 eval("oForm." + sFldname + ".focus()")
					 return false;
		
					}
	
					if (sGivenYear<sCurrentYear)
					{
					alert("The Credit Card seems to be expired. Please enter a valid credit card.");
					eval("oForm." + sFldname + ".focus()")
					 return false;
					}
					else
					{
						if((sGivenYear==sCurrentYear) && (iGMonth>iCMonth))
						{
						alert("The Credit Card seems to be expired. Please enter a valid credit card.");
						eval("oForm." + sFldname + ".focus()")
						 return false;
						}

					}
				   }
		//End Here Pradeep
				  }
				} 	
			}
		}			
		iCounter=iCounter+1;
		
	}
		return true;
}


///*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~
//This function is used to Open new 
///window When User Clicks On A Hyperlink
//*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*/


function openwin(sFileName,sPageTitle,sPageToOpen,sWidth,sHeight, sWinName,sLeft,sTop)
{
	if(sPageTitle != "") 
		 sFileName+= "?PageTitle=" + sPageTitle + "&PageToOpen=" + sPageToOpen
		
	wind = window.open(sFileName,sWinName,"toolbars=no,statusbar=no,resizable=no,height="+ sHeight +",width="+ sWidth +",left="+ sLeft +",top="+ sTop +"")
	//window.close()	
}

function openNewWindow(sPage, sWindowName, sQueryString, sWindowOptions)
{
	var iHandler = null
	//pass querystring if required
	if(sQueryString != "")
		sPage = sPage + "?"+ sQueryString
		
	iHandler = window.open(sPage, sWindowName, sWindowOptions)
	iHandler.focus()
}
////*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~

/*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~
//This function is used to return the index no of the value passed.
//This value is actually one of options of the combo.
//
//Input		: combo object, value to check
//Output	: Index no
//*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*/
function getIndex(cmbFrom, sVal)
{
	//get the index of a value placed in combobox or listbox
	for(var i=0; i < cmbFrom.length; i++)
		if (cmbFrom[i].value.toString().toLowerCase() == sVal.toString().toLowerCase())
			return i
	return (-1)
}

function ValidateEMail(objName)
{
	//created on: 11th May 2000 
	//Programmer: Manisha Sethi	
	//Purpose	: This function is used to validate email. 
	//Arguments : Email object
		
	var sobjValue;
	var iobjLength;
	
	sobjValue=objName.value;
	iobjLength=sobjValue.length;
	iFposition=sobjValue.indexOf("@");
	iSposition=sobjValue.indexOf(".");
	iTmp=sobjValue.lastIndexOf(".");	
	iPosition=sobjValue.indexOf(",");
	iPos=sobjValue.indexOf(";");
	
	if (iobjLength!=0)
	{
		if ((iFposition == -1)||(iSposition == -1))
		{
			alert("Please enter the E-Mail address in the proper format")
			eval(objName.focus());
			return false;
		}
		else if(sobjValue.charAt(0) == "@" || sobjValue.charAt(0)==".")
		{
			alert("Please enter the E-Mail address in the proper format")
			eval(objName.focus());
			return false;				
		}
		else if(sobjValue.charAt(iobjLength) == "@" || sobjValue.charAt(iobjLength)==".")
		{
			alert("Please enter the E-Mail address in the proper format");
			eval(objName.focus());
			return false;				
		}	
		else if((sobjValue.indexOf("@",(iFposition+1)))!=-1)
		{	
			alert("Please enter the E-Mail address in the proper format")
			eval(objName.focus());
			return false;
		}
		else if ((iobjLength-(iTmp+1)<2)||(iobjLength-(iTmp+1)>3))
		{
			alert("Please enter the E-Mail address in the proper format")
			eval(objName.focus());
			return false;
		}
		else if ((iPosition!=-1) || (iPos!=-1))
		{
			alert("Please enter the E-Mail address in the proper format")
			eval(objName.focus());
			return false;
		}
		else
		{
			return true;
		}		
	}		
}