// JavaScript Document
var browser = null;

function createRequest()
{
  var request = null;
  try
  {
    request = new XMLHttpRequest();
	  browser = "other";
  }
  catch (trymicrosoft)
  {
    try
	{
      request = new ActiveXObject("Msxml2.XMLHTTP");
	  browser = "ie";
    }
	catch (othermicrosoft)
	{
      try
	  {
        request = new ActiveXObject("Microsoft.XMLHTTP");
	  browser = "ie";
      }
	  catch (failed)
	  {
        request = null;
      }
    }
  }

  if (request == null) {
    alert("Erro ao criar o objeto Ajax!");
  } else {
    return request;
  }
}

var requestEstados = createRequest();
var requestCidades = createRequest();
var requestBairros = createRequest();

function replaceText(el, text)
{
  if (el != null)
  {
    clearText(el);
    var newNode = document.createTextNode(text);
    el.appendChild(newNode);
  }
}

function clearText(el)
{
  if (el != null)
  {
    if (el.childNodes)
	{
      for (var i = 0; i < el.childNodes.length; i++)
	  {
        var childNode = el.childNodes[i];
        el.removeChild(childNode);
      }
    }
  }
}

function getText(el)
{
  var text = "";
  if (el != null)
  {
    if (el.childNodes)
	{
      for (var i = 0; i < el.childNodes.length; i++)
	  {
        var childNode = el.childNodes[i];
        if (childNode.nodeValue != null)
		{
          text = text + childNode.nodeValue;
        }
      }
    }
  }
  return text;
}

function getEstados()
{
	var estado = document.getElementById("estado").value;
	var cidade = document.getElementById("cidade").value;
	var bairro = document.getElementById("bairro").value;
	var url = "../includes/localizacao.php?estado=" + escape(estado) + "&cidade=" + escape(cidade) + "&bairro=" + escape(bairro) + "&tipo=2";
	requestEstados.open("GET", url, true);
	requestEstados.onreadystatechange = updateBusca;
	requestEstados.send(null);
}

function updateBusca()
{
	if (requestEstado.readyState == 4)
	{
		if (requestEstado.status == 200)
		{
			var EstadoContent = requestEstado.responseText;
			var EstadoDiv = document.getElementById("localizacao");
			EstadoDiv.innerHTML = EstadoContent;
		}
		else
			alert("Erro! Status de request: " + requestEstado.status);
	}
}

function getCidades()
{
	var estado = document.getElementById("estado").value;
	var url = "../includes/localizacao.php?estado=" + escape(estado) + "&tipo=1";
	requestCidades.open("GET", url, true);
	requestCidades.onreadystatechange = updateCidades;
	requestCidades.send(null);
}

function updateCidades()
{
	if (requestCidades.readyState == 4)
	{
		if (requestCidades.status == 200)
		{
			var CidadesContent = requestCidades.responseText;
			var CidadesDiv = document.getElementById("cidades");
			CidadesDiv.innerHTML = CidadesContent;
			//alert(CidadesContent);
			//limpaBairros();
			document.getElementById("bairro").value = '';
			document.getElementById("bairro").disabled = 'disabled';
		}
		else
			alert("Erro! Status de request: " + requestCidades.status);
	}
}

function limpaBairros()
{
	var url = "../includes/localizacao.php?tipo=2";
	requestBairros.open("GET", url, true);
	requestBairros.onreadystatechange = updateBairros;
	requestBairros.send(null);
}

function getBairros()
{
	var cidade = document.getElementById("cidade").value;
	var url = "../includes/localizacao.php?cidade=" + escape(cidade) + "&tipo=2";
	requestBairros.open("GET", url, true);
	requestBairros.onreadystatechange = updateBairros;
	requestBairros.send(null);
}

function updateBairros()
{
	if (requestBairros.readyState == 4)
	{
		if (requestBairros.status == 200)
		{
			var BairrosContent = requestBairros.responseText;
			var BairrosDiv = document.getElementById("bairros");
			BairrosDiv.innerHTML = BairrosContent;
		}
		else
			alert("Erro! Status de request: " + requestBairros.status);
	}
}