function objXMLHttp(){
	if(window.XMLHttpRequest)
	{
		var objetoXMLHttp = new XMLHttpRequest();
		return objetoXMLHttp;
		
	} else if(window.ActiveXObject){
		
		var versoes = ["Microsoft.XMLHTTP","Msxml2.XMLHTTP","Msxml2.XMLHTTP.6.0","Msxml2.XMLHTTP.5.0","Msxml2.XMLHTTP.4.0","Msxml2.XMLHTTP.3.0","Msxml2.XMLHTTP.2.0"];
		
		for(var i=0;i < versoes.length;i++){
			try {						
				var objetoXMLHttp = new ActiveXObject(versoes[i]);
				// "return" Se for criado sai do for
				return objetoXMLHttp;
			}
			catch(ex){
				
			}
		}
		return false;														
	}	
}

function sendDadosInnerHtml(dados, retorno, arquivo){
	
	ajax = new objXMLHttp();
	
	if(ajax){
		ajax.open("POST", arquivo,true);		
		ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
		
		ajax.onreadystatechange = function(){			
			if(ajax.readyState == 4){						
				if(ajax.status == 200){																																											
					retorno.innerHTML = ajax.responseText;
					return false;
					
				} else {
					window.alert("Houve um problema");
					return false;
				}
			}
		}
		
	};
	ajax.send(dados);
	return false;
	
}

function sendDadosValue(dados, retorno, arquivo){
	
	ajaxValue = new objXMLHttp();
	
	if(ajaxValue){
		ajaxValue.open("POST", arquivo, true);		
		ajaxValue.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
		
		ajaxValue.onreadystatechange = function(){			
			if(ajaxValue.readyState == 4){						
				if(ajaxValue.status == 200){					
					retorno.value = ajaxValue.responseText;					
					return false;
					
				} else {
					window.alert("Houve um problema");
					return false;
					
				}
			}
		}
		
	};
	ajaxValue.send(dados);
	return false;
}

/*function calcFrete(){
	var dados;
	var valorFreteInnerHTML = document.getElementById("valorFrete");
	var valorFreteValue = document.getElementById("valor_frete");
	var cepDestino = document.getElementById("cepDestino").value;	
	
	valorFreteInnerHTML.innerHTML = "Calculando..."; 	
	dados = "&cepDestino="+cepDestino;
    
        ajaxFrete = new objXMLHttp();
	
	if(ajaxFrete){		
		ajaxFrete.open("POST","sys/include/Ajax/calcFrete.php",true);
		ajaxFrete.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
		
		ajaxFrete.onreadystatechange = function(){								
			if(ajaxFrete.readyState == 4){						
				if(ajaxFrete.status == 200){											
					//Resultado        	
					valorFreteInnerHTML.innerHTML = "R$ " + ajaxFrete.responseText;
					valorFreteValue.value = ajaxFrete.responseText;
					
					document.getElementById("sub").Value = "Atualizar";
					document.carrinho.submit();
					
					return false;
					
				} else {
					//window.alert("Ocorreu um erro.");
					
				}
			}
		}		
	};
	ajaxFrete.send(dados);
	return false;
    
}*/

function calcFrete(cdg_frete){
    var dados;
    var valorFreteInnerHTML = document.getElementById("valorFrete");
    var valorFreteValue = document.getElementById("valor_frete");
    var cepDestino = document.getElementById("cepDestino").value;
    
    valorFreteInnerHTML.innerHTML = "Calculando...";
    dados = "&cepDestino="+cepDestino+"&cdg_frete="+cdg_frete;

    ajaxFrete = new objXMLHttp();

    if(ajaxFrete){
            ajaxFrete.open("POST","sys/include/Ajax/calcFrete.php",true);
            ajaxFrete.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");

            ajaxFrete.onreadystatechange = function(){
                    if(ajaxFrete.readyState == 4){
                            if(ajaxFrete.status == 200){
                                    //Resultado
                                    valorFreteInnerHTML.innerHTML = ajaxFrete.responseText;
                                    valorFreteValue.value = ajaxFrete.responseText;

                                    document.getElementById("sub").Value = "Atualizar";
                                    document.carrinho.submit();

                                    return false;

                            } else {
                                    //window.alert("Ocorreu um erro.");

                            }
                    }
            }
    };
    ajaxFrete.send(dados);
    return false;

}

function getCidades(id_estado, returnSel, retorno, valida){	
	var ajaxGetCidades, dados;
	var id_estado = document.getElementById(id_estado);
	
	if(!retorno){
		var hidenCid  = document.getElementById('hidenCid');
		var returnMysql = "hidenCid";
		
	} else {
		var hidenCid  = document.getElementById(retorno);
		var returnMysql = retorno;
		
	}
		
	if(!returnSel && id_estado.value){
		document.getElementById("cidades").innerHTML = "Carregando...";
		
	} else if(id_estado.value) {							
		document.getElementById(returnSel).innerHTML = "Carregando...";
		
	}		
	
	if(id_estado.value){
		ajaxGetCidades = new objXMLHttp();
		
		dados="&id_estado="+id_estado.value+"&id_cidade="+hidenCid.value+"&valida="+valida+"&returnMysql="+returnMysql;				
		
		if(ajaxGetCidades){
			
			ajaxGetCidades.open("POST","sys/include/Ajax/cidades.php",true);
			ajaxGetCidades.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
			
			ajaxGetCidades.onreadystatechange = function(){								
				if(ajaxGetCidades.readyState == 4){						
					if(ajaxGetCidades.status == 200){
						if(!returnSel){
							document.getElementById("cidades").innerHTML = ajaxGetCidades.responseText;												
							
						} else {							
							document.getElementById(returnSel).innerHTML = ajaxGetCidades.responseText;
							
						}
						
						return false;
						
					} else {
						//window.alert("Ocorreu um erro.");
						
					}
				}
			}		
		};
		
		ajaxGetCidades.send(dados);
		return false;
		
	}	
}

/******************* Funções do Treeview *********************/
var AjaxTree = new Object();

function RequestTree(url, callbackMethod){
	
	AjaxTree.request = objXMLHttp();
	AjaxTree.request.onreadystatechange = callbackMethod;
	AjaxTree.request.open("POST", url, true);
	AjaxTree.request.send(url);
	
}

function CheckReadyState(obj){	
	
	if( obj.readyState == 4 ){
		if(obj.status == 200){			
			return true;
				
		} else {
			document.getElementById('tree1').innerHTML = "HTTP " + obj.status;
			
		}
	}
}

function getCategoria(id, tipo){
	var dados;
	/* Obtendo o nome da Categoria  selecionada */
	dados = "acao=1&id_categoria="+id+"&tipo="+tipo;
	document.getElementById("subcategoria").value=id;		
	
	sendDadosValue(dados, document.getElementById('categoria'), "sys/include/Ajax/getCategoria.php");
	
}

/******************* Fim Funções do Treeview *********************/
