﻿// :: TODO :: check entered values!!!

function calculate() {
    var company = document.getElementById('company');
    // these can change
    var objectValue = document.getElementById('sum').value;
    var firstDeposit = document.getElementById('first_deposit').value;
    var term = document.getElementById('term').value;
    
    if (
        (objectValue.length < 1)
        ||
        (firstDeposit.length < 1)
        ||
        (term.length < 1)
        )
    {
        alert('Līzings');
        return false;
    }
    else if (
                (!objectValue.match(/^(\d+)(\.?)(\d*)$/))
                ||
                (!firstDeposit.match(/^(\d+)(\.?)(\d*)$/))
                ||
                (!term.match(/^(\d+)$/))
            )
    {
        alert('Please enter correct numeric value');
        return false;
    }
    // results
    var firstDepositObject = document.getElementById('first_deposit_val');
    var monthlyPaymentObject = document.getElementById('monthly_payment');
    
    var result = document.getElementById('result');
    
    switch(parseInt(company.value)) {
        case 1:
            var percent = 24;
           /* 
            firstDepositValue = firstDeposit * objectValue / 100;
            creditValue = objectValue - firstDepositValue;
            
            monthlyPercent = (percent / 12) / 100;
            
            monthlyPayment = creditValue * monthlyPercent * (1 - (1/(1 - Math.pow(1 + monthlyPercent, term))));
            monthlyPayment = (Math.round(monthlyPayment * 100))/100;
            */
            break;
            
        case 2:
            //additional lauki
            var percent = 24;
          /*
            percent = document.getElementById('rate').value;
            controlRate = document.getElementById('rate_control').value;
            firstDepositCash = document.getElementById('first_deposit_cash').value;
            service = document.getElementById('service').value;
            
            mandatoryDeposit = (objectValue * firstDeposit) / 100;
            
            firstDeposit = mandatoryDeposit + ((objectValue * controlRate) / 100);
            */
            break;
        case 3:
            var percent = 25;
            /*
            firstDepositValue = firstDeposit * objectValue / 100;
            
            creditValue = objectValue - firstDepositValue;
            
            monthlyPercent = (percent / 12) / 100;
            
            monthlyPayment = creditValue * monthlyPercent * (1 - (1/(1 - Math.pow(1 + monthlyPercent, term))));
            monthlyPayment = (Math.round(monthlyPayment * 100))/100;
            */
            break;
			
        case 4:
            var percent = 25;
            break;
			
        case 5:
            var percent = 24;
            break;
			
        default:
            alert('unknown error');
            break;
    }
    
    firstDepositValue = firstDeposit * objectValue / 100;
            
    creditValue = objectValue - firstDepositValue;
    
    monthlyPercent = (percent / 12) / 100;
    
    monthlyPayment = creditValue * monthlyPercent * (1 - (1/(1 - Math.pow(1 + monthlyPercent, term))));
    monthlyPayment = (Math.round(monthlyPayment * 100))/100;
    
    firstDepositObject.value = firstDepositValue;
    monthlyPaymentObject.value = monthlyPayment;
    
}

