alreadyclicked = false;
// css detection logic
//if(navigator.appName=="Netscape" && navigator.appVersion<"5"){
//	document.write('<link href="/css/net.css" rel="stylesheet" type="text/css">')
	//}
//else {
	//document.write('<link href="/css/ie.css" rel="stylesheet" type="text/css"">')
//}

function Init()
{
		MM_preloadImages('/images/menu/us2.gif','/images/menu/get_account2.gif','/images/menu/your_account2.gif','/images/menu/book_conference2.gif','/images/menu/your_company2.gif');
}
// for formatting the label texts of flex fields
function caseChange(strvalue)
     {
		 //alert(strvalue);
		if (strvalue && strvalue.length > 0){
			var firstChar=strvalue.charAt(0);
			firstChar=firstChar.toUpperCase()
			//alert(strvalue.substr(1,strvalue.length));
			var resrChar=strvalue.substr(1,strvalue.length);
			resrChar=resrChar.toLowerCase();
			strvalue=firstChar+resrChar;
		}
		else
			strvalue = "";
			//alert(strvalue)
		document.write(strvalue);
	}
// preload images
function MM_preloadImages() { //v3.0
	var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
	var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
	if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
// rollover
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
// reloads the window if Nav4 resized
function MM_reloadPage(init) { //v3.0
	if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
	document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
	else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
	}
	//MM_reloadPage(true);

function MM_displayStatusMsg(msgStr) { //v1.0
  status=msgStr;
  document.MM_returnValue = true;
  return  document.MM_returnValue;
}
function GetFormInLayer(layername, formname)
{
	
	// Detect the browser
	var myForm;
	myForm = document.forms[formname]; 
	
	/*
	// THis block is commented because this will work only for relative-positioned divs
	if 	(navigator.appName=="Netscape" && navigator.appVersion<"5")
	{
		myForm = document.layers[layername].document.forms[formname];
	}
	else
	{
		myForm = document.forms[formname];
	}
	*/
	
	return myForm;
} 

//Remove leading and trailing spaces
function trimAll( strValue ) 
{
 var objRegExp = /^(\s*)$/;

	//check for all spaces
	if(objRegExp.test(strValue)) {
	   strValue = strValue.replace(objRegExp, '');
	   if( strValue.length == 0)
		  return strValue;
	}

   //check for leading & trailing spaces
   objRegExp = /^(\s*)([\W\w]*)(\b\s*$)/;
   if(objRegExp.test(strValue)) {
	   //remove leading and trailing whitespace characters
	   strValue = strValue.replace(objRegExp, '$2');
	}
  return strValue;
}

// input parameters : StringBeingVerified   example a phone number   : "(+44) 141 222 4567"
//                  : StringToVerifyAgainst example verification str : "0123456789 +()"
// output           : false StringBeingVerified contains characters  not specified in the verification string
// output           : true String has been verified
// EXAMPLE CALL
//if !(VerifyStringCharacters(thisForm.TELEPHONE.value,'(+-) 0123456789'))
//{
// alert('Telephone numbers may be made up of the following alpahnumeric characters only:\n\n(+-) 0123456789');
// return;
//} 
//
//
function VerifyStringCharacters(StringBeingVerified,StringToVerifyAgainst)
{
	var Found = false;
	for (i = 0;  i < StringBeingVerified.length;  i++)
	{
		ch = StringBeingVerified.charAt(i);
		for (j = 0;  j < StringToVerifyAgainst.length;  j++) 
		{
		  if (ch == StringToVerifyAgainst.charAt(j)) 
		  { 
			Found = true; break; 
		  }
		}
		
		if (Found == false)  
		{
		  break;
		 } 
		else 
		{ 
		 if (i != StringBeingVerified.length-1 ) Found = false;
		}
	}	
	return Found;
}
	
	
function emailCheck (emailStr) 
{
	/* The following pattern is used to check if the entered e-mail address
	   fits the user@domain format.  It also is used to separate the username
	   from the domain. */
	var emailPat=/^(.+)@(.+)$/
	/* The following string represents the pattern for matching all special
	   characters.  We don't want to allow special characters in the address. 
	   These characters include ( ) < > @ , ; : \ " . [ ]    */
//	   var specialChars="\\(\\)<>@!£$%&*=|?#,;:\\\\\\\"\\.\\[\\]"
	var specialChars="\\(\\)<>@!£$%&*=|?#,;:+^{}\\/~`'\\\\\\\"\\.\\[\\]"
	/* The following string represents the range of characters allowed in a 
	   username or domainname.  It really states which chars aren't allowed. */
	var validChars="\[^\\s" + specialChars + "\]"
	/* The following pattern applies if the "user" is a quoted string (in
	   which case, there are no rules about which characters are allowed
	   and which aren't; anything goes).  E.g. "jiminy cricket"@disney.com
	   is a legal e-mail address. */
	var quotedUser="(\"[^\"]*\")"
	/* The following pattern applies for domains that are IP addresses,
	   rather than symbolic names.  E.g. joe@[123.124.233.4] is a legal
	   e-mail address. NOTE: The square brackets are required. */
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
	/* The following string represents an atom (basically a series of
	   non-special characters.) */
	var atom=validChars + '+'
	/* The following string represents one word in the typical username.
	   For example, in john.doe@somewhere.com, john and doe are words.
	   Basically, a word is either an atom or quoted string. */
	var word="(" + atom + "|" + quotedUser + ")"
	// The following pattern describes the structure of the user
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
	/* The following pattern describes the structure of a normal symbolic
	   domain, as opposed to ipDomainPat, shown above. */
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
	
	// To validate the last character of email address should be an alphabet
	var lastChar=emailStr.substring(emailStr.length - 1, emailStr.length);
	if(!(/[a-zA-Z]$/.test(lastChar)))
	{
		return false;
	}

	/* Finally, let's start trying to figure out if the supplied address is
	   valid. */
	
	/* Begin with the coarse pattern to simply break up user@domain into
	   different pieces that are easy to analyze. */
	var matchArray=emailStr.match(emailPat)
	if (matchArray==null) {
	  /* Too many/few @'s or something; basically, this address doesn't
		 even fit the general mould of a valid e-mail address. */
		return false
	}
	var user=matchArray[1]
	var domain=matchArray[2]
	
	// See if "user" is valid 
	if (user.match(userPat)==null) {
		// user is not valid
		return false
	}
	
	/* if the e-mail address is at an IP address (as opposed to a symbolic
	   host name) make sure the IP address is valid. */
	var IPArray=domain.match(ipDomainPat)
	if (IPArray!=null) {
		// this is an IP address
		  for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {
			return false
			}
		}
		return true
	}
	
	// Domain is symbolic name
	var domainArray=domain.match(domainPat)
	if (domainArray==null) {
		return false
	}
	
	/* domain name seems valid, but now make sure that it ends in a
	   three-letter word (like com, edu, gov) or a two-letter word,
	   representing country (uk, nl), and that there's a hostname preceding 
	   the domain or country. */
	
	/* Now we need to break up the domain to get a count of how many atoms
	   it consists of. */
	var atomPat=new RegExp(atom,"g")
	var domArr=domain.match(atomPat)
	var len=domArr.length
	if (domArr[domArr.length-1].length<2 || 
		domArr[domArr.length-1].length>3) {
	   // the address must end in a two letter or three letter word.
	   return false
	}
	
	// Make sure there's a host name preceding the domain.
	if (len<2) {
	   return false
	}
	
	// If we've gotten this far, everything's valid!
	return true;
}


