var pu_sub_id = null;
var pu_sub_id_error = null;
var pu_street_id = null;
var pu_street_name = null;
var pu_street_id_error = null;
var pu_street_num = null;
var pu_street_num_error = null;
var pu_unit_num = null;
var pu_unit_num_error = null;

var dest_sub_id = null;
var dest_sub_id_error = null;
var dest_street_id = null;
var dest_street_name = null;
var dest_street_id_error = null;
var dest_street_num = null;
var dest_street_num_error = null;
var dest_unit_num = null;
var dest_unit_num_error = null;

var pop_dst = null;

function initLocality()
{
	pu_sub_id = id('pu_suburb_id');
	pu_sub_id_error = id('pu_suburb_id_error');
	pu_street_id = id('pu_street_id');
	pu_street_name = id('pu_street_name');
	pu_street_id_error = id('pu_street_id_error');
	pu_street_num = id('pu_street_number');
	pu_street_num_error = id('pu_street_number_error');
	pu_unit_num = id('pu_unit_number');	
	pu_unit_num_error = id('pu_unit_number_error');	
	
	dest_sub_id = id('dest_suburb_id');
	dest_sub_id_error = id('dest_suburb_id_error');
	dest_street_id = id('dest_street_id');
	dest_street_name = id('dest_street_name');
	dest_street_id_error = id('dest_street_id_error');
	dest_street_num = id('dest_street_number');
	dest_street_num_error = id('dest_street_number_error');
	dest_unit_num = id('dest_unit_number');	
	dest_unit_num_error = id('dest_unit_number_error');	

	
	if (pu_sub_id){
		addEvent(pu_sub_id, 'change' , callGetStreets, false);
		addEvent(pu_sub_id, 'change' , doSuburbValid, false);
		addEvent(pu_street_id, 'change' , doStreetValid, false);
		addEvent(pu_street_id, 'blur' , doStreetValid, false);
			
	}

	if (dest_sub_id && dest_street_id){
		addEvent(dest_sub_id, 'change' , callGetStreets, false);
		addEvent(dest_sub_id, 'change' , doSuburbValid, false);
	}
	
	if (dest_street_id){
		addEvent(dest_street_id, 'change' , doStreetValid, false);
		addEvent(dest_street_id, 'blur' , doStreetValid, false);
	}
	

	if (typeof(form.pop_dest) != 'undefined'){
		pop_dst = form.pop_dest;
		for (i = 0; i < pop_dst.length; i++){
			addEvent(pop_dst[i], 'click', doPopDestinationClicked, false);
		}
	}
	
	if (dest_sub_id){
		addEvent(dest_sub_id, 'change' , doSuburbValid, false);
		addEvent(dest_sub_id, 'blur' , doSuburbValid, false);
		if (pop_dst != null){			
			addEvent(dest_sub_id, 'change' , deselectPopularDestinations, false);
		}
	}
}

var sub_select = null;
var sub_street_name = null;
function callGetStreets(e)
{
	sub_select = window.event ? window.event.srcElement : e ? e.target : null;
	setTimeout("getStreets()",200);
}


function getStreets()
{
	ajax_call('ca=ajax.get_streets&suburb_id=' + sub_select.value, 'showSuburbStreets');
}

function showSuburbStreets(result)
{
	eval ("var data = " + result);
	if (sub_select.name == 'pu_suburb_id'){
		pu_street_id.options.length = 0;
		for (i = 0; i < data.length; i++){
			var streetOption = new Option(data[i][1], data[i][0]);
			pu_street_id.options[pu_street_id.options.length] = streetOption;			
		}
		if (sub_select.selectedIndex > 0){
			pu_street_id.options[0].text = 'Please Select Street';			
		} else {
			pu_street_id.options[0].text = 'Select Suburb First';
		}
		pu_street_id.value = "";
		pu_street_name.value = "";
	} else if (dest_street_id){
		dest_street_id.options.length = 0;
		for (i = 0; i < data.length; i++){
			dest_street_id.options[dest_street_id.options.length] = new Option(data[i][1], data[i][0]);
		}
		if (sub_select.selectedIndex > 0){
			dest_street_id.options[0].text = 'Please Select Street';
		} else {
			dest_street_id.options[0].text = 'Select Suburb First';
		}
		dest_street_name.value = "";
	}
}

function deselectPopularDestinations(e){
	for (i = 0; i < pop_dst.length; i++){
		pop_dst[i].checked = false;
	}
}

function doSuburbValid(e)
{
	var field = window.event ? window.event.srcElement : e ? e.target : null;
	if (field.name == 'pu_suburb_id'){
		
		if (pu_sub_id.value == 0){
			pu_sub_id_error.style.display = 'block';
		} else {
			pu_sub_id_error.style.display = 'none';
		}
	} else {
		if (dest_sub_id.value == 0){
			dest_sub_id_error.style.display = 'block';
		} else {
			dest_sub_id_error.style.display = 'none';
		}
	}
	if (divpop != null && divpop.style.visibility == 'visible'){
		resizePopup(30);
	}
}

function doStreetValid(e)
{		
	var field = window.event ? window.event.srcElement : e ? e.target : null;
	if (field.name == 'pu_street_id'){
		if (pu_street_id != null){
			if (pu_street_id.value == 0){
				pu_street_name.value = '';
				pu_street_id_error.style.display = 'block';
			} else {
				pu_street_name.value = pu_street_id.options[pu_street_id.selectedIndex].text;
				pu_street_id_error.style.display = 'none';
			}
		}		
	} else {
		if (dest_street_id != null){
			if (dest_street_id.value == 0){
				dest_street_name.value = '';
				dest_street_id_error.style.display = 'block';
			} else {
				dest_street_name.value = dest_street_id.options[dest_street_id.selectedIndex].text;
				dest_street_id_error.style.display = 'none';
			}
		}
	}
	if (divpop != null && divpop.style.visibility == 'visible'){
		resizePopup(30);
	}
}

function doPopDestinationClicked(e)
{
	var field = window.event ? window.event.srcElement : e ? e.target : null;
	for (var i = 0; i < dest_sub_id.options.length; i++){

		if (dest_sub_id.options[i].value == field.value){
			dest_sub_id.options[i].selected = true;
			dest_sub_id_error.style.display = 'none';
			break;
		}
	}
}
