/* Ajax for zone list - base on prototype.js*/

var _stateElementId = '';
function updateStateList(countryElementId, stateElementId)
{
	var country_id = $(countryElementId).value;
	_stateElementId = stateElementId;

	var stateElement = $(_stateElementId);
	stateElement.disabled = true;

	var scrolledTop = 0;
	if (document.body.scrollTop != 'undefined' 
		&& document.body.scrollTop != null)
	{
		scrolledTop = document.body.scrollTop;
	}

	$('processBar').innerHTML = 'Getting states list...';
	$('processBar').style.visibility = 'visible';
	$('processBar').style.top = (scrolledTop + 3) + 'px';
	var url = 'getStates.php';
	var pars = 'country_id=' + country_id;
	var myAjax = new Ajax.Request(url, {method: 'get', parameters: pars, onComplete: generateStateList});
}

function generateStateList(req)
{
	var stateElement = $(_stateElementId);

	// clear
	var NumState =  stateElement.options.length;
	while(NumState > 0)
	{
		NumState--;
		stateElement.options[NumState] = null;
	}

	// generate new list
	var states = req.responseText;

	var state_arrs = states.split('*');
	var state_count = state_arrs.length;
	var n = 0;
	var tmp_state = '';
	for (var i = 0; i < state_count; i++)
	{
		if (state_arrs[i] != '')
		{
			tmp_state = state_arrs[i].split('@');
			if (tmp_state.length == 2)
			{
				stateElement.options[n] = new Option(tmp_state[0], tmp_state[1]);
				n++;
			}
		}
	}

	// hidden process bar
	stateElement.disabled = false;
	$('processBar').style.visibility = 'hidden';
	$('processBar').style.top = '3px';
}