function ValidarAjax() {  // Função para validação e ativação do AJAX de acordo com Browser
	
	try {
	 ajax = new ActiveXObject("Microsoft.XMLHTTP");
	} 
	catch(e) {
		 try {
		   ajax = new ActiveXObject("Msxml2.XMLHTTP");
		 }
		catch(ex) {
		 try {
			   ajax = new XMLHttpRequest();
			}
		catch(exc) {
		   alert("Esse browser não tem recursos para uso do Ajax. Instale uma versão mais recente. Ou utilize outro browser.");
		   ajax = null;
			}
		 }
	  }
}
	
function soNums(e,args) {        
	// Função que permite apenas teclas numéricas e 
	// todos os caracteres que estiverem na lista
	// de argumentos.
	// Deve ser chamada no evento onKeyPress desta forma
	//  onKeyPress ="return (soNums(event,'(/){,}.'));"
	// caso queira apenas permitir caracters

	if (document.all){var evt=event.keyCode;} // caso seja IE
	else{var evt = e.charCode;}    // do contrário deve ser Mozilla
	var chr= String.fromCharCode(evt);    // pegando a tecla digitada
	// Se o código for menor que 20 é porque deve ser caracteres de controle
	// ex.: <ENTER>, <TAB>, <BACKSPACE> portanto devemos permitir
	// as teclas numéricas vão de 48 a 57
	if (evt <20 || (evt >47 && evt<58) || (args.indexOf(chr)>-1 ) ){return true;}
	return false;
}

function Mascarar(preco){ // troca o ponto por virgula e adiciona pontos de separacao -> 1.000.000,00
	var precoinverso="";
	for (i=preco.length-1;i>=0;i--) { // inverte o preço
		precoinverso+=preco.charAt(i);
	}
	if (precoinverso.charAt(2)==".") {
		meio=precoinverso.substring(0,2) + ","; 
		j = 3;
	} else if (precoinverso.charAt(1)==".") {
		meio="0"+precoinverso.substring(0,1) + ",";
		j = 1;
	} else {
		meio="00,";
		j = 0;
	}
	for (i=j;i<=precoinverso.length;i++) {
		meio+=precoinverso.substring(i,i+3);
		i+=2;
		if (i<precoinverso.length) {
		   meio+=".";    
		}
	}
	if (meio.charAt(meio.length-1)==".") { meio=meio.substring(0,meio.length-1);}
	preco="";   
	for (i=meio.length-1;i>=0;i--) { //desinverte o preço
		preco+=meio.charAt(i); 
	}
	return preco;
}

function DesMascarar(preco) { // tira os pontos e troca a virgula por ponto.
	var novopreco="";
	for (i=0;i<preco.length;i++) {
		if (preco.charAt(i)!=".") {
			novopreco+=preco.charAt(i);
		}
	}
	novopreco = novopreco.substring(0,novopreco.indexOf(",")) + "." + novopreco.substring(novopreco.indexOf(",")+1,novopreco.length);
	return novopreco;
}
	
	
function add_copia(cod_foto, indice) {
	// Adiciona cópia da foto ao carrinho
	window.location = "http://www.noflagra.com/add_copia_carrinho.php?cod_foto=" + cod_foto + "&indice=" + indice;
}

function visualizar_foto(indice, cod_foto, leng) {
	 window.open('http://www.noflagra.com/mostra_foto_carrinho.php?indice=' + indice + "&cod_foto=" + cod_foto + "&length=" + leng,'page','toolbar=no,location=no,status=no,menubar=no,scrollbars=no,resizable=no,width=555,height=590');  
}

function copiar_configs(indice) {
	var conf = confirm("Tem certeza que deseja copiar as configurações desta foto para todas as outras fotos no carrinho?");
	if (conf)
		window.location = 'http://www.noflagra.com/copia_configs_carrinho.php?indice=' + indice;  		
}

function excluir_foto(indice) {
	// Exclui foto do carrinho
	window.location = "http://www.noflagra.com/excluir_foto_carrinho.php?indice=" + indice;
}

function altera_foto(chave,indice,valor) {
	ValidarAjax();
	if(ajax) {
		ajax.open("POST", 'altera_foto_carrinho.php', true);
		ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

		ajax.onreadystatechange = function() {
			if(ajax.readyState == 1 ) {	} 
			if(ajax.readyState == 4 ) { 
				var res = eval ("(" + ajax.responseText + ")");
				document.getElementById('preco_foto_'+indice).innerHTML = Mascarar(parseFloat(res.novo_preco).toFixed(2));
				document.getElementById('preco_total').innerHTML = Mascarar(parseFloat(res.preco_total).toFixed(2));
			}
		}
		
		ajax.send('chave=' + chave + "&valor=" + valor + "&indice=" + indice);
	}
}