/* IE6 flicker fix
-------------------------------------------------- */
try { document.execCommand("BackgroundImageCache", false, true); } catch(err){}

function g(i){
	return document.getElementById(i);
}

function findPos(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}

function showTooltip(ref,txt){
	g('tooltip').style.display = 'block';
	g('tooltip-inner').innerHTML = txt;
	g('tooltip').style.left = findPos(ref)[0] + ref.offsetWidth + 'px';
	g('tooltip').style.top = findPos(ref)[1] + 'px';
}
function hideTooltip(){
	g('tooltip').style.display = 'none';
}


function monthlyPayment(PV, i, N,deposit,residual){

	
	if(i==0) {
		PMT= (PV-(deposit+residual)) / N;
		return PMT;
	}
	var interestRate = i / 100 / 12;
	
	var PMT=Math.round((interestRate * ((PV - deposit)-(residual) / (Math.pow(interestRate + 1, N)))) / (1 - (1 / Math.pow(interestRate + 1, N))));
		
	return PMT;
}

function maxLoanSum(monpay, i, N,deposit,residual){

	if(i==0) {
		loansum=monpay*N+(deposit+residual);
		return loansum;
	}
	var interestRate = i / 100 / 12;
	
	var loansum=0;
	for (var x=1; x<=N;x=x+1) {
		loansum=loansum+(monpay/Math.pow((interestRate + 1), x));
	}
	return loansum;
}

function calculateMonthlyPayment(calc){


	
	if (calc=='LOTY_PRIV_MORTGAGE' || calc=='LOTY_PRIV_CONSUMER_CREDIT') {
		var _ltype="LETY_OTHER";
	}
	else {
		var _ltype=get_selected(document.getElementById('leasing_type'));
	
	}
	if (_ltype != "LETY_INSTALMENTS" && _ltype != "LETY_CAPITAL" && _ltype != "LETY_OPERATING" && _ltype != "LETY_OTHER") {
		document.getElementById('monpay').value = 0;
		return false;
	}
	/*
	Tüübid
	calc='LOTY_PRIV_CAR_LEASING'
	ltype=LETY_INSTALMENTS Järelmaks
	LETY_CAPITAL Kapitalirent
	LETY_OPERATING Kasutusrent<
	
	*/
	var _price = getFloatFromInput('loansum');
	//parseFloat(document.getElementById('loansum').value.split(',').join('.'));

	if (!_price) {
		document.getElementById('monpay').value = 0;
		return false;
	}
	
	var _interestRate = getFloatFromInput('irate');

	if (!_interestRate) _interestRate=0;
	
	var _selfFinance=0;
	var _deposit=0;
	var _residual=0;
	if (parseFloat(document.getElementById('residual_mny').value.split(',').join('.'))>0) {
		
		_residual= getFloatFromInput('residual_mny');
		
	}
	else if (parseFloat(document.getElementById('residual_per').value.split(',').join('.'))>0) {
		
		_residual= getFloatFromInput('residual_per') * _price / 100;
		
	}

	
	
	if (parseFloat(document.getElementById('deposit_mny').value.split(',').join('.'))>0) {
		_deposit =  getFloatFromInput('deposit_mny');
	}
	else if (parseFloat(document.getElementById('deposit_per').value.split(',').join('.'))>0) {
		_deposit =  getFloatFromInput('deposit_per') * _price / 100;
	}

	//_selfFinance = _selfFinance + _deposit;
	//_selfFinance = _selfFinance + _residual;
	
	var _llen=get_selected(document.getElementById('llen'));
	
	if (datecode[_llen]>0) {
		var _loanLength =datecode[_llen];
	}
	else {
		var _loanLength = get_selected(document.getElementById('llen')).substring(5);
		if (calc=='LOTY_PRIV_MORTGAGE') _loanLength=_loanLength*12;
	}
	
	var _loanAmount = _price;// - _selfFinance;

	if (_ltype=='LETY_OPERATING') {
			_interestRate = _interestRate * ((1+0/100)/(1+18/100));
	}
	else if (_residual>0 ) {
		_loanLength=_loanLength-1;
	}
	/*if ((calc=='LOTY_PRIV_CAR_LEASING' || calc=='LOTY_COMP_CAR_LEASING' || calc=='LOTY_COMP_MACHINE_LEASING')&& (_ltype=='LETY_INSTALMENT' || _ltype=='LETY_CAPITAL')) {
		_loanLength-=1;
	}*/
	
	var _payment = monthlyPayment(_loanAmount, _interestRate, _loanLength,_deposit,_residual);

	document.getElementById('monpay').value = Math.round(Math.ceil(_payment));
	if (!document.getElementById('monpay').value || 
	document.getElementById('monpay').value=='infinity' ||
	document.getElementById('monpay').value=='NaN') document.getElementById('monpay').value='0';
	return false;
}

