	$(function() {
		if ($("#location").length > 0){	
		var cache = {},
		lastXhr;
	$( "#location" ).focus(function(){
		if($('#locationId').val())$('#locationId').val('');
		if($('#locationType').val())$('#locationType').val('');
		if($( "#location" ).val() === 'Enter airport code or city'){
			$( "#location" ).val('');
		}
		
		$('.ui-autocomplete').delay(400).show();}).autocomplete({
		
		minLength: 2,
		highlight:true,
		appendTo: ".ac_results",
		select: function( event, ui ) {$( "#location" ).val( ui.item.visible );$( "#locationId" ).val( ui.item.value );$( "#locationType" ).val( ui.item.type );return false;},
		focus: function(event, ui) {$( "#location" ).val( ui.item.city_name );return false;},
		change:function(event,ui){$( "#locationId" ).val("");$( "#locationType" ).val("");},
		open:function(event,ui){$('.ac_results').show();return false;},
		close:function(event,ui){$('.ac_results').hide();return false;},
		source: function( request, response ) {
			var term = request.term;

			if ( term in cache ) {
				response( cache[ term ] );
				return;
			}

			lastXhr = $.ajax({
              url: "/index.php/autocomplete/",
              data: request,
              dataType: "json",
              type: "POST",
              success:function( data, status, xhr ) {
                  if(data ===''){
                	  $('.ui-autocomplete').html('');
                  }
  					cache[ term ] = data;
					if ( xhr === lastXhr ) {
						response( data);
					}
					$('.ac_results').show();
					$(".plainLink").each(function (i) {
			            if (i%2 == 1) {
			              $(this).addClass("ac_odd");
			            }
			            else{
			            	$(this).addClass("ac_even");
			            }
  					});
				}
			});
			
		}
	 
		
	}).blur(function(){
		if($( "#location" ).val() == ''){
			$("#location").val('Enter airport code or city');
		}
	}).data("autocomplete")._renderItem = function (ul, item) {
        return $("<li></li>")
        .data("item.autocomplete", item)
        .append(function(){if(item.value != 0){return "<a href='#' class='plainLink'>"+item.visible +"</a>";}})
        .appendTo(ul);
    };
		}

		
		
		if ($("#inpSearch").length > 0){	
		var cachename = {},
			lastXhrc;
		$( "#inpSearch" ).focus(function(){
			
			if($( "#inpSearch" ).val() === 'Search for a hotel by name'){
				$( "#inpSearch" ).val('');
			}
			
			$('.ui-nameautocomplete').delay(400).show();}).autocomplete({
			
			minLength: 2,
			highlight:true,
			appendTo: ".ac_nameresults",
			select: function( event, ui ) {if(ui.item.name != '0'){$( "#inpSearch" ).val( ui.item.name );window.location.href = ui.item.seflink;}return false;},
			focus: function(event, ui) {if(ui.item.name != '0'){$( "#inpSearch" ).val( ui.item.name );}return false;},
			open:function(event,ui){$('.ac_nameresults').show();return false;},
			close:function(event,ui){$('.ac_nameresults').hide();return false;},
			source: function( request, response ) {
				var termname = request.term;

				if ( termname in cachename ) {
					response( cachename[ termname ] );
					return;
				}

				lastXhrc = $.ajax({
                  url: "/index.php/autocomplete/hotelname/",
                  data: request,
                  dataType: "json",
                  type: "POST",
                  success:function( data, status, xhr ) {
	                  if(data ===''){
	                	  $('.ui-nameautocomplete').html('');
	                  }
	                  cachename[ termname ] = data;
						if ( xhr === lastXhrc ) {
							response( data);
						}
						
						$('.plainnameLink').each(function (i) {
				            if (i%2 == 1) {
				              $(this).addClass("ac_odd");
				            }
				            else{
				            	$(this).addClass("ac_even");
				            }
	  					});
					} 
				});
				
				
				
				
			}
		 
			
		}).blur(function(){
		if($( "#inpSearch" ).val() == ''){
			$("#inpSearch").val('Search for a hotel by name');
		}
	}).data("autocomplete")._renderItem = function (ul, item) {
	        return $("<li></li>")
	        .data("item.autocomplete", item)
	        .append(function(){if(item.name != 0){
	        return "<a href='#' class='plainnameLink'>"+item.name +"</a>";}else{return "<a href='#' class='plainnameLink'>No results found</a>";}})
	        .appendTo(ul);
	    };
	    
		}
	    
	    
	    if ($("#inpSearch2").length > 0){	
			var cachename = {},
				lastXhrc;
			$( "#inpSearch2" ).focus(function(){
				
				if($( "#inpSearch2" ).val() === 'Search for a hotel by name' || $( "#inpSearch2" ).val() === 'Search for an airport hotel'){
					$( "#inpSearch2" ).val('');
				}
				
				$('.ui-nameautocomplete').delay(400).show();}).autocomplete({
				
				minLength: 2,
				highlight:true,
				appendTo: ".ac_nameresults2",
				select: function( event, ui ) {if(ui.item.name != '0'){$( "#inpSearch2" ).val( ui.item.name );window.location.href = ui.item.seflink;}return false;},
				focus: function(event, ui) {if(ui.item.name != '0'){$( "#inpSearch2" ).val( ui.item.name );}return false;},
				open:function(event,ui){$('.ac_nameresults2').show();return false;},
				close:function(event,ui){$('.ac_nameresults2').hide();return false;},
				source: function( request, response ) {
					var termname = request.term;

					if ( termname in cachename ) {
						response( cachename[ termname ] );
						return;
					}

					lastXhrc = $.ajax({
	                  url: "/index.php/autocomplete/hotelname/",
	                  data: request,
	                  dataType: "json",
	                  type: "POST",
	                  success:function( data, status, xhr ) {
		                  if(data ===''){
		                	  $('.ui-nameautocomplete').html('');
		                  }
		                  cachename[ termname ] = data;
							if ( xhr === lastXhrc ) {
								response( data);
							}
							
							$('.plainnameLink').each(function (i) {
					            if (i%2 == 1) {
					              $(this).addClass("ac_odd");
					            }
					            else{
					            	$(this).addClass("ac_even");
					            }
		  					});
						} 
					});
					
					
					
					
				}
			 
				
			}).blur(function(){
			if($( "#inpSearch2" ).val() == ''){
				if(isSearchList){
					$("#inpSearch2").val('Search for an airport hotel');
				}
				else {
				$("#inpSearch2").val('Search for a hotel by name');
				}
			}
		}).data("autocomplete")._renderItem = function (ul, item) {
		        return $("<li></li>")
		        .data("item.autocomplete", item)
		        .append(function(){if(item.name != 0){
		        return "<a href='#' class='plainnameLink'>"+item.name +"</a>";}else{return "<a href='#' class='plainnameLink'>No results found</a>";}})
		        .appendTo(ul);
		    };
	    
	    
		}
	});

	