function checkLength(value, length)
{
	var strNewValue;
	strNewValue = trimAll(value);
	if (strNewValue.length < length)
	{
		return false;
	}
	
	return true;
}

function StripNonNumeric(InString) {
  var InStringCopy = InString;
  var OutString = '';
  var ThisChar;
  while (InStringCopy.length > 0) {
    ThisChar = InStringCopy.charAt(0); // first char
    if ((!isNaN(ThisChar)) && (ThisChar != ' ')) {
      OutString = OutString + ThisChar;
    }
    InStringCopy = InStringCopy.slice(1); // all but first char
  }
  return OutString;
}

function checkPhoneNumber(value, msg)
{
	var strNewValue;
	strNewValue = trimAll(value);
	if (!VerifyStringCharacters(strNewValue,'(+-) 0123456789'))
	{
		alert(msg + '. Only numbers, spaces, dashes and brackets are allowed.');
		return false;
	}
	var tmpPhNum = StripNonNumeric(value)
	
  if ((tmpPhNum.length < 10)||(tmpPhNum.length > 25)) {
		alert(msg + ', including the area code.  The number must have atleast 10 digits.');
		return false;
  }
    //alert(tmpPhNum.indexOf("+")+"&&&="+tmpPhNum.indexOf("+",1))
  if (value.indexOf("+")>0 || value.indexOf("+",1)>0) {

	alert(msg + ". '+' can be only at the beginning of the number.");
		return false;
  }
	return true;
}