function calculateMaxLoanSum(calc){

	if (calc=='LOTY_PRIV_MORTGAGE' || calc=='LOTY_PRIV_CONSUMER_CREDIT') {
		var _ltype="LETY_OTHER";
	}
	else {
		var _ltype=get_selected(document.getElementById('leasing_type'));
	
	}
	if (_ltype != "LETY_INSTALMENTS" && _ltype != "LETY_CAPITAL" && _ltype != "LETY_OPERATING" && _ltype != "LETY_OTHER") {
		document.getElementById('monpay').value = 0;
		return false;
	}
	/*
	Tüübid
	calc='LOTY_PRIV_CAR_LEASING'
	ltype=LETY_INSTALMENTS Järelmaks
	LETY_CAPITAL Kapitalirent
	LETY_OPERATING Kasutusrent<
	
	*/
	var _monpay = getFloatFromInput('monpay');
	//parseFloat(document.getElementById('loansum').value.split(',').join('.'));

	if (!_monpay) {
		document.getElementById('loansum').value = 0;
		return false;
	}
	
	var _interestRate = getFloatFromInput('irate');

	if (!_interestRate) _interestRate=0;
	
	
	var _selfFinance=0;
	var _deposit=0;
	var _residual=0;
/*	
	if (parseFloat(document.getElementById('residual_mny').value.split(',').join('.'))>0) {
		
		_residual= getFloatFromInput('residual_mny');
		
	}
	else if (parseFloat(document.getElementById('residual_per').value.split(',').join('.'))>0) {
		
		_residual= getFloatFromInput('residual_per') * _price / 100;
		
	}

	
	
	if (parseFloat(document.getElementById('deposit_mny').value.split(',').join('.'))>0) {
		_deposit =  getFloatFromInput('deposit_mny');
	}
	else if (parseFloat(document.getElementById('deposit_per').value.split(',').join('.'))>0) {
		_deposit =  getFloatFromInput('deposit_per') * _price / 100;
	}

	//_selfFinance = _selfFinance + _deposit;
	//_selfFinance = _selfFinance + _residual;
	*/
	var _llen=get_selected(document.getElementById('llen'));
	
	if (datecode[_llen]>0) {
		var _loanLength =datecode[_llen];
	}
	else {
		var _loanLength = get_selected(document.getElementById('llen')).substring(5);
		
	}
	
	if (_ltype=='LETY_OPERATING') {
			_interestRate = _interestRate * ((1+0/100)/(1+18/100));
	}
	/*
	else if (_residual>0 ) {
		_loanLength=_loanLength-1;
	}
	if ((calc=='LOTY_PRIV_CAR_LEASING' || calc=='LOTY_COMP_CAR_LEASING' || calc=='LOTY_COMP_MACHINE_LEASING')&& (_ltype=='LETY_INSTALMENT' || _ltype=='LETY_CAPITAL')) {
		_loanLength-=1;
	}*/
	
	var _loansum = maxLoanSum(_monpay, _interestRate, _loanLength,_deposit,_residual);

	document.getElementById('loansum').value = Math.round(Math.ceil(_loansum));
	if (!document.getElementById('loansum').value || 
	document.getElementById('loansum').value=='infinity' ||
	document.getElementById('loansum').value=='NaN') document.getElementById('loansum').value='0';
	return false;
}


