
//------------------------------------------------------------------------
function GetXmlHttpObject() {
  var xmlHttp = null;
  try {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
  } catch (e) {
    // Internet Explorer
    try {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
  return xmlHttp;
}
//------------------------------------------------------------------------
function select_clear(obj) {
  while(obj.length > 0)
    obj.remove(obj.length-1);
  select_add(obj, "", "-- Selecione --");
}

//------------------------------------------------------------------------
function select_add(obj, value, text) {
  var option = document.createElement("option");
  option.value = value;
  option.text = text;
  try {
    obj.add(option, null); // Other
  } catch(e) {
    obj.add(option); // IE Only
  }
}

//------------------------------------------------------------------------
function js_get_categorias(obj) {
  var id_categoria = document.getElementById("id_categoria");
  var id_subcategoria = document.getElementById("id_subcategoria");

  if(obj.value != ""){

  var xmlHttp = GetXmlHttpObject();
  if(xmlHttp==null) {
    alert("Este Navegador não suporta AJAX!")
    return false;
  }
  var url = "../ajax/get_categorias.php";
  url = url + "?id_grupo=" + obj.value;
  url = url + "&sid=" + Math.random();
  xmlHttp.onreadystatechange = function() {
    if (xmlHttp.readyState==4) {
	    select_clear(id_categoria);
	    select_clear(id_subcategoria);

      var response = xmlHttp.responseText;
      var items = response.split("\r\n");
      for(var i=0; i < items.length; i++) {
        var item = items[i].split(",");
        if(item[1]!=undefined)
          select_add(id_categoria, item[0], item[1]);
      }
    }
  };
  try {
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
  } catch(e) {
    alert(url + " não pode ser acessada!");
  }
  }else{
	select_clear(id_categoria);
	select_clear(id_subcategoria);
  }
}

function js_get_sub_categorias() {
  var id_grupo = document.getElementById("id_grupo");
  var id_categoria = document.getElementById("id_categoria");
  var id_subcategoria = document.getElementById("id_subcategoria");

  if(id_categoria.value != ""){
  var xmlHttp = GetXmlHttpObject();
  if(xmlHttp==null) {
    alert("Este Navegador não suporta AJAX!")
    return false;
  }
  var url = "../ajax/get_subcategorias.php";
  url = url + "?id_categoria=" + id_categoria.value;
  url = url + "&sid=" + Math.random();
  xmlHttp.onreadystatechange = function() {
    if (xmlHttp.readyState==4) {
	    select_clear(id_subcategoria);
      var response = xmlHttp.responseText;

      var items = response.split("\r\n");
      for(var i=0; i < items.length; i++) {
        var item = items[i].split(",");
        if(item[1]!=undefined)
          select_add(id_subcategoria, item[0], item[1]);
      }
    }
  };
  try {
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
  } catch(e) {
    alert(url + " não pode ser acessada!");
  }
  }else{
	select_clear(id_subcategoria);  
  }
}

function saveLegend(id_foto) {

  var nm_alt_legenda = getRefToDiv("nm_alt_legenda_"+id_foto).value;

  var xmlHttp = GetXmlHttpObject();
  if(xmlHttp==null) {
    alert("Este Navegador não suporta AJAX!")
    return false;
  }
  var url = "../ajax/save_legend.php";
  url = url + "?id_foto=" + id_foto;
  url = url + "&nm_alt_legenda=" + nm_alt_legenda;

  url = url + "&sid=" + Math.random();
  xmlHttp.onreadystatechange = function() {
    if (xmlHttp.readyState==4) {

      var response = xmlHttp.responseText;

    }
  };
  try {
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
  } catch(e) {
    alert(url + " não pode ser acessada!");
  }
}

function saveMiniatura(id_foto){
  var xmlHttp = GetXmlHttpObject();
  if(xmlHttp==null) {
    alert("Este Navegador não suporta AJAX!")
    return false;
  }
  var url = "../ajax/save_miniatura.php";
  url = url + "?id_foto=" + id_foto;

  url = url + "&sid=" + Math.random();
  xmlHttp.onreadystatechange = function() {
    if (xmlHttp.readyState==4) {

      var response = xmlHttp.responseText;

    }
  };
  try {
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
  } catch(e) {
    alert(url + " não pode ser acessada!");
  }
}


function getRefToDiv(divID) {   
    if( document.layers ) { //Netscape layers   
        return document.layers[divID]; }   
    if( document.getElementById ) { //DOM; IE5, NS6, Mozilla, Opera   
        return document.getElementById(divID); }   
    if( document.all ) { //Proprietary DOM; IE4   
        return document.all[divID]; }   
    if( document[divID] ) { //Netscape alternative   
        return document[divID]; }   
    return false;   
}


function nameGrupoVerificator(obj){

  var xmlHttp = GetXmlHttpObject();
  if(xmlHttp==null) {
    alert("Este Navegador não suporta AJAX!")
    return false;
  }
  var url = "../ajax/name_grupo_verificator.php";
  var tabela = "tab_grupo";
  var campo = "nm_grupo";
  var id_grupo = getRefToDiv("id_grupo").value;

  url = url + "?new_name=" + obj.value;
  url = url + "&id_grupo=" + id_grupo;

  url = url + "&sid=" + Math.random();
  xmlHttp.onreadystatechange = function() {
    if (xmlHttp.readyState==4) {

      var response = xmlHttp.responseText;
	  
	  var result = response.split("|");

	  if(result[1] == ""){
		obj.className = "text_alert";
	    getRefToDiv("valid").innerHTML = "É Necessário um nome!";
	  }else if(result[1] == "OFF"){
	    obj.className = "text_alert";
	    getRefToDiv("valid").innerHTML = "Esse diretório já existe!";
	  }else if(result[1] == "ON"){
		  obj.className = "text3";
		  getRefToDiv("valid").innerHTML = "";
	  }

    }
  };
  try {
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
  } catch(e) {
    alert(url + " não pode ser acessada!");
  }
}

function nameCategoriaVerificator(){

  var xmlHttp = GetXmlHttpObject();
  if(xmlHttp==null) {
    alert("Este Navegador não suporta AJAX!")
    return false;
  }
  var url = "../ajax/name_categoria_verificator.php";
  var tabela = "tab_categoria";
  var nm_categoria = getRefToDiv("nm_categoria");
  var id_categoria = getRefToDiv("id_categoria").value;
  var id_grupo = getRefToDiv("id_grupo").value;


  url = url + "?new_name=" + nm_categoria.value;
  url = url + "&id_grupo=" + id_grupo;
  url = url + "&id_categoria=" + id_categoria;
  url = url + "&sid=" + Math.random();

  xmlHttp.onreadystatechange = function() {
    if (xmlHttp.readyState==4) {

      var response = xmlHttp.responseText;
	  
	  var result = response.split("|");

	  if(result[1] == ""){
		nm_categoria.className = "text_alert";
	    getRefToDiv("valid").innerHTML = "É Necessário um nome!";
	  }else if(result[1] == "G"){
	    nm_categoria.className = "text_alert";
	    getRefToDiv("valid").innerHTML = "Escolha um grupo!";
		getRefToDiv("id_grupo").focus();
	  }else if(result[1] == "OFF"){
	    nm_categoria.className = "text_alert";
	    getRefToDiv("valid").innerHTML = "Esse diretório já existe!";
	  }else if(result[1] == "ON"){
		  nm_categoria.className = "text3";
		  getRefToDiv("valid").innerHTML = "";
	  }

    }
  };
  try {
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
  } catch(e) {
    alert(url + " não pode ser acessada!");
  }
}


function getRegioesBairros(obj, dir){

  var xmlHttp = GetXmlHttpObject();
  if(xmlHttp==null) {
    alert("Este Navegador não suporta AJAX!")
    return false;
  }
  var url = dir + "/ajax/get_regioes_bairros.php";

  url = url + "?id_grupo=" + obj.value;

  url = url + "&sid=" + Math.random();
  xmlHttp.onreadystatechange = function() {
    if (xmlHttp.readyState==4) {

      var response = xmlHttp.responseText;

	  var result = response.split("###");

	  if(result[1] != ""){

	  var lista_ids = result[0].split("@@@");
	  var lista_names = result[1].split("@@@");

	  var text = "";
	  
	  for(i=0; i < lista_ids.length; i++){

	    var lista_ids_sub = lista_ids[i].split("|");
	    var lista_names_sub = lista_names[i].split("|");

		var lista_ids_cat = lista_ids_sub[1].split(";");
		var lista_names_cat = lista_names_sub[1].split(";");
		
		var total_subs = lista_ids_cat.length;
		
		  text += "<input type='checkbox' name='cats[]' id='cat_"+ lista_ids_sub[0] +"' title='"+total_subs+"' value='" + lista_ids_sub[0] + "' onclick='checkFilhos(this)' /><strong> " + lista_names_sub[0] + "</strong><br />";
		
		for(c=0; c < lista_ids_cat.length; c++){
			if(lista_ids_cat[c] != "")
			  text += "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type='checkbox' name='subs[]' title='"+lista_ids_sub[0]+"' id='sub_" + lista_ids_sub[0] + "_" + c + "' value='" + lista_ids_cat[c] + "' onclick='checkPai(this)'; /> " + lista_names_cat[c] + "<br />";
			
		}
		  text += "<br />";
	  
	  }

	  getRefToDiv("divBuscaRegiaoBairro").innerHTML = text;
	  
	  }

    }
  };
  try {
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
  } catch(e) {
    alert(url + " não pode ser acessada!");
  }
}

function openDiv(){
  if(getRefToDiv("divBuscaRegiaoBairro").innerHTML != "")
    getRefToDiv("divBuscaRegiaoBairro").style.display = "block";
}

function closeDiv(){
  getRefToDiv("divBuscaRegiaoBairro").style.display = "none";
}

function checkPai(obj){
	var pai = obj.title;
	
	if(obj.checked){
	  getRefToDiv("cat_"+obj.title).checked='checked';
	}else{
	  var total_subs = getRefToDiv("cat_"+pai).title;
	  var check = 0;
	  for(i=0; i < total_subs; i++){
		  if(getRefToDiv("sub_" + pai + "_" + i).checked)
		    check = 1;
	  }
	  if(check == 0)
	    getRefToDiv("cat_"+obj.title).checked='';
	}
}

function checkFilhos(obj){
	for(i=0; i < obj.title; i++){
	  if(obj.checked){
	    if(getRefToDiv("sub_" + obj.value + "_" + i))
	      getRefToDiv("sub_" + obj.value + "_" + i).checked='checked';
	  }else{
		if(getRefToDiv("sub_" + obj.value + "_" + i))
	      getRefToDiv("sub_" + obj.value + "_" + i).checked='';
	  }
	}
	
}
