function handleHttpResponse() {
	campo_select = global;
	if(http.readyState == 4) {
		campo_select.options.length = 0;
		results = unescape(http.responseText);
		results = results.replace(/\+/g," ");
		results = results.split("#");
		for( i = 0; i < results.length; i++ ) {
			string = results[i].split( "|" );
			campo_select.options[i] = new Option( string[0], string[1] );
			campo_select.options[0].selected = true;
		}
	}
}

function RemoveGroups(objSelect) {
	var optGrps = objSelect.getElementsByTagName("OPTGROUP")
	while(optGrps.length>0) {
		objSelect.removeChild(optGrps[0])
	}
}

function handleHttpResponse2() {
	campo_select1 = global1;
	campo_select2 = global2;
	campo_select3 = global3;
	if(http.readyState == 4) {
		results = unescape(http.responseText);
		results = results.replace(/\+/g," ");
		results = results.split("#");
		carrega_combo(results, campo_select1);
		carrega_combo(results, campo_select2);
		carrega_combo(results, campo_select3);
	}
}

function carrega_combo(results, campo_select) {
	campo_select.options.length = 0;
	RemoveGroups(campo_select);
	var area_aux;
	area = false;
	for( i = 0; i < results.length; i++ ) {
		string = results[i].split( "|" );
		if(string[0]=="") {
			area = false;	
		}else {
			if(area_aux != string[0]) {
				if(area) {
					campo_select.appendChild(optGroup)
				}
				area_aux = string[0];

				optGroup = document.createElement('optgroup');
				optGroup.label = string[0];
				
				area = true;
			}				
		}
		objOption=document.createElement("option");
		if(string[2] == undefined) {
			objOption.innerHTML = '';
			objOption.value = '';
			objOption.title = '';
		}else {
			objOption.innerHTML = string[2];
			objOption.value = string[1];
			objOption.title = string[2];
		}
		if(area) optGroup.appendChild(objOption)
		else {
			campo_select.appendChild(objOption)
		}
	}
	if(area) {
		campo_select.appendChild(optGroup)
	}
}

function getHTTPObject() {
	var xmlhttp;
	/*@cc_on
	@if (@_jscript_version >= 5)
		try {
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
		try {
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {
			xmlhttp = false;
		}
	}
	@else
		xmlhttp = false;
	@end @*/
	if(!xmlhttp && typeof XMLHttpRequest != 'undefined') {
		try {
			xmlhttp = new XMLHttpRequest();
		} catch (e) {
			xmlhttp = false;
		}
	}
	return xmlhttp;
}
var http = getHTTPObject();
