/* dziwna tabelka */
_array2 = new Array();
_array2[120] = new Array();
_array2[120][0] = 0.9600;
_array2[120][4] = 0.9100;
_array2[120][8] = 0.8600;
_array2[120][18] = 0.7400;
_array2[120][28] = 0.6200;

// init
initializeFormLeasing();

function initializeFormLeasing() {
    form = document.forms['form-leasing2'];

    el = form.getElementsByTagName('input');
    for (ii=0; ii<el.length; ++ii) {
        if (el[ii].type != 'text') continue;

        if (el[ii].name != 'cena_start' && el[ii].name != 'r_w') {
            // el[ii].disabled = true;
            el[ii].value = '';// financeRound(el[ii].value);
	    el[ii].className += ' disabled';
        } else {
            el[ii].onchange = function() {
		 this.value = financeRound(this.value);
		 leasing_oblicz2();
	    }
        }

    }

    form['cena_start'].value = financeRound(form['cena_start'].value);
    form['koszt'].className += ' wynik';
    form['op_w'].onchange = leasing_oblicz2;
    //leasing_oblicz2();
}

function getLeasingPrice2(x) {
    if (x < 3000000) return 2.5;
    if (x < 5000000) return 2;
    if (x < 10000000) return 1.75;
    return 1.5;
}

function leasing_oblicz2() {
    form = document.forms['form-leasing2']; // FORM
    
    cena_start = parseInputToInt(form['cena_start'].value);
    op_w = parseInputToInt(form['op_w'].value);

/*@cc_on
@if (@_win32 && @_jscript_version>4)
    op_w = parseInputToInt(form['op_w'][form['op_w'].selectedIndex].innerHTML);
@end @*/

    r_w = parseInputToInt(form['r_w'].value);
    op_num = 120;

    form['cena_start1'].value = financeRound(cena_start);

    op_mies = _array2[op_num][op_w]; //getMonthPay2(op_num, op_w);
    form['op_mies'].value = financeRound(op_mies);

    document.getElementById('op_mies_text').innerHTML = financeRound(op_mies * cena_start / 100) + ' ';

    op_leasing = getLeasingPrice2(cena_start);
    form['op_leasing'].value = financeRound(op_leasing);

    suma_op = op_w + op_num * op_mies + op_leasing;
    
    form['suma_op'].value = financeRound(suma_op);

    _suma_op = suma_op * cena_start / 100;

    tarcza = _suma_op * 19 / 100;
    
    form['tarcza'].value = financeRound(tarcza);

    cena_wykup = 46;
    
    form['cena_wykup'].value = financeRound(cena_wykup);

    _cena_wykup = cena_wykup * cena_start / 100;

    cena_koniec = cena_start * Math.pow(1 + r_w / 100, 10);
    form['cena_koniec'].value = financeRound(cena_koniec);

    koszt = _cena_wykup + _suma_op - tarcza + cena_start*op_leasing/100;
    form['koszt'].value = financeRound(koszt);

    return false;
}

function financeRound(x) {
	x = parseInputToInt('' + x);
    return new NumberFormat(x).toFormatted();
}

function parseInputToInt(_val) {
	_val = _val.replace(/ /g, '');
    return parseFloat(_val.replace(/,/, '.'));
}

/*
    cena netto = user input -> cena_start
    oplata wstepna = user input -> op_w
    liczba oplat miesiecznych = user_input -> op_num
    wysokosc oplaty miesiecznej -> op_mies
    suma oplat leasingowych -> suma_op
    tarcza podatkowa -> tarcza
    kwota wykupu przedmiotu -> cena_wykup
    suma wszystkich oplat -> total
    rzeczywisty koszt -> koszt
*/

/* wyliczanie dziwnej tabelki */
function getMonthPay2(_entryPayment, _monthCount) {
    return _array2[parseInt(_entryPayment)][parseInt(_monthCount)];
}

