function chooseLocation(field, name, code){
	if(field == 'pick'){
		$('#pickupField').val(name);
		$('#pickupValue').val(code);
		$('#puSuggList').css('display','none');
	}
	else{
		$('#dropoffField').val(name);
		$('#dropoffValue').val(code);
		$('#doSuggList').css('display','none');
	}
}

var timeout;

function resetTypingFlag(){
	clearTimeout(timeout);
}

function analyzeLocation(val, field){
	if(val.length <= 2){
		$('#puSuggList').css('display','none');
		$('#puSuggList').html('');
	}
	
	if(val.length > 2){	
		timeout = setTimeout("suggestLocation('" + val + "','" + field + "')", 500);
	}
}

function suggestLocation(val, field) 
{
		if(field == 'pickupField'){
			var field = $('#puSuggList');
			var type = "pick";
		}
		else{
			var field = $('#doSuggList');
			var type = "drop";
		}

		val = val.toLowerCase();
		$.ajax({
		  	 type: "GET",
			 url: 'searchsuggest.xml',
			 dataType: ($.browser.msie) ? "text" : "xml",
			 success: function(data){
			  var xml;
			  if (typeof data == "string") {
			   xml = new ActiveXObject("Microsoft.XMLDOM");
			   xml.async = false;
			   xml.loadXML(data);
			  } else {
			   xml = data;
			  }
			
			  var suggestArray = new Array;
			  var z = 0;
			  var displayCount = 10;
			
			  field.html('');
			  $(xml).find("location").each(function()
			  {	
					var suggVal = $(this).find("suggVal").text().toLowerCase();
					var suggType = $(this).find("suggType").text();
					var name = $(this).find("name").text().toLowerCase();
					var city = $(this).find("city").text().toLowerCase();
					
					if(suggType == 3 && (name.indexOf(val) != -1 || city.indexOf(val) != -1 || suggVal == val)){
						suggestArray[z] = new Array($(this).find("suggType").text(), $(this).find("name").text(), $(this).find("suggVal").text(), $(this).find("address").text(), $(this).find("city").text(), $(this).find("state").text());
						z++;
					} 
					if(suggType == 2 && (city.indexOf(val) != -1 || suggVal == val)){
						suggestArray[z] = new Array($(this).find("suggType").text(), $(this).find("name").text(), $(this).find("suggVal").text(), $(this).find("address").text(), $(this).find("city").text(), $(this).find("state").text());
						z++;
					}					
			  });
			  
			  for(var i=0; i<suggestArray.length; i++){
				if(displayCount != 0){
					if(suggestArray[i][0] == 3){
						field.css('display','block');
						var name = suggestArray[i][1] + ' - (' + suggestArray[i][2] + ')';
						field.append('<div class="location"><a class="suggAirport" href="javascript:chooseLocation(\''+ type +'\',\''+ name +'\',\''+ suggestArray[i][2] +'\')">' + suggestArray[i][1] + ' - (' + suggestArray[i][2] + ')</a></div>');
						displayCount--;
					}
				}	
			  }
			
			  for(var i=0; i<suggestArray.length; i++){
				if(displayCount != 0){
					if(suggestArray[i][0] == 2){
						field.css('display','block');
						var name = suggestArray[i][3] + ', ' + suggestArray[i][4] + ', ' + suggestArray[i][5] + ' - (' + suggestArray[i][2] + ')';
						field.append('<div class="location"><a class="suggLocation" href="javascript:chooseLocation(\''+ type +'\',\''+ name +'\',\''+ suggestArray[i][2] +'\')">' + suggestArray[i][3] + ', ' + suggestArray[i][4] + ', ' + suggestArray[i][5] + ' - (' + suggestArray[i][2] + ')</a></div>')
						displayCount--;
					}
				}	
			  }		
			
			  if(z == 0){ field.css('display','none'); }
			
		 	}
		});
	
};



document.onclick=check;
function check(e){
	var target = (e && e.target) || (event && event.srcElement);
	var obj = document.getElementById('puSuggList');
	var obj2 = document.getElementById('doSuggList');
	checkParent(target)?obj.style.display='none':null;
	checkParent(target)?obj2.style.display='none':null;
}

function checkParent(t){
	while(t.parentNode){
		if(t==document.getElementById('puSuggList')){
			return false
		}
		if(t==document.getElementById('doSuggList')){
			return false
		}
		t=t.parentNode
	}
	return true
}


