function alterarItem(id) {
	var c = document.getElementById("sc").value;
	valor = document.getElementById("qtde_"+id).value;
	if (document.getElementById("lb_frete"))	{
		document.getElementById("lb_frete").innerHTML = "&nbsp;";
	}
	if (document.getElementById("vl_frete")) {
		document.getElementById("vl_frete").innerHTML = "&nbsp;";
	}
	if (document.getElementById("lb_local")) {
		document.getElementById("lb_local").innerHTML = "&nbsp;";
	}
	if (document.getElementById("lb_prazo")) {
		document.getElementById("lb_prazo").innerHTML = "&nbsp;";
	}
	ajax = ajaxInit();
	if(ajax) {
		 ajax.open("GET", "lib/?l=qtdeItem&item=" + id + "&q=" + valor, true);
		 ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		 ajax.onreadystatechange = function() {
			document.body.style.cursor = 'wait';  
			if(ajax.readyState == 4 ) {	
			   if(ajax.responseXML) {
				  alterarItemXML(ajax.responseXML);
				  updateFrete(c);
				  document.body.style.cursor = 'default';
			   }
			}
		 }
		 ajax.send(null);
	}
	else {
		window.location = '?l=carrinho&editItem=' + id + '&qtdeItem=' + valor;
	}
	return false;

}

function alterarItemXML(obj){

	var dataArray   = obj.getElementsByTagName("item");
	if(dataArray.length > 0) {
		for(var i = 0 ; i < dataArray.length ; i++) {
			var item = dataArray[i];
			var codigo      =  item.getElementsByTagName("codigo")[0].firstChild.nodeValue;
			var qtde        =  item.getElementsByTagName("qtde")[0].firstChild.nodeValue;
			var valor       =  item.getElementsByTagName("valor")[0].firstChild.nodeValue;
			var valor_total =  item.getElementsByTagName("valor_total")[0].firstChild.nodeValue;
			var total       =  item.getElementsByTagName("total")[0].firstChild.nodeValue;
			var aviso       =  item.getElementsByTagName("aviso")[0].firstChild.nodeValue;
			if (item.getElementsByTagName("minima")[0].firstChild)  {
				var minima	    =  item.getElementsByTagName("minima")[0].firstChild.nodeValue;
			}
			if (item.getElementsByTagName("not")[0].firstChild)  {
				var not		=  item.getElementsByTagName("not")[0].firstChild.nodeValue;
			}

			if (qtde!='indisponivel') {
		
				document.getElementById("lb_vlr_"+ codigo).innerHTML = valor;
				document.getElementById("lb_tot_"+ codigo).innerHTML = valor_total;
				document.getElementById("total_pedido").value = total;

				if (document.getElementById("min")){
					document.getElementById("min").value = minima;
				}
				if (document.getElementById("not")){
					document.getElementById("not").value = not;
				}
				if (aviso != 'N') {
					document.getElementById("qtde_"+ codigo).value = aviso;
					alert('Garantimos apenas '+ aviso +' unidades do produto!');
				}
			}
			else {
				document.getElementById("qtde_"+ codigo).value = valor;
				alert('Produto indiponível no momento!');
			}
		}
	}

}

function atualizaTotal() {

	ajax = ajaxInit();
	if(ajax) {
		ajax.open("GET", "lib/?l=atualizaTotal", true);
		ajax.onreadystatechange = function() {
			document.body.style.cursor = 'wait';  
			if(ajax.readyState == 4) {
				if(ajax.status == 200) {
					var total = ajax.responseText;
					if (total != "") {
						document.getElementById("vl_total").innerHTML = "&nbsp;";
						document.getElementById("vl_total").innerHTML = "R$ " + ajax.responseText;
					}
					else {
						document.getElementById("vl_total").innerHTML = "&nbsp;";
						document.getElementById("vl_total").innerHTML = "R$ 0,00";

					}
				} 
				document.body.style.cursor = 'default';  
			}
		}
		ajax.send(null);
	}
}

