function getY( oElement ){
    var iReturnValue = 0;
    while( oElement != null ) {
        iReturnValue += oElement.offsetTop;
        oElement = oElement.offsetParent;
    }
return iReturnValue;
}

function getX( oElement ){
var iReturnValue = 0;
    while( oElement != null ) {
        iReturnValue += oElement.offsetLeft;
        oElement = oElement.offsetParent;
    }
return iReturnValue;
}


var metodoAjax = 'GET';
var Altura_dos_Elementos = 21;

function CreateAjax (){
  if (document.getElementById) {
    return (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
  }
return false;
}

function preencherDados(url,id) {
var x = CreateAjax();

  if (x) {
  el = document.getElementById(id);

    x.onreadystatechange = function() {
	  if(x.readyState == 1) { // Quando estiver carregando, exibe: carregando...
			el.value = "<center>Carregando...</center>";
	  }
      if (x.readyState == 4 && x.status == 200) {
		el.value = x.responseText;
      }
    }
    x.open(metodoAjax, url, true);
    x.send(null);
  }
}

function ajaxLoader(url,id) {
var x = CreateAjax();

  if (x) {
  el = document.getElementById(id);
  
    x.onreadystatechange = function() {
	  if(x.readyState == 1) { // Quando estiver carregando, exibe: carregando...
			el.innerHTML = "";
	  }
      if (x.readyState == 4 && x.status == 200) {
		el.innerHTML = x.responseText;
		if (el.style.display != 'inline') {el.style.display = 'inline'};
      }
    }
    x.open(metodoAjax, url, true);
    x.send(null);
  }
}

function carregarDIV(url,id) {
var x = CreateAjax();

  if (x) {
  el = document.getElementById(id);
  
    x.onreadystatechange = function() {
	  if(x.readyState == 1) { // Quando estiver carregando, exibe: carregando...
            el.innerHTML = "Carregando...";
	  }

          if (x.readyState == 4 && x.status == 200) {
            //el.innerHTML = x.responseText;		
            alert (x.reponseText);
          }
    }
    x.open(metodoAjax, url, true);
    x.send(null);
  }
}


function Listar(url, tabela, coluna, campo_where, val_campo_where, order, campo_solicitante, id){
el = document.getElementById(id);

var itens = campo_solicitante.split(',');

elbase = document.getElementById(itens[0]);
var TESTE = elbase.value.indexOf('#');

if (TESTE>=0){
	elbase.value=''; return;
}

if (val_campo_where==''){
el.style.display='none';			
	for (i=0;i<itens.length;i++){
		document.getElementById(itens[i]).value='';
	}
	return false;
}
else{
		
	el.style.left = getX(elbase);
	el.style.top  = getY(elbase) + Altura_dos_Elementos;
	var str = elbase.clientWidth.toString();	

	if (true) {
		el.style.width = parseInt(str)+3;
	}
	else {
		el.style.width = parseInt(str)+4;
	}

    ajaxLoader (url+'?tabela='+tabela+'&coluna='+coluna+'&campo_where='+campo_where+'&val_campo_where='+val_campo_where+'&order='+order+'&cmp_sol='+campo_solicitante+'&el='+id,id);
return true;
}
}


function Esconder (id){
	el = document.getElementById(id);
	el.style.display='none';
}

function limparCombo (idCombo, limite){
var combo = document.getElementById(idCombo);
	while (combo.length>limite) {
		combo.options[combo.length-1] = null;
	}
}

function addItem (idCombo, value, text){
	var combo = document.getElementById(idCombo);
	var opt = new Option(text, value);
	combo.options[combo.length] = opt;
}


function loadCombo (arq, sql, idCombo){
var x = CreateAjax();
limparCombo (idCombo,1);

  if (x) {
    x.onreadystatechange = function() {
		
	  	if (x.readyState == 4 && x.status == 200) {		  		  
		  var xmlRes = x.responseXML;
		  var itens = xmlRes.getElementsByTagName('item');
		  var itCnt = itens.length;
	
			if (itCnt > 0){
				for (i=0; i<itCnt; i++){
					value = itens[i].getAttribute("value");
					text = itens[i].getAttribute("text");
					addItem (idCombo, value, text);
				}
			}		
      	}		  
	}
	url = arq+'&sql='+sql;		
	x.open(metodoAjax, url, true);
    x.send(null);
  }	
  else {
	  alert ('Não foi possível criar um conexao com o servidor!');
  }
}


function loadListBox (arq, sql, idCombo){
var x = CreateAjax();

limparCombo (idCombo,0);

  if (x) {
    x.onreadystatechange = function() {
		
	  	if (x.readyState == 4 && x.status == 200) {		  		  
		  var xmlRes = x.responseXML;
		  var itens = xmlRes.getElementsByTagName('item');
		  var itCnt = itens.length;
	
			if (itCnt > 0){
				for (i=0; i<itCnt; i++){
					value = itens[i].getAttribute("value");
					text  = itens[i].getAttribute("text");	
					addItem (idCombo, value, text);
				}
			}		
      	}		  
	}
	url = arq+'&sql='+sql;			
	x.open(metodoAjax, url, true);
    x.send(null);
  }	
  else {
	  alert ('Não foi possível criar um conexao com o servidor!');
  }
}

