function limpar_form(form){
	if (confirm('Tem certeza que deseja limpar o formulário?'))
		form.reset();
}
function valida_post(form, qtd_elementos){
	qtd_total = 0;
	for( var i = 0; i < form.length; i++ ) {
	  var campo 	= form.elements[ i ];	  
	  var tipo  	= campo.getAttribute('tipo');
	  var contabiliza = campo.getAttribute('contabiliza');
	  var display	= campo.getAttribute('display');
  
	  if ( contabiliza )
		var valor 	= campo.value.replace(/^\s*|\s*$/g,"");
	  
	  if ( contabiliza == 1 ) { 
		// validação dos tipos
		if ( tipo == 'qtd' ) 
			var qtd_total = qtd_total + campo.value;
	  }		  
	}
	if (qtd_total == 0){
		alert('O Pedido deve conter pelo menos 1(um) ítem.');
		return false;
	}

	if ( soma(form) ){	
		if ( fnc_verifica_form(form) ){
			if (form.resultado.value == 'R$ 0,00'){
				if ( !confirm('Tem certeza que deseja enviar o pedido com valor R$ 0,00 ?') ){
					return false;
				}
			}
			return true;
		}
	}
	return false;
}
function calcula_total_linha(indice_linha){
	var prox_campo = parseInt(indice_linha) + 1;
	var campo_corrente = eval('document.form1.i_' + indice_linha + '.value').replace(/\./g,"").replace(/,/g,"."); 
	var qtd_corrente = eval('document.form1.q_' + indice_linha + '.value');
	
	if ( (qtd_corrente != '') && (campo_corrente != '') ){
		var total_linha = qtd_corrente * parseFloat(campo_corrente);
		var gravar_campo = transforma_real(total_linha.toFixed(2).toString().replace(/\./g,","));
		//grava no campo
		eval( 'document.form1.s_' + indice_linha + '.value = gravar_campo' );
		if (gravar_campo == '0,00')			
			eval('document.form1.i_' + indice_linha + '.value = "0,00"');
		soma(document.form1);
	} else { 
		if ( (qtd_corrente == '') && (campo_corrente == '') ){
			eval('document.form1.q_' + indice_linha + '.value = "";');
			eval('document.form1.i_' + indice_linha + '.value = "";');
			eval('document.form1.s_' + indice_linha + '.value = "";');
		}
	  }
	//eval('document.form1.q_' + prox_campo + '.focus();'); 
}

function soma(form){
	var showMessage = function( p_msg, p_campo ){ alert( p_msg ); p_campo.focus();  return false; }
	var soma = 0;
	var total_linha = 0;

	for( var i = 0; i < form.length; i++ ) {
	  var campo 	= form.elements[ i ];	  
	  var tipo  	= campo.getAttribute('tipo');
	  var contabiliza = campo.getAttribute('contabiliza');
	  var display	= campo.getAttribute('display');
  
	  if ( contabiliza )
		var valor 	= campo.value.replace(/^\s*|\s*$/g,"");
	  
	  if ( contabiliza == 1 ) { 

			//buscando o indice para chegar ao campo
			var array = campo.getAttribute('name').split('_');
			var indice = array[1];
	  
			// validação simples
			if ( !valor ) {
			   valor = 0;		
			} 
			//alert(tipo + ' ' + valor);
			// validação dos tipos
			if ( tipo == 'valor' ){
				var campo_corrente = campo.value.replace(/\./g,"").replace(/,/g,".");

				if (!qtd_corrente && campo_corrente != ''){
					alert('Informe a quantidade do ítem ' + indice);
					eval( 'form.q_' + indice + '.focus();');
					return false;
				}
				if ( (qtd_corrente != '') && (!campo_corrente || campo_corrente == '') ){
					alert('Informe o valor do ítem ' + indice);
					eval( 'form.i_' + indice + '.focus();');
					return false;
				}
				
				if ( (qtd_corrente != '') && (campo_corrente != '') ){
					var total_linha = qtd_corrente * parseFloat(campo_corrente);
					var gravar_campo = transforma_real(total_linha.toFixed(2).toString().replace(/\./g,","));
					
					//grava no campo
					eval( 'form.s_' + indice + '.value = gravar_campo');
					if (gravar_campo == '0,00')			
						campo.value = '0,00';
					soma = soma + total_linha
					total_linha = 0;							
				} else { 
					campo.value = ''; 
					eval( 'form.s_' + indice + '.value = "";');
				  }
			}	
			if ( tipo == 'qtd' ) 
				var qtd_corrente = campo.value;
	  }		  
	}
	
	var soma2 = soma.toFixed(2).toString().replace(/\./g,",")
	form.resultado.value = transforma_real(soma2);
	
	return true;
}

function verifica_numero(data) {
	var valid = "0123456789.";
	var ok = 1; var checktemp;
	for (var i=0; i<data.length; i++) {
		checktemp = "" + data.substring(i, i+1);
		if (valid.indexOf(checktemp) == "-1") return 0; 
	}
	return 1;
}
function transforma_real(valor) {
	Num = valor;
	dec = Num.indexOf(",");
	end = ((dec > -1) ? "" + Num.substring(dec,Num.length) : ",00");
	Num = "" + parseInt(Num);
	var temp1 = "";
	var temp2 = "";
	if (verifica_numero(Num) == 0) {
		alert("Valor de entrada inválido!");
	} else { 
		if (end.length == 2) end += "0";
		if (end.length == 1) end += "00";
		if (end == "") end += ",00";
		var count = 0;
		for (var k = Num.length-1; k >= 0; k--) {
			var oneChar = Num.charAt(k);
			if (count == 3) {
			temp1 += ".";
			temp1 += oneChar;
			count = 1;
			continue;
		}
	  else {
		temp1 += oneChar;
		count ++;
	  }
	}
	for (var k = temp1.length-1; k >= 0; k--) {
		var oneChar = temp1.charAt(k);
		temp2 += oneChar;
	}
	temp2 = "R$ " + temp2 + end;
	return temp2;
	}
}

