function auto_fill(id, v){
	
	if( ($(id).val()) && ($(id).val()!=v) ) return;
	
	$(id).css({ color: '#777777'}).attr({ value: v }).focus(function(){
		if($(this).val()==v){
			$(this).val('').css({ color: '#000000' });
		}
	}).blur(function(){
		if($(this).val()==''){
			$(this).css({ color: '#777777' }).val(v);
		}
	});
	
	return;

}


jQuery.exists = function(selector) {return ($(selector).length > 0);}


function submit_quicksearch(){

	var term = $('#livesearch_terms').val();
	if(term && term.length>2 && term != 'e.g. postcode, road, semi, pool'){
		window.location = '/property-for-sale/search/all/' + urlencode(term) + '/desc';
	}
	
	return false;

}


function urlencode(str){
	return escape(str).replace(/\+/g,'%2B').replace(/%20/g, '+').replace(/\*/g, '%2A').replace(/\//g, '%2F').replace(/@/g, '%40');
}



$(document).ready(function(){
	
	$('#quicksearch').submit(submit_quicksearch);
 
	// Make rel="external" links open in a new tab
	$('a[rel=external]').each(function(){
		this.target = '_blank';
	});	
	
	auto_fill($('#livesearch_terms'), 'Keyword e.g. street / postcode');
	
	$('#livesearch_terms').autocomplete('/search/quick/', {
	 
	  minChars: 3,
	  mustMatch: false,
	  selectFirst: false,
	  autoFill: false,
	  dataType: 'json',
	  matchSubset: false,
	  scroll: false,
	  width: 270,
	  
	  parse: function(jdata) {
		var parsed_data = []; 
		
		if (!jdata || jdata.length == 0) {
             // handle no results case specially
			parsed_data[0] = {data: {
								id:-1,
								url:'#'
							  }};
        }
		else{
			
			for (var i=0; i<jdata.length; i++){
				obj = jdata[i];
				parsed_data[i] = { 
					data: obj, 
					id: obj.id
				};
			}
			
		}
		return parsed_data;
	  },
	 
	  formatItem: function(property, i, n){
		//alert(property +','+ i +','+ n);
		
		if(property.id==-1){	
			return '<div class="ajax">Sorry, no results<\/div>';
		}
	
		var html = '<div class="ajax">';
		
		if(property.directory){
			html += '<img src="\/images\/properties\/' + property.directory + '\/thumb.jpg" class="left" \/>';
		}
		else{
			html += '<img src="\/images\/awaiting_thumb.png" class="left" \/>';
		}
		
		html += '<p class="address"><strong>' + property.address + '<\/strong><br \/>';
		
		if(property.bedrooms>1) html += property.bedrooms + ' Bed ';
		if(property.name) html +=  property.name;
		
		html += '<\/p>\
				<p class="price_str">' + property.price_str + '<\/p>\
				<\/div>';
		
		return html;
	  
	  }
	  
	
	}).result(function(event, item){
	  	location.href = item.url;
	});
	
	auto_fill($('#keywords'), 'Keyword (town/feature/etc)');

});
