/* ----- populateSelect
 * 
 * Dynamically adds options to a select field based on the value
 * selected from another select field.
 * ------------------------------------------------------------*/
function populateSelect(src_sel, targ_sel, url, field_name, indicator) {
		var targ_sel = $(targ_sel);
		var pars = field_name + '=' + src_sel.options[src_sel.selectedIndex].value;
		var indicator = $(indicator);
		
		targ_sel.innerHTML = '';
		if (indicator) { indicator.style.display=''; }
		new ajax(url, 
			{
				postBody: pars,
				onComplete: function(res) {
					var options = res.responseXML.getElementsByTagName('option');
					for (i = 0; i < options.length; i++) {
						var new_opt = document.createElement('option');
						new_opt.value = options[i].getAttribute('value');
						new_opt.innerHTML = options[i].firstChild.nodeValue;
						targ_sel.appendChild(new_opt);
					}
					if (indicator) { indicator.style.display='none'; }
				}
			});
		
	}
	

/* ----- errorAlert
 * 
 * Displays an error alert box
 * ------------------------------------------------------------*/
function errorAlert() {
	alert("Oops, an error has occurred.");
}
