// Script para a realização da Busca Instantanêa com Ajax
// Função para iniciar o Ajax no browser do cliente

function openAjax() {
    var ajax;
    try{
       // XMLHttpRequest para browsers decentes, como: Firefox, Safari, dentre outros.
       ajax = new XMLHttpRequest(); 
    }catch(ee){
        try{
            // Para o IE da MS
            ajax = new ActiveXObject("Msxml2.XMLHTTP");
        }catch(e){
            try{
                // Para o IE da MS
                ajax = new ActiveXObject("Microsoft.XMLHTTP");
            }catch(E){
                ajax = false;
            }
        }
    }
    return ajax;
}
// Função que realiza a busca instantânea e posiciona em uma div na página principal
function calculoFrete() {
    if( document.getElementById ) { // Para os browsers complacentes com o DOM W3C.
	
    var cepOrigem = document.getElementById('cepOrigem').value;
    var cepDestino = document.getElementById('cepDestino').value;
    var peso = document.getElementById('peso').value;
	var frete = document.getElementById('frete').value;
	var valu = document.getElementById('valu').value;
    // div que exibirá o resultado da busca.
    var exibeResultado = document.getElementById('result');
	var exibeFret = document.getElementById('fret');
	var exibeFrett = document.getElementById('frett');

        // Verifica se o campo não está vazio, ou se foi digitado no mínimo nove caracteres.

        if(cepOrigem != "" && cepOrigem != null && cepOrigem.length == 8) {
            // Inicia o Ajax.
            var ajax = openAjax();            

            var URL = "calcularFrete.php?frete="+frete+"&cepOrigem="+cepOrigem+"&cepDestino="+cepDestino+"&peso="+peso+"&valu"+valu;

            ajax.open("GET", URL, true);

            ajax.onreadystatechange = function() {
                // Quando estiver carregando, exibe: Calculando Frete...
                if(ajax.readyState == 1) {
                    exibeResultado.innerHTML = "Calculando Frete...";
					exibeFret.innerHTML = "Somando Valores...";
                }

                // Quando estiver tudo pronto.

                if(ajax.readyState == 4) {

                    if(ajax.status == 200) {

                        var resultado = ajax.responseText;

                        exibeResultado.innerHTML = resultado;

						resultado = resultado.replace(",",".");
						
						valu = valu.replace(",",".");
						
						var total = parseFloat(resultado) + parseFloat(valu) + "";
						
						function numberformat(num)
						{
						num="" + Math.floor(num*100.0 + 0.5)/100.0;
						
						var i=num.indexOf(".");
						
						if ( i<0 ) num+=",00";
						else {
						num=num.substring(0,i) + "," + num.substring(i + 1);
						i=(num.length - i) - 1;
						if ( i==0 ) num+="00";
						else if ( i==1 ) num+="0";
						else if ( i>2 ) num=num.substring(0,i + 3);
						}
						
						return num;
						}

						var fret = numberformat(total);
						resultado = numberformat(resultado);
						valu = numberformat(valu);

						exibeFret.innerHTML = fret + '<input name="tot" type="hidden" id="tot" value="'+fret+'" /><input name="so_frete" type="hidden" id="so_frete" value="'+resultado+'" />';
						exibeFrett.innerHTML = fret;
						} else {

                        exibeResultado.innerHTML = "Erro ao realizar a busca.";

						exibeFret.innerHTML = "Erro ao realizar a soma.";

                    }
                }
            }
            // submete
            ajax.send(null); 
        }
    }
}