function checkFaxNumber(value, msg)
{	
	return checkPhoneNumber(value, msg);
}

function checkEmail(value)
{
	var strNewValue;
	strNewValue = trimAll(value);
	if (!emailCheck(strNewValue))
	{
		return false;
	}
	return true;
}

function redirectToHomePage()
{
	location.href = "/index.jsp";
}

function CheckForInternetEMails (emailStr) 
{
	/* The following pattern is used to check if the entered e-mail address
	   fits the user@domain format.  It also is used to separate the username
	   from the domain. */
	var emailPat=/^(.+)@(.+)$/
	/* The following string represents the pattern for matching all special
	   characters.  We don't want to allow special characters in the address. 
	   These characters include ( ) < > @ , ; : \ " . [ ]    */
	
	/* Begin with the coarse pattern to simply break up user@domain into
	   different pieces that are easy to analyze. */
	var matchArray=emailStr.match(emailPat)
	if (matchArray==null) {
	  /* Too many/few @'s or something; basically, this address doesn't
		 even fit the general mould of a valid e-mail address. */
		return false
	}
	var user=matchArray[1];
	var domain=matchArray[2];
	
	domain = domain.toUpperCase();

	var re = new Array(4);	
	// Check whether domain contains HOTMAIL
	re[0] = /HOTMAIL/;
	// Check whether domain contains YAHOO
	re[1] = /YAHOO/;	
	// Check whether domain contains INFOSEEK
	re[2] = /INFOSEEK/;	
	// 	Check whether domain contains EXCITE
	re[3] = /EXCITE/;	
	// If we've gotten this far, everything's valid!
	for(var i = 0; i < 4; ++i)
	{
		if (domain.search(re[i]) != -1)
		{
			return false;
		}
	}
	
	return true;
}

function DoubleUpQuote(textField)
{
   FirstPart	= '';
   SecondPart	= '';
  i=0;
  while ( (textField.value.charAt(i) != "'") && (i<=textField.value.length) )	  { i++; }
  
   if (textField.value.charAt(i) == "'") {
      FirstPart = textField.value.substring(1,i);
      SecondPart = "'" + textField.value.substring(i, textField.value.length);
    }
  
  if (FirstPart != '') {
    return(FirstPart + SecondPart)
  }
  else {
    return textField.value
  }  
} 


