// JavaScript Document
var ajax_gw = 'includes/gw.ajax.php';
// INICIA OBJETO
atual=0;fila=[];ifila=0;
var xmlhttp; var CadastroInfo; var local; var acao='update'; var atualizado=false; 
try{xmlhttp=new XMLHttpRequest();}catch(ee){try{xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");}catch(e){try{xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");}catch(E){xmlhttp=false;}}}
array_request = new Object();
array_request.totalItens = 0;
array_request.index = 0;
array_request.cmb = new Array();
array_request.ra  = new Array();
array_request.pv  = new Array();
array_request.dv  = new Array();
array_request.tit = new Array();
//

function next_ajax_combo() {
	if (array_request.index < array_request.totalItens) {		
		setTimeout("preenche_combo()",20);		
	}
}

function ajax_combo(combo, remote_action, post_vars, title, default_value) {
	if (!array_request) init_ajax_combo();
	var cc = 0;
	document.getElementById(combo).length = 0;
	document.getElementById(combo).options[0] = new Option('Carregando...','');
	array_request.cmb.push(combo);
	array_request.ra.push(remote_action);
	array_request.pv.push(post_vars);
	array_request.dv.push(((!default_value || default_value=='')?(""):(default_value)));
	array_request.tit.push(title);
	array_request.totalItens++;
	if ((array_request.index+1) == array_request.totalItens || (array_request.index) == array_request.totalItens) {
		preenche_combo();
	}
}

function preenche_combo() {
	var pp = array_request.index;
	var remote_action = array_request.ra[pp];
	var post_vars 	  = array_request.pv[pp];
	var title 		  = array_request.tit[pp];
	var default_value = array_request.dv[pp];
	var cb 			  = document.getElementById(array_request.cmb[pp]);
	if (!cb) {
		alert('ComboBox Inválida !');
		array_request.index++;
		next_ajax_combo();
		return;
	}
	var str_url = ajax_gw+"?acao="+remote_action;
	if (post_vars) {
		for (var s in post_vars) {
			str_url += "&"+s+"="+post_vars[s];
		}
	}
	var sel_index = false;
	xmlhttp.open("GET", str_url, true);
	xmlhttp.onreadystatechange=function() {
        if (xmlhttp.readyState==4){
			array_request.index++;
			retorno = xmlhttp.responseText;
			dataProvider = new Function("return "+retorno)();
			if (title && title != "") {
				cb.options[0] = new Option(title,'');
			}
			if (dataProvider.totalRows < 1) {
				reset_combo(cb);
				return;
			}
			for (var i=0;i<dataProvider.totalRows;i++) {
				if (title && title != "") {
					ii = i+1;
				} else {
					ii = i;
				}
				index = dataProvider.registros[i][1];
				valor = dataProvider.registros[i][0];
				if (default_value != "") {
					if ((valor.toLowerCase() == default_value.toLowerCase()) || (index.toLowerCase() == default_value.toLowerCase())) {
						sel_index = ii;
					}
				}
				if (valor.substring(0,1)=='#') {
					cb.options[ii] = new Option(valor.substring(1,valor.length),index);
					cb.options[ii].className = 'grupo';
				} else {
					cb.options[ii] = new Option(valor,index);
				}
			}
			
			if (sel_index != false) {
				cb.selectedIndex = sel_index;
			}
			next_ajax_combo();
		}
	}
	xmlhttp.send(null);
}