﻿
function f_valor_maximo(el) {
	
	h = document.getElementById('h_valor_maximo');
	d = document.getElementById('valor_maximo');
	v = converteMoedaFloat(el.value) * 0.02;
	h.value = number_format(v, 2, ',', '.');
	d.innerHTML = h.value
}

function valida_forma_doaces() {
	
	lucro  = document.getElementById('lucro_op');
	maximo = document.getElementById('h_valor_maximo');
	doacao = document.getElementById('valor_doacao');

	lucro_f  = converteMoedaFloat(lucro.value);
	maximo_f = converteMoedaFloat(maximo.value);
	doacao_f = converteMoedaFloat(doacao.value);
	
	if(lucro_f <= 1) {
		alert("Informe o Lucro Operacional");
		return false;
	}
	if(doacao_f <= 1) {
	    alert("Informe o valor da Doação");
		return false;
	}
	if (doacao_f > maximo_f){
		alert("O valor máximo de sua doação deve ser menor que R$ " + maximo.value)
		document.form.valor_maximo.focus()
		return false
	}

    document.getElementById('form_doacao').submit();
}












function replaceAll(str, de, para){
    var pos = str.indexOf(de);
    while (pos > -1){
		str = str.replace(de, para);
		pos = str.indexOf(de);
	}
    return (str);
}

function converteMoedaFloat(valor){
	
	if(valor === "") {
		valor =  0;
	} else {
		valor = replaceAll(valor ,"." , "");
		valor = replaceAll(valor ,"," , ".");
		valor = parseFloat(valor);
	}
	return valor;
}

function currencyFormat(fld, milSep, decSep, e) {
	var sep = 0;
	var key = '';
	var i = j = 0;
	var len = len2 = 0;
	var strCheck = '0123456789';
	var aux = aux2 = '';
	var whichCode = (window.Event) ? e.which : e.keyCode;
	if (whichCode == 13) return true; 
	key = String.fromCharCode(whichCode);  
	if (strCheck.indexOf(key) == -1) return false; 
	len = fld.value.length;
	for(i = 0; i < len; i++)
	if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep)) break;
	aux = '';
	for(; i < len; i++)
	if (strCheck.indexOf(fld.value.charAt(i))!=-1) aux += fld.value.charAt(i);
	aux += key;
	len = aux.length;
	if (len == 0) fld.value = '';
	if (len == 1) fld.value = '0'+ decSep + '0' + aux;
	if (len == 2) fld.value = '0'+ decSep + aux;
	if (len > 2) 
	{
		aux2 = '';
		for (j = 0, i = len - 3; i >= 0; i--) 
		{
			if (j == 3) 
			{
				aux2 += milSep;
				j = 0;
			}
			aux2 += aux.charAt(i);
			j++;
		}
		fld.value = '';
		len2 = aux2.length;
		for (i = len2 - 1; i >= 0; i--)
		fld.value += aux2.charAt(i);
		fld.value += decSep + aux.substr(len - 2, len);
	}
	return false;
}

function number_format (number, decimals, dec_point, thousands_sep) {
    var n = number, prec = decimals;
 
    var toFixedFix = function (n,prec) {
        var k = Math.pow(10,prec);
        return (Math.round(n*k)/k).toString();
    };
 
    n = !isFinite(+n) ? 0 : +n;
    prec = !isFinite(+prec) ? 0 : Math.abs(prec);
    var sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep;
    var dec = (typeof dec_point === 'undefined') ? '.' : dec_point;
 
    var s = (prec > 0) ? toFixedFix(n, prec) : toFixedFix(Math.round(n), prec); //fix for IE parseFloat(0.55).toFixed(0) = 0;
 
    var abs = toFixedFix(Math.abs(n), prec);
    var _, i;
 
    if (abs >= 1000) {
        _ = abs.split(/\D/);
        i = _[0].length % 3 || 3;
 
        _[0] = s.slice(0,i + (n < 0)) +
              _[0].slice(i).replace(/(\d{3})/g, sep+'$1');
        s = _.join(dec);
    } else {
        s = s.replace('.', dec);
    }
 
    var decPos = s.indexOf(dec);
    if (prec >= 1 && decPos !== -1 && (s.length-decPos-1) < prec) {
        s += new Array(prec-(s.length-decPos-1)).join(0)+'0';
    }
    else if (prec >= 1 && decPos === -1) {
        s += dec+new Array(prec).join(0)+'0';
    }
    return s;
}