function dumpControlsInForm(layerName, formName, outputDiv)
{
 var myForm = GetFormInLayer(layerName, formName)
 var objOutputdiv = document.getElementById(outputDiv);
 alert(objOutputdiv);
 if (myForm != null)
 {
  var  oColl = myForm.elements;
  var x=0;
  
  alert(oColl.length);
  for(x=0;x<oColl.length;x++)
  {
	
    objOutputdiv.innerText = objOutputdiv.innerText + "\n" + oColl.item(x).name + "=" + oColl.item(x).value;
	alert(objOutputdiv.innerText);
  }
 
 }
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function MM_redirectMenu(targ,selObj){ //v3.0
  if(selObj.options[selObj.selectedIndex].value != "" && selObj.options[selObj.selectedIndex].value != "/")
	eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  //if (restore) selObj.selectedIndex=0;
}

function OneRadioSelected (which) {
  Selected = false;
  if (isNaN(which.length)) { // there must be only one radio button shown
  	Selected = (which.checked);
  }
  else {  // there is an array of buttons
    for (Count = 0; (Count < which.length) && (!Selected); Count++) {
  		Selected = which[Count].checked;
    }
  }
  return Selected;
}
function MM_openBrWindow(theURL,winName,features) { //v2.0
		window.open(theURL,winName,features);
} 
function logonValidate(act){
   if(checkIfAlreadyClicked()){return false}
   var LogonForm=GetFormInLayer('menu','logonForm');   
   if ( trimAll(LogonForm.username.value)==''){
   	alert('Please enter a Email Id to login to the system.');
 	LogonForm.username.value='';
   	LogonForm.username.focus()
   	return false;   	
   }
   if ( trimAll(LogonForm.password.value)==''){
    LogonForm.password.value='';
   	alert('Please enter Password to login to the system.');
   	LogonForm.password.focus()
   	return false;   	
   }
    	
   LogonForm.action=act;
   LogonForm.submit();
   displayProcessingImage("subimage"); // the image name is passed to this method                
   // return is made false here because form is submittted in above. For the processing image to be displayed we have to change the previous image to processing image after form is submitted, So we explicitly submit the form using form.submit()
   return false;  
}


function selectCountry(countryIndex){
	var searchForm=GetFormInLayer('logo','search');
	var selObj = searchForm.Country;
	//eval(searchForm.Country.options[searchForm.Country.selectedIndex].value+"'");
	//searchForm.Country.selectedIndex=countryIndex;
	
	for(var n=0; n < selObj.options.length ; ++n)
	{
		if(n == countryIndex)
			selObj.options[n].selected = true;
	}
}
  function daysInFebruary (year){
   	// February has 29 days in any year evenly divisible by four, except for centurial years which are not also divisible by 400.
       return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
   }

   function DaysArray(n) {
   	for (var i = 1; i <= n; i++) {
   		this[i] = 31
   		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
   		if (i==2) {this[i] = 29}
      } 
      return this
   }
   
   function isDateValid(dtStr,msg){
    var dtCh= "/";
   	var daysInMonth = DaysArray(12)
   	var pos1=dtStr.indexOf(dtCh)
   	var pos2=dtStr.indexOf(dtCh,pos1+1)
   	var strMonth=dtStr.substring(0,pos1)
   	var strDay=dtStr.substring(pos1+1,pos2)
   	var strYear=dtStr.substring(pos2+1)
   	strYr=strYear
   	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
   	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
   	month=parseInt(strMonth)
   	day=parseInt(strDay)
   	year=parseInt(strYr)   	
   	if (strMonth.length<1 || month<1 || month>12){
   		alert(msg)   		
   		return false
   	}
   	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
   		alert(msg)   		
   		return false
   	}
    return true
   }

// this method returns the canada states in a array, the first element of the array is Select State
function getCanadaStates(){
    var canadaStates = new Array();
    canadaStates[0] =  new Array('Select State','Select State');
    canadaStates[1] =  new Array('AB','Alberta');
    canadaStates[2] =  new Array('BC','British Columbia');
    canadaStates[3] =  new Array('MB','Manitoba');
    canadaStates[4] =  new Array('NB','New Brunswick');
    canadaStates[5] =  new Array('NL','Newfoundland');
    canadaStates[6] =  new Array('NT','Northwest Territories');
    canadaStates[7] =  new Array('NS','Nova Scotia');
    canadaStates[8] =  new Array('NU','Nunavut');
    canadaStates[9] =  new Array('ON','Ontario');
    canadaStates[10] =  new Array('PE','Prince Edward Island');  	    
    canadaStates[11] = new Array('QC','Quebec');  	      	    
    canadaStates[12] = new Array('SK','Saskatchewan');  	      	      	    
    canadaStates[13] = new Array('YT','Yukon Territory');  	      	      	      	    	    
    return canadaStates;
}