function changeFormByIt(value){

	if (value=='INTY_FLOAT') {
		document.getElementById('fix_inf1').style.display='none';
		document.getElementById('fix_inf2').style.display='none';
		document.getElementById('float_inf1').style.display='';
		document.getElementById('float_inf2').style.display='';
		
	} else if (value=='INTY_FIXED') {
		document.getElementById('fix_inf1').style.display='';
		document.getElementById('fix_inf2').style.display='';
		document.getElementById('float_inf1').style.display='none';
		document.getElementById('float_inf2').style.display='none';
	} else 
	{
		document.getElementById('fix_inf1').style.display='';
		document.getElementById('fix_inf2').style.display='';
		document.getElementById('float_inf1').style.display='';
		document.getElementById('float_inf2').style.display='';
		
	}

}

/*
	function changeMonPay() {
		
		makeNum(document.CALC.LEASING_INTEREST);
		
		Eraisik liising - kasutusrent
		Ettevõtte seadmeliising - kasutusrent
		<option value="31">kasutusrent - RL6</option>
					<option value="32">kasutusrent - RL5</option>
					<!--<option value="11">kapitalirent - LL2</option>-->
					<option value="15">järelmaks - JMA</option>

					<option value="14" selected>kapitalirent - LL4</option>
		Ettevõtte seadme kapitalirent
					<option value="13">kapitalirent - LL3</option>
					<option value="34">kapitalirent - LL4 bullet</option>
		Eraisik liising - kapitalirent
					<option value="33">kapitalirent - LL3 bullet</option>
					
					Eraisik - Järelmaks
					<option value="35">järelmaks - JMA bullet</option>
		
		ltype = get_selected(document.CALC.LEASING_TYPE);
		if (ltype == 11) set_selected(document.CALC.LEASING_RESIDUALVALUE, 0);
		if (ltype == 15) set_selected(document.CALC.LEASING_RESIDUALVALUE, 0);
		if (ltype == 13) set_selected(document.CALC.LEASING_RESIDUALVALUE, 0);
		if (ltype == 14) set_selected(document.CALC.LEASING_RESIDUALVALUE, 0);
		
		if (ltype == 13 || ltype == 33) {
			price=1*document.CALC.ARTICLE_PRICE.value;
			price=price / 1.18;
		} else {
			price=document.CALC.ARTICLE_PRICE.value;
		}
		document.CALC.LEASING_ADVANCE_SUM.value=price*document.CALC.LEASING_ADVANCE.value / 100;
		
		theintr = 1*document.CALC.LEASING_INTEREST.value;
		theperiod = 1 * get_selected(document.CALC.LEASING_PERIOD);
		
		if (ltype==31 || ltype==32) {
			theintr = theintr * ((1+0/100)/(1+18/100));
		}
		
		if (ltype==33 || ltype==34 || ltype==35) {
			theperiod-=1;
		}
		
		if(theintr==0) {
			document.CALC.MONTH_PAYMENT.value= Math.round((price - document.CALC.LEASING_ADVANCE_SUM.value - (price * get_selected(document.CALC.LEASING_RESIDUALVALUE) / 100)) / theperiod);;
		} else {
			document.CALC.MONTH_PAYMENT.value= Math.round(((theintr / 100 / 12) * ((price - document.CALC.LEASING_ADVANCE_SUM.value)-((price * get_selected(document.CALC.LEASING_RESIDUALVALUE) / 100) / (Math.pow((theintr / 100 / 12) + 1, theperiod)))) / (1 - (1 / Math.pow((theintr / 100 / 12) + 1, theperiod)))));
		}

		if (ltype == 32) {
			var tasaarveldus = document.CALC.LEASING_ADVANCE_SUM.value / get_selected(document.CALC.LEASING_PERIOD);
			tasaarveldus = tasaarveldus / 1.18;
			*/

	function getFloatFromInput(id) {
		
		var val=document.getElementById(id).value.split(',').join('.').split(' ').join('')
		val= parseFloat(val);
		if (!val>0) val=0;
		return val;
		
	}
	
	function calcValueByPercent(target_id,money_id,percent_id) {
		
		var money=document.getElementById(money_id).value.split(',').join('.').split(' ').join('')
		money = parseFloat(money);
		
		var percent=document.getElementById(percent_id).value.split(',').join('.').split(' ').join('')
		percent = parseFloat(percent);
		
		
		if (!percent>0) {
			var result=0;
			return true;
		}
		else if (!money>0) {
			var result=0;
			return true;
		}
		else {
			var result=(money/100)*percent;
		}
		
		document.getElementById(target_id).value=result;
		
		return true;
		
	}