function removerItem(id) {

	var c = document.getElementById("sc").value;

	ajax = ajaxInit();
	if(ajax) {
		ajax.open("GET", "lib/?l=removerItem&item=" + id, true);
		ajax.onreadystatechange = function() {
			document.body.style.cursor = 'wait';  
			if(ajax.readyState == 4) {
				if(ajax.status == 200) {
					if (ajax.responseText != "") {
						document.getElementById("qtde_" + id).value = 0;
						document.getElementById("idProduto_" + id).value = 0;
						document.getElementById("rp_" + id).style.visibility="hidden";
						document.getElementById("rp_" + id).style.display="none"; 
						document.getElementById("total_pedido").value = ajax.responseText;

						updateFrete(c);
						atualizaTotal()
					}
					document.body.style.cursor = 'default';  
				}
			}
		}
		ajax.send(null);
	}
	else {
		window.location = '?l=carrinho&remItem=' + id;
	}
	return false;
}

function updateFrete(c) {
	if (c) {
		atualizaTotal();
	}
	else {
		cep = document.getElementById('cep_a').value + document.getElementById('cep_b').value;
		tipo_frete = document.getElementById('tipo_frete').value;
		calcularFrete(cep, tipo_frete);
	}
}

function freteXML(obj){

	var dataArray   = obj.getElementsByTagName("frete");
	document.getElementById("lb_local").innerHTML = "";
	document.getElementById("vl_frete").innerHTML = "&nbsp;";
	document.getElementById("lb_prazo").innerHTML = "";
	document.getElementById("lb_frete").innerHTml = "&nbsp;";
	if(dataArray.length > 0) {
		for(var i = 0 ; i < dataArray.length ; i++) {
			var frete = dataArray[i];
			var local     =  '';
			var valor     =  '';
			var prazo     =  '';
			var total     =  '';

			if (frete.getElementsByTagName("local")[0].firstChild)  {
				var local =  frete.getElementsByTagName("local")[0].firstChild.nodeValue;
			}
			if (frete.getElementsByTagName("valor")[0].firstChild)  {
				var valor =  frete.getElementsByTagName("valor")[0].firstChild.nodeValue;
			}
			if (frete.getElementsByTagName("prazo")[0].firstChild)  {
				var prazo =  frete.getElementsByTagName("prazo")[0].firstChild.nodeValue;
			}
			if (frete.getElementsByTagName("total")[0].firstChild)  {
				var total =  frete.getElementsByTagName("total")[0].firstChild.nodeValue;
			}

			if (document.getElementById("lb_frete"))	{
				document.getElementById("lb_frete").innerHTML = "Frete:";
			}
			if (document.getElementById("vl_frete")) {
				document.getElementById("vl_frete").innerHTML = valor;
			}
			if (document.getElementById("lb_local")) {
				document.getElementById("lb_local").innerHTML = local;
			}
			if (document.getElementById("lb_prazo")) {
				document.getElementById("lb_prazo").innerHTML = prazo;
			}
			document.getElementById("vl_total").innerHTML = "&nbsp;";
			document.getElementById("vl_total").innerHTML = "R$ " + total;

		}
	}
}

function calcularFrete(cep,tipo) {
	if (cep != "" && tipo != "") {
		ajax = ajaxInit();
		if(ajax) {
			ajax.open("GET", "lib/?l=frete&cep=" + cep + "&tipo=" + tipo, true);
			ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			ajax.onreadystatechange = function() {
				document.body.style.cursor = 'wait';  
				if(ajax.readyState == 4 ) {
					if(ajax.responseXML) {
						freteXML(ajax.responseXML); 
						document.body.style.cursor = 'default';
					}
				}
			}
			ajax.send(null);
		}
		else {
			window.location = '?l=carrinho&calcFrete=' + cep + '&t=' + tipo;
		}
	}
	else atualizaTotal();
	return false;
}