// this method returns the USA states in a array, the first element of the array is Select State
function getUSStates(){
    var usStates = new Array();
    usStates[0] =  new Array('Select State','Select State');
    usStates[1] = new Array('AL','Alabama');
    usStates[2] = new Array('AK','Alaska');    
    usStates[3] = new Array('AZ','Arizona');	    
    usStates[4] = new Array('AR','Arkansas');
    usStates[5] = new Array('CA','California');
    usStates[6] = new Array('CO','Colorado');
    usStates[7] = new Array('CT','Connecticut');
    usStates[8] = new Array('DE','Delaware');
    usStates[9] = new Array('DC','District Of Columbia');
    usStates[10] = new Array('FL','Florida');
    usStates[11] = new Array('GA','Georgia');
    usStates[12] = new Array('HI','Hawaii');
    usStates[13] = new Array('ID','Idaho');
    usStates[14] = new Array('IL','Illinois');
    usStates[15] = new Array('IN','Indiana');
    usStates[16] = new Array('IA','Iowa');	    
    usStates[17] = new Array('KS','Kansas');
    usStates[18] = new Array('KY','Kentucky');	    
    usStates[19] = new Array('LA','Louisiana');
    usStates[20] = new Array('ME','Maine');   	    
    usStates[21] = new Array('MD','Maryland');   	    
    usStates[22] = new Array('MA','Massachusetts');
    usStates[23] = new Array('MI','Michigan');
    usStates[24] = new Array('MN','Minnesota');
    usStates[25] = new Array('MS','Mississippi');	    	    	       	    
    usStates[26] = new Array('MO','Missouri');	    	    	       	    
    usStates[27] = new Array('MT','Montana');	    	    	       	    
    usStates[28] = new Array('NE','Nebraska');	    	    	       	    
    usStates[29] = new Array('NV','Nevada');	    	    	       	    
    usStates[30] = new Array('NH','New Hampshire');	    	    	       	    
    usStates[31] = new Array('NJ','New Jersey');	    	    	       	    
    usStates[32] = new Array('NM','New Mexico');	    	    	       	    
    usStates[33] = new Array('NY','New York');	    	    	       	    
    usStates[34] = new Array('NC','North Carolina');	    	    	       	    
    usStates[35] = new Array('ND','North Dakota');	    	    	       	    
    usStates[36] = new Array('OH','Ohio');	    	    	       	    
    usStates[37] = new Array('OK','Oklahoma');	    	    	       	    	    	    	    	    	    	    	    	    	    	    	    	    	    
    usStates[38] = new Array('OR','Oregon');	    	    	       	    
    usStates[39] = new Array('PA','Pennsylvania');	    	    	       	    	    	    	    
    usStates[40] = new Array('RI','Rhode Island');	    	    	       	    	    	    	    
    usStates[41] = new Array('SC','South Carolina');	    	    	       	    	    	    	    
    usStates[42] = new Array('SD','South Dakota');	    	    	       	    	    	    	    
    usStates[43] = new Array('TN','Tennessee');	    	    	       	    	    	    	    
    usStates[44] = new Array('TX','Texas');	    	    	       	    	    	    	    
    usStates[45] = new Array('UT','Utah');	    	    	       	    	    	    	    
    usStates[46] = new Array('VT','Vermont');	    	    	       	    	    	    	    	    	    	    	    	    	    	    	    
    usStates[47] = new Array('VA','Virginia');	    	    	       	    	    	    	    	    	    	    	    	    	    	    	    
    usStates[48] = new Array('WA','Washington');	    	    	       	    	    	    	    	    	    	    	    	    	    	    	    	    	    	    
    usStates[49] = new Array('WV','West Virginia');	    	    	       	    	    	    	    	    	    	    	    	    	    	    	    	    	    	    
    usStates[50] = new Array('WI','Wisconsin');	    	    	       	    	    	    	    	    	    	    	    	    	    	    	    	    	    	    
    usStates[51] = new Array('WY','Wyoming');	    
    return usStates;
}	    	    	       	    	    	    	    	    	    	    	    	    	    	    	    	    	    	    	    	    	    	    

/*
this method takes 7 arguments
  1 country: the form field which represents country
  2 comboState: the form field which represents state combobox
  3 txtState: the form field which represents state text field
  4 selected: the form field is a hidden field, it holds the initial value of state and when user changes to different state the changed value is stored here
  5 divComboState: the div of combobox, which will be hidden or shown based on country selected
  6 divTxtState: the div of state textfield, which will be hidden or shown based on country selected
  7 onchange: this is a boolean variable, it is passed as true if the method is called from onchange of country, it is passed as false otherwise
see how it is used in servicelogin.jsp page for more information	    
*/
function displayStateValues(country,comboState,txtState,selected,divComboState,divTxtState,onchange){    
  populateStateValues(country,comboState,selected,onchange)
  for(var j = 0; j < comboState.length; j++){
     if(comboState.options[j].value == selected.value){
         comboState.selectedIndex=j
     }
  }
  if(country.options[country.selectedIndex].value == 'USA' || country.options[country.selectedIndex].value == 'CAN'){                      
       toggleMenu(divComboState,true)
       toggleMenu(divTxtState,false)          
       txtState.value='';             
  }
  else{       
       toggleMenu(divComboState,false)
       toggleMenu(divTxtState,true)        
       if(onchange == false){
       	 txtState.value=selected.value;
       }

  }
  
}

