
	
	/*************************************************************************************************************/	
    //var SITE_URL="<%Response.Write(Comman.GetUrl());%>" 
    var autoSearchType="intl";
    var autoType=""
	var ajaxBox_offsetX = 0;
	var ajaxBox_offsetY = 0;
	//var ajax_list_externalFile1 = SITE_URL+'ajax-list-countries.aspx';	// Path to external file
	
	var ajax_list_externalFile1 = SITE_URL+'ajax-list-countries_intl.aspx';	// Path to external file
	
	var minimumLettersBeforeLookup = 0;	// Number of letters entered before a lookup is performed.
	
	var ajax_list_objects = new Array();
	var ajax_list_cachedLists = new Array();
	var ajax_list_activeInput = false;
	var ajax_list_activeItem;
	var ajax_list_optionDivFirstItem = false;
	var ajax_list_currentLetters = new Array();
	var ajax_optionDiv = false;
	var ajax_optionDiv_iframe = false;

	var ajax_list_MSIE = false;
	if(navigator.userAgent.indexOf('MSIE')>=0 && navigator.userAgent.indexOf('Opera')<0)ajax_list_MSIE=true;
	
	var currentListIndex = 0;

	function ajax_getTopPos(inputObj)
	{
		
	  var returnValue = inputObj.offsetTop;
	 try
		{
	   while((inputObj = inputObj.offsetParent) != null){
	  	returnValue += inputObj.offsetTop;
	   }
	   return returnValue;
	  }
	  	catch(exception)
	  	{return returnValue = inputObj.offsetTop}
	 
	}
	function ajax_list_cancelEvent()
	{
		return false;
	}
	
	function ajax_getLeftPos(inputObj)
	{
	  var returnValue = inputObj.offsetLeft;
	   try
		{
	     while((inputObj = inputObj.offsetParent) != null)returnValue += inputObj.offsetLeft;
	     return returnValue ;
	    }
	  	catch(exception)
	  	{
	  	return returnValue = inputObj.offsetLeft;
	  	}
	
	}
	
	function ajax_option_setValue(e,inputObj)
	{
		if(!inputObj)inputObj=this;
		var tmpValue = inputObj.innerHTML;
		//alert(tmpValue);
		if(ajax_list_MSIE)tmpValue = inputObj.innerText;else tmpValue = inputObj.textContent;
		if(!tmpValue)tmpValue = inputObj.innerHTML;
		ajax_list_activeInput.value = tmpValue;
		if(document.getElementById(ajax_list_activeInput.id + '_hidden'))document.getElementById(ajax_list_activeInput.id + '_hidden').value = inputObj.id; 
		
		//alert(document.getElementById(ajax_list_activeInput.id + '_hidden').value);
		ajax_options_hide();
//		try
//		{
//		if(document.getElementById("hdd_setval").value!="multi")
//		Flexidate();
//		}
//		catch(exception)
//		{}
	}
	
	function ajax_options_hide()
	{
		if(ajax_optionDiv)ajax_optionDiv.style.display='none';	
		if(ajax_optionDiv_iframe)ajax_optionDiv_iframe.style.display='none';
	}
     
     String.prototype.stripTags = function()
     {
        return this.replace(/<([^>]+)>/g,'');
     }
	
	function ajax_options_rollOverActiveItem(item,fromKeyBoard)
	{	 
		if(ajax_list_activeItem)ajax_list_activeItem.className='optionDiv';
		item.className='optionDivSelected';
		

		ajax_list_activeItem = item;
		
		if(fromKeyBoard){
			if(ajax_list_activeItem.offsetTop>ajax_optionDiv.offsetHeight){
				ajax_optionDiv.scrollTop = ajax_list_activeItem.offsetTop - ajax_optionDiv.offsetHeight + ajax_list_activeItem.offsetHeight + 2 ;
			}
			if(ajax_list_activeItem.offsetTop<ajax_optionDiv.scrollTop)
			{
				ajax_optionDiv.scrollTop = 0;	
			}
		}
	}
	
	function ajax_option_list_buildList(letters,paramToExternalFile)
	{

		var indexLandmark=0;
		ajax_optionDiv.innerHTML = '';
		ajax_list_activeItem = false;
		if(ajax_list_cachedLists[paramToExternalFile][letters.toLowerCase()].length<=1){
			
			ajax_options_hide();
			return;			
		}
		    ajax_list_optionDivFirstItem = false;
		    var optionsAdded = false;
		    for(var no=0;no<ajax_list_cachedLists[paramToExternalFile][letters.toLowerCase()].length;no++){
			if(ajax_list_cachedLists[paramToExternalFile][letters.toLowerCase()][no].length==0)continue;
			optionsAdded = true;
			var div = document.createElement('DIV');
			var items = ajax_list_cachedLists[paramToExternalFile][letters.toLowerCase()][no].split(/###/gi);
           
            

//            var searchLetter=letters+''
//		    var tttt=items+''
//			
//			var tt=tttt.indexOf('bos');
//			tttt[tt]='<span>"'+letters+'"</span>'
//			alert(tt)
////			
//			
//			var seacrhSet=new RegExp(letters.toLowerCase());
//		
//	        var matchPos1 = seacrhSet.exec("/'"+items+"'/"); 

//            alert(matchPos1)
//			
		
			if(ajax_list_cachedLists[paramToExternalFile][letters.toLowerCase()].length==1 && ajax_list_activeInput.value == items[0]){
				ajax_options_hide();
				return;						
			}
			
			
			if(autoType=="hotel")
			{
			
			 
			 var searchLetter=letters+''
			 var regex = new RegExp( '(' + searchLetter + ')', 'gi' ); 
			 newVal = '';
			 var val= new Array();
            val = searchLetter.split(' ');
            var count=0;
            for(var c=0; c < val.length; c++) 
            {
//                newVal += val[c].substring(0,1).toUpperCase() +
//                val[c].substring(1,val[c].length) + '';

                  if(val.length >1 )
                  {
                     count=count+1;
                     if(count==1)
                     {
                     
                      newVal += val[c].substring(0,1).toUpperCase() +
                      val[c].substring(1,val[c].length) + ' ';
                     }
                      else
                      {
                        newVal += val[c].substring(0,1).toUpperCase() +
                       val[c].substring(1,val[c].length) + '';
                      }
                
                  }
                  else
                  {
                       newVal += val[c].substring(0,1).toUpperCase() +
                       val[c].substring(1,val[c].length) + '';
                  }


            }            
             searchLetter = newVal;            
			 var displayItem=items[items.length-1];
			 var newSearch="<span style='background-color:#FFFF00'>"+searchLetter+"</span>";
			 displayItem=displayItem.replace(regex,newSearch);
			
			
        
			
			//-------------------test code---------
			// alert(displayItem);
//			 var tt=displayItem.indexOf('n');
//			//alert(tt);
//			 if(tt!=-1)
//			 {
//			 var sLength=letters.length;
//			 var rIndex=tt+sLength+1;
//			 var toTheLeft=displayItem.substring(0,tt);
//			 var toTheRight=displayItem.substring(rIndex);
//			 var newSerach='<em>'+letters+'</em>';
//			 displayItem=toTheLeft+newSerach+toTheRight;
//			 }
			   var htmlDiv="";
			    if(no==0)
			    {
			        if(items[items.length-1]!="LandmarkStarts")
			        
			        //var newStr=displayItem.stripTags();  
			        //alert(newStr)
			        div.innerHTML="<table width='96%' border='0' cellpadding='0' cellspacing='0' ><tr><td>"+displayItem+"</td><td align='right' style='height:20px'>&nbsp;&nbsp;<img src='"+SITE_URL+"images/city-area.gif'  /></td></tr></table>";
			    } 
			    else
			    {   
			        if(items[items.length-1]=="LandmarkStarts")
			        {
			        indexLandmark=no+1;
			        }
			        if(no==indexLandmark && indexLandmark>0)
			        {
    			      div.innerHTML="<table width='96%' border='0' cellpadding='0' cellspacing='0' style='padding-top:5px'><tr><td height='30px' colspan='2' align='left' class='DotLine'></td></tr><tr ><td >"+displayItem+"</td><td align='right' class='HotelDropDown'>&nbsp;&nbsp;<img src='"+SITE_URL+"images/landmark.gif'  /></td></tr></table>";
    			    }
			        else if(items[items.length-1]!="LandmarkStarts")
			        { 
    			       div.innerHTML="<table width='96%' border='0' cellpadding='0' cellspacing='0' ><tr><td >"+displayItem+"</td><td</td></tr></table>";
			        }
			    }
			    if(items[items.length-1]!="LandmarkStarts")
			    {
			    div.id = items[0];
			    div.className='optionDiv';
			    div.onmouseover = function(){ ajax_options_rollOverActiveItem(this,false) }
			    div.onclick = ajax_option_setValue;
			    if(!ajax_list_optionDivFirstItem)ajax_list_optionDivFirstItem = div;
			    ajax_optionDiv.appendChild(div);
			    }
	   
            }
            else
            {
		  
            div.innerHTML =items[items.length-1];
            div.id = items[0];
			div.className='optionDiv';
			div.onmouseover = function(){ ajax_options_rollOverActiveItem(this,false) }
			div.onclick = ajax_option_setValue;
			if(!ajax_list_optionDivFirstItem)ajax_list_optionDivFirstItem = div;
			ajax_optionDiv.appendChild(div);
            }
			
		}	
		if(optionsAdded){
			ajax_optionDiv.style.display='block';
			if(ajax_optionDiv_iframe)ajax_optionDiv_iframe.style.display='';
			ajax_options_rollOverActiveItem(ajax_list_optionDivFirstItem,true);
		}
					
	}
//	function capitalize(obj) 
//	{
//        val = obj.value;
//        newVal = '';
//        val = val.split(' ');
//        for(var c=0; c < val.length; c++) {
//        newVal += val[c].substring(0,1).toUpperCase() +
//        val[c].substring(1,val[c].length) + ' ';
//    }
//obj.value = newVal;
//}
	function ajax_option_list_showContent(ajaxIndex,inputObj,paramToExternalFile,whichIndex)
	{
	 
		if(whichIndex!=currentListIndex)return;
		var letters = inputObj.value;
		var content = ajax_list_objects[ajaxIndex].response;
	    //var content = rtrim(content1,'|');
		
		var elements = content.split('|');
		if(elements.length<12)
		{
		//alert("elements.length"+elements.length+"element "+elements)
		    var count=elements.length-1;
//		    for(var i=0;i<=elements.length-1;i++)
//		    {
//		        var city=elements[i].length;
//		        //alert(city);
//		        if(city>=50)
//		        {
//		        count=count+2;
//		        }
//		        else if(i==elements.length-1)
//		        {
//		        count=count;
//		        }
//		        else
//		        {
//		        count=count+1;
//		        }
//        		
//		    }
    		//alert(count);
    		//ajax_optionDiv_iframe.style.zIndex = "-1000";
    		ajax_optionDiv_iframe.style.height=(count)*20+"px";
		    ajax_optionDiv.style.height=(count)*20+"px";
		   // ajax_optionDiv.style.zIndex="1000";
		    //ajax_optionDiv_iframe.style.width="600px";
		   

		}
		ajax_list_cachedLists[paramToExternalFile][letters.toLowerCase()] = elements;
		ajax_option_list_buildList(letters,paramToExternalFile);
		
	}
	function ajax_option_resize(inputObj)
	{
		ajax_optionDiv.style.top = (ajax_getTopPos(inputObj) + inputObj.offsetHeight + ajaxBox_offsetY+6) + 'px';
		ajax_optionDiv.style.left = (ajax_getLeftPos(inputObj) + ajaxBox_offsetX -4) + 'px';
		if(ajax_optionDiv_iframe){
			ajax_optionDiv_iframe.style.left = ajax_optionDiv.style.left;
			ajax_optionDiv_iframe.style.top = ajax_optionDiv.style.top;			
		}		
		
	}
	
	function ajax_showOptions1(inputObj,paramToExternalFile,e,type,type1)
	{
		    if(!e) {
       e = window.event;
         }
	if(e.keyCode!=40 && e.keyCode!=38)	// Down arrow
			{
			
        autoType=type1;
	   inputObj=document.getElementById(inputObj);
	   var inputObjLength=inputObj.value;
	   if(inputObjLength.length>=3)
	   {
		ajax_list_cachedLists[paramToExternalFile] = new Array();
		ajax_list_currentLetters[inputObj.name] = inputObj.value;
		if(ajax_optionDiv)
		{
		  ajax_options_hide();
		  ajax_optionDiv=false;
		}
		if(!ajax_optionDiv)
		{
		    ajax_optionDiv_iframe = document.createElement('IFRAME');
			ajax_optionDiv = document.createElement('DIV');
			if(type=="p")
			{
			ajax_optionDiv.id = "ajax_listOfOptionsp";	
			}
			 else if(type=="class")
			{
			ajax_optionDiv.id = "ajax_listOfOptionsclass";	
			
			}            
			else
			{
			  ajax_optionDiv.id = "ajax_listOfOptions"; 
			  	
			}
			
			document.body.appendChild(ajax_optionDiv);
			
			ajax_optionDiv.style.width="520px"; 
			if(ajax_list_MSIE){
				
				ajax_optionDiv_iframe.border='0';
				ajax_optionDiv_iframe.style.width = ajax_optionDiv.clientWidth + 'px';
				ajax_optionDiv_iframe.style.height = ajax_optionDiv.clientHeight + 'px';
				if(type=="p")
			    {
				ajax_optionDiv_iframe.id = 'ajax_listOfOptions_iframep';
				}
				 else if(type=="class")
			    {
    		
			    ajax_optionDiv_iframe.id = 'ajax_listOfOptions_iframeclass';
			    }    
				else
				{
				 ajax_optionDiv_iframe.id = 'ajax_listOfOptions_iframe';
				}
				document.body.appendChild(ajax_optionDiv_iframe);
				
			}
			
			var allInputs = document.getElementsByTagName('INPUT');
			for(var no=0;no<allInputs.length;no++){
				if(!allInputs[no].onkeyup)allInputs[no].onfocus = ajax_options_hide;
			}			
			var allSelects = document.getElementsByTagName('SELECT');
			for(var no=0;no<allSelects.length;no++){
				allSelects[no].onfocus = ajax_options_hide;
			}

			var oldonkeydown=document.body.onkeydown;
			
			if(navigator.appName=='Netscape')
			{
			if (document.addEventListener){
  
             document.addEventListener('keydown', ajax_option_keyNavigation, true); 
             }
			}
			else
			{
			if(typeof oldonkeydown!='function'){
				document.body.onkeydown=ajax_option_keyNavigation;
			
			}else{
				document.body.onkeydown=function(){
					//oldonkeydown();
				ajax_option_keyNavigation() ;}
			}
			}
			var oldonresize=document.body.onresize;
			if(typeof oldonresize!='function'){
				document.body.onresize=function() {ajax_option_resize(inputObj); };
			
			}else{
				document.body.onresize=function(){oldonresize();
				ajax_option_resize(inputObj) ;}
			}
				
		}
		
		if(inputObj.value.length<minimumLettersBeforeLookup){
			ajax_options_hide();
			return;
		}
			


		ajax_optionDiv.style.top = (ajax_getTopPos(inputObj) + inputObj.offsetHeight + ajaxBox_offsetY )+2 + 'px';
		ajax_optionDiv.style.left = (ajax_getLeftPos(inputObj) + ajaxBox_offsetX) + 'px';
	 
		if(ajax_optionDiv_iframe){
			ajax_optionDiv_iframe.style.left = ajax_optionDiv.style.left;
			ajax_optionDiv_iframe.style.top = ajax_optionDiv.style.top;			
		}
		
		ajax_list_activeInput = inputObj;
		ajax_optionDiv.onselectstart =  ajax_list_cancelEvent;
		
		
		currentListIndex++;
		if(type=="intl")
		{
		    if(autoSearchType=="intl")
	           type="intl";
	           else
	           type="c";
	    }
	       
	       
	      // alert(type);
	       
		if(ajax_list_cachedLists[paramToExternalFile][inputObj.value.toLowerCase()])
		{
			ajax_option_list_buildList(inputObj.value,paramToExternalFile,currentListIndex);			
		}
		
		else{
			
			var tmpIndex=currentListIndex/1;
			ajax_optionDiv.innerHTML = '';
			var ajaxIndex = ajax_list_objects.length;
			ajax_list_objects[ajaxIndex] = new sack();
			var url = ajax_list_externalFile1 + '?' + paramToExternalFile + '=1&type='+type+'&letters=' + inputObj.value.replace(" ","+");
			ajax_list_objects[ajaxIndex].requestFile = url;	// Specifying which file to get
			ajax_list_objects[ajaxIndex].onCompletion = function(){ ajax_option_list_showContent(ajaxIndex,inputObj,paramToExternalFile,tmpIndex); };	// Specify function that will be executed after file has been found
			ajax_list_objects[ajaxIndex].runAJAX();		// Execute AJAX function		
		}
		}
		}	
	}
	
	function ajax_option_keyNavigation(e)
	{
		//alert(e);
		if(document.all)e = event;
		
		if(!ajax_optionDiv)return;
		if(ajax_optionDiv.style.display=='none')return;
		
		if(e.keyCode==38){	// Up arrow
			if(!ajax_list_activeItem)return;
			if(ajax_list_activeItem && !ajax_list_activeItem.previousSibling)return;
			ajax_options_rollOverActiveItem(ajax_list_activeItem.previousSibling,true);
		}
		
		if(e.keyCode==40)	// Down arrow
			{
			
			if(!ajax_list_activeItem){ 
			    //alert("if: "+e.keyCode);
				ajax_options_rollOverActiveItem(ajax_list_optionDivFirstItem,true);
			}else{
			 //alert("else: "+e.keyCode);
				if(!ajax_list_activeItem.nextSibling)return;
				ajax_options_rollOverActiveItem(ajax_list_activeItem.nextSibling,true);
			}
		}
		
		if(e.keyCode==13 || e.keyCode==9){	// Enter key or tab key
			if(ajax_list_activeItem && ajax_list_activeItem.className=='optionDivSelected')ajax_option_setValue(false,ajax_list_activeItem);
			if(e.keyCode==13)return false; else return true;
		}
		if(e.keyCode==27){	// Escape key
			ajax_options_hide();			
		}
	}
	
	
	document.documentElement.onclick = autoHideList;
	
	function autoHideList(e)
	{
		if(document.all)e = event;
		
		if (e.target) source = e.target;
			else if (e.srcElement) source = e.srcElement;
			if (source.nodeType == 3) // defeat Safari bug
				source = source.parentNode;		
		if(source.tagName.toLowerCase()!='input' && source.tagName.toLowerCase()!='textarea')ajax_options_hide();
		
	}
