function getSuburbPostcodeSelection(text, li)
{
	var selectedText = text.value;
	var m = selectedText.split(/,/);
	$('State').value = trim(m[3]);
	$('Suburb').value = selectedText;
	
}

function getSuburbSelection(text, li)
{
	var selectedText = text.value;
	var m = selectedText.split(/,/);
	$('Suburb').value = trim(m[0]);
	
	if ($('State').type == "hidden")
	{
		$('State').value = trim(m[1]);
	}
	else
	{
		for (var i = 0; i < $('State').length; i++)
		{
			var v = trim($('State').options[i].value);
			var state = trim(m[1]);
					
			if (state == v)
			{
				$('State').options[i].selected = true;
			}
			else
			{
				$('State').options[i].selected = false;
			}
		}
	}
	$('Postcode').value = trim(m[2]);
}

function AutoCompleteHome(u, s)
{
	if( s == undefined || s.length < 1 )
		s = '#Suburb';
	var SuburbURL = u;
	$j(s).autocomplete({
		minLength: 2,
		delay: 400,
		source: function( request, response ) {
			$j.ajax({
				url: SuburbURL,
				dataType: 'json',
				data: { json: true, suburb: request.term },
				success: function(data) { response(data); },
				error: function(x, t, e) { response(new Array()); }
			})
		},
		select: AutoCompleteParseSuburbPostcodeResponce
	});
}

function AutoCompleteParseSuburbPostcodeResponce(e,u)
{
	m = u.item.label.split(/,/);
	$j('#State').val( trim(m[2]) );
	return true;
}

function AutoCompleteSuburb(u)
{
	var SuburbURL = u;
	$j('#Suburb').autocomplete({
		minLength: 2,
		delay: 400,
		source: function( request, response ) {
			$j.ajax({
				url: SuburbURL,
				dataType: 'json',
				data: { Mode: 'suburb', json: true, state: $j('#State').val(), term: request.term, suburb: request.term },
				success: function(data) { response(data); },
				error: function(x, t, e) { response(new Array()); }
			})
		},
		select: AutoCompleteParseSuburbResponce,
		focus: AutoCompleteParseSuburbResponce
	});
}

function AutoCompleteParseSuburbResponce(e,u)
{
	m = u.item.label.split(/,/);
	if( m.length != 3)
		return true; // Bail, but don't hinder the autocomplete;
	if( $j('#State').attr('type') == 'hidden')
		$j('#State').val( trim(m[1]) );
	else
	{
		$j('#State').attr('selectedIndex', '-1').children("option:selected").removeAttr("selected");
		$j('#State option[value="' + trim(m[1]) + '"]').attr('selected', 'selected');
	}
	$j('#Postcode').val( trim(m[2]) );
	$j('#Suburb').val( trim(m[0]) );
	return false;
}

function AutoCompleteStreet(u)
{
	var StreetURL = u;
	$j('#StreetName').autocomplete({
		minLength: 2,
		delay: 400,
		source: function( request, response ) {
			$j.ajax({
				url: StreetURL,
				dataType: 'json',
				data: { Mode: 'street', json: true, state: $j('#State').val(), suburb: $j('#Suburb').val(), term: request.term },
				success: function(data) { response(data); },
				error: function(x, t, e) { response(new Array()); }
			})
		}
	});
}

function getStreetSelection(text, li)
{
	getSuburbSelection(text, li);
	getStreetType(text, li);
}

// Removes leading whitespaces
function LTrim( value ) {
	
	var re = /\s*((\S+\s*)*)/;
	return value.replace(re, "$1");
	
}

// Removes ending whitespaces
function RTrim( value ) {
	
	var re = /((\s*\S+)*)\s*/;
	return value.replace(re, "$1");
	
}

// Removes leading and ending whitespaces
function trim( value ) {
	if(typeof(value)=="undefined")
		return "";
	return LTrim(RTrim(value));
}

function HideOptionForLandSearch() {
	var propertyType = $('PropertyType').value;

	if(propertyType == 'LAND') {
		$('BedroomsLeft').disabled = true;
		$('BedroomsRight').disabled = true;
		$('BathroomsLeft').disabled = true;
		$('BathroomsRight').disabled = true;
	}
	else
	{
		$('BedroomsLeft').disabled = false;
		$('BedroomsRight').disabled = false;
		$('BathroomsLeft').disabled = false;
		$('BathroomsRight').disabled = false;
	}
}

function HideOptionForLandRefineSearch() {
	var propertyType = $('propertytype').value;

	if(propertyType == 'LAND') {
		$('LeftIdBedroomsLeft').disabled = true;
		$('RightIdBedroomsRight').disabled = true;
		$('LeftIdBathroomsLeft').disabled = true;
		$('RightIdBathroomsRight').disabled = true;
		$('LeftIdCarSpacesLeft').disabled = true;
		$('RightIdCarSpacesRight').disabled = true;
	}
	else
	{
		$('LeftIdBedroomsLeft').disabled = false;
		$('RightIdBedroomsRight').disabled = false;
		$('LeftIdBathroomsLeft').disabled = false;
		$('RightIdBathroomsRight').disabled = false;
		$('LeftIdCarSpacesLeft').disabled = false;
		$('RightIdCarSpacesRight').disabled = false;
	}
}