// this method clears the contents of the state combo and populates it for USA or Canada states based on which is selected as country
// this method takes following arguments 
//  1 country: the form field which represents country
//  2 comboState: the form field which represents state combobox
//  3 selected: the form field is a hidden field, it holds the initial value of state and when user changes to different state the changed value is stored here
//  4 onchange: this is a boolean variable, it is passed as true if the method is called from onchange of country, it is passed as false otherwise
//see how it is used in servicelogin.jsp page for more information
function populateStateValues(country,comboState,selected,onchange){ 
  /*
  if(onchange == false && (selected.value =='' || selected.value == null)){
        for(var j = 0; j < country.length; j++){
	     if(country.options[j].value == 'USA'){  //if state is not previously selected then country is set to default to USA and the user has to select a state now
	         country.selectedIndex=j
	     }
        }
  }
  */  
  if(country.options[country.selectedIndex].value == 'USA' || country.options[country.selectedIndex].value == 'CAN'){                              
	  count = comboState.length               
	  for(i=(count-1);i>=0;i--){                
	    comboState.options[i]= null                  
	  }       
  }
  if(country.options[country.selectedIndex].value == 'USA'){                             
       usStates = getUSStates();               
       for(var j = 0; j < usStates.length; j++){
	  var opt = new Option(usStates[j][1], usStates[j][0]);
	  comboState.options[comboState.length] = opt;                  	
       } 
  }
  if(country.options[country.selectedIndex].value == 'CAN'){               
       canadaStates = getCanadaStates();
       for(var j = 0; j < canadaStates.length; j++){
	  var opt = new Option(canadaStates[j][1], canadaStates[j][0]);
	  comboState.options[comboState.length] = opt;                  	
       }       
  }
}

//to this method two parameters are passed currMenu and display
//this function hides the contents of the curMenu div and shows the contents of the display div
function toggleMenu(currMenu, display,arrlist) {       
	
	if (document.all) {
		if(eval("document.all." + currMenu)){
			thisMenu = eval("document.all." + currMenu + ".style")		
			if (display == true) {
				thisMenu.display = "block"
			}
			else {
				thisMenu.display = "none"
			}	
		}
		
	}
	else if (document.getElementById){		
		if(document.getElementById(currMenu)){
			thisMenu = document.getElementById(currMenu).style				
			if (display == true) {

				thisMenu.display = "block"
			}
			else {
				thisMenu.display = "none"
			}	
		}
	}
 }
 function toggleMenu2(currMenu, display,radEleName) 
 {       
	
	
	var eleName=document.getElementsByName(radEleName);
	var i=0;
	
	var divName='div';
	if (document.all) {
		for(i=0;i<eleName.length;i++)
		{		
				divName='div';
				divName =divName+eval(eleName[i].value);
				if (eval("document.all." + divName) && (divName!=currMenu)  )
				{
					for ( var j=0;j<document.acctform.elements.length;j++)
         			{
         	
        	       		if ((document.acctform.elements[j].type=='radio') &&(document.acctform.elements[j].value==eleName[i].value)
        	       			
        	       		)
			        	{
			        		if (!document.acctform.elements[j].disabled==true )
			        		{
								document.acctform.elements[j].checked=false;
			        			break;
							}
			        	}
			        }
			        //thisMenu = eval("document.all." + divName + ".style")		
					//thisMenu.display = "none"
				}
		}
	}
	else if (document.getElementById){		
		
		for(i=0;i<eleName.length;i++)
		{		
				divName='div';
				divName =divName+eval(eleName[i].value);
				
				if (document.getElementById(divName) && (divName!=currMenu))
				{
					for ( var j=0;j<document.acctform.elements.length;j++)
         			{
         			
        	       		if ((document.acctform.elements[j].type=='radio') &&(document.acctform.elements[j].value==eleName[i].value))
			        	{
			        		if (!document.acctform.elements[j].disabled==true )
			        		{
								document.acctform.elements[j].checked=false;
			        			break;
							}
			        		
			        	}
			        }
					
				}
		}
	}
 }
 
function checkIfAlreadyClicked(){         
     if(alreadyclicked == true){
       //alert("You have already clicked. Please click 'OK' and wait.");
       return true;
     }
     else{                   
       return false
     }
}
function displayProcessingImage(existingimage){
  alreadyclicked = true; // this is made true because all form client validations are success and the form is getting submitted. Now if user clicks submit again a alert will be displayed
  if(document.all){
    image = eval("document.all." + existingimage + ".src")
    image.src = "/img/icons/indicator.gif" 
  }
  if(document.getElementById){
  	document.getElementById(existingimage).src="/img/icons/indicator.gif" 
  }
}

