// DEPOSIT CALCULATOR
function changeCurrency(selectInput) {
	clearSelectBox('mindeposit');
	var selectMindeposit = document.getElementById('mindeposit');
	var inputDeposit = document.getElementById('deposit');
	var selectPeriod = document.getElementById('calc_period');
	var inputRate = document.getElementById('calc_rate');
	var selectCurrency = document.getElementById('currency');
	
	
	var i=0;
	for (deposit in depositRates[inputDeposit.value])
	{
		//fill minimum deposit amount selext box
		if (deposit != "each"  && deposit != "forEach" && depositRates[inputDeposit.value][deposit]['currency'] == selectInput.value)
		{
			selectMindeposit.options[i] = new Option(depositRates[inputDeposit.value][deposit]['mindeposit'],depositRates[inputDeposit.value][deposit]['mindeposit']);
			
			if (i==0)
			{
				inputRate.value =  depositRates[inputDeposit.value][deposit][selectPeriod.value];
			}
			i++;
		}
	}
	document.getElementById('calc_amount').value = selectMindeposit.value.replace(/[^0-9a-zA-Z-'-',']/g,"");
	document.getElementById('calc_replenishment').value = depositArray[inputDeposit.value]['min_replenishment'][selectInput.value];
}


function changeMinDeposit(selectInput) {
	var selectCurrency = document.getElementById('currency');
	var inputDeposit = document.getElementById('deposit');
	var selectPeriod = document.getElementById('calc_period');
	var inputRate = document.getElementById('calc_rate');
	var selectMindeposit = document.getElementById('mindeposit');
	
	clearSelectBox('calc_period');

	var i=0;
	for (period in depositPeriods[inputDeposit.value][selectMindeposit.value])
	{
		if (period != "each"  && period != "forEach" )
			selectPeriod.options[i] = new Option(depositPeriods[inputDeposit.value][selectMindeposit.value][period],period);
		i++;
	}	
	
	for (deposit in depositRates[inputDeposit.value])
	{
		//change deposit rate
		if (deposit != "each"  && deposit != "forEach" && depositRates[inputDeposit.value][deposit]['currency'] == selectCurrency.value && selectInput.value == depositRates[inputDeposit.value][deposit]['mindeposit'])
		{
				inputRate.value =  depositRates[inputDeposit.value][deposit][selectPeriod.value];
		}
	}
	
	document.getElementById('calc_amount').value = selectMindeposit.value.replace(/[^0-9a-zA-Z-'-',']/g,"");
	
}


function changePeriod(selectInput) {
	var selectCurrency = document.getElementById('currency');
	var inputDeposit = document.getElementById('deposit');
	var selectPeriod = document.getElementById('calc_period');
	var inputRate = document.getElementById('calc_rate');
	var selectMindeposit = document.getElementById('mindeposit');
	
	for (deposit in depositRates[inputDeposit.value])
	{
		//change deposit rate
		if (deposit != "each"  && deposit != "forEach" && depositRates[inputDeposit.value][deposit]['currency'] == selectCurrency.value && selectMindeposit.value == depositRates[inputDeposit.value][deposit]['mindeposit'])
		{
				inputRate.value =  depositRates[inputDeposit.value][deposit][selectInput.value];
		}
	}
	document.getElementById('calc_amount').value = selectMindeposit.value.replace(/[^0-9a-zA-Z-'-',']/g,"");
}


function changeDeposit(selectInput) {
	var inputDeposit = document.getElementById('deposit');
	var inputRate = document.getElementById('calc_rate');
	var selectCurrency = document.getElementById('currency');
	var selectMindeposit = document.getElementById('mindeposit');
	var selectPeriod = document.getElementById('calc_period');
	
	$('depositresults').style.display='none';
	if ($('depositterms'+selectInput.value).innerHTML)
	{
			show('deposittermstitle');
			show('depositterms');
			$('depositterms').innerHTML = $('depositterms'+selectInput.value).innerHTML;
			$('depositdescription').innerHTML = $('depositdescription'+selectInput.value).innerHTML;
	}
	else
	{
			$('depositdescription').innerHTML = $('depositdescription'+selectInput.value).innerHTML;
			$('depositterms').innerHTML = '';
			hide('deposittermstitle');		
	}
	
	clearSelectBox('calc_period');
	var selectPeriod = document.getElementById('calc_period');

	i=0;
	clearSelectBox('mindeposit');
	for (deposit in depositRates[inputDeposit.value])
	{
		//fill minimum deposit amount selext box
		if (deposit != "each"  && deposit != "forEach" && depositRates[inputDeposit.value][deposit]['currency'] == selectCurrency.value)
		{
			
			selectMindeposit.options[i] = new Option(depositRates[inputDeposit.value][deposit]['mindeposit'],depositRates[inputDeposit.value][deposit]['mindeposit']);
			i++;
		}
	}
	

	var i=0;
	//alert(depositPeriods[selectInput.value]);
	for (period in depositPeriods[selectInput.value][selectMindeposit.value])
	{
		if (period != "each" && period != "forEach" )
			selectPeriod.options[i] = new Option(depositPeriods[selectInput.value][selectMindeposit.value][period],period);
		i++;
	}
	
	 i=0;
	for (deposit in depositRates[inputDeposit.value])
	{
		//fill minimum deposit amount selext box
		if (deposit != "each"  && deposit != "forEach"  && depositRates[inputDeposit.value][deposit]['currency'] == selectCurrency.value)
		{
			if (i==0)
			{
				inputRate.value =  depositRates[inputDeposit.value][deposit][selectPeriod.value];
				
				break;
			}
			i++;
		}
	}
	document.getElementById('calc_amount').value = selectMindeposit.value.replace(/[^0-9a-zA-Z-'-',']/g,"");
	document.getElementById('calc_replenishment').value = depositArray[inputDeposit.value]['min_replenishment'][selectCurrency.value];
	
	
	//bez mojlyvisti popovnyuvannya
	if (depositArray[inputDeposit.value].replenishment == 1)
	{
			hide('div_replenishment');
	}
	//z mojlyvistyu popovnyuvannya
	else
	{
			show('div_replenishment');
	}
}

function calculateDeposit() {
	var selectCurrency = document.getElementById('currency').value;
	var inputDeposit = document.getElementById('deposit').value;
	var selectPeriod = document.getElementById('calc_period').value;
	var inputRate = document.getElementById('calc_rate').value;
	var selectMindeposit = document.getElementById('mindeposit').value;
	var inputAmount = document.getElementById('calc_amount').value;
	var inputReplenishment = document.getElementById('calc_replenishment').value;
	
	if (parseFloat(inputAmount)< parseFloat(selectMindeposit.replace(/[^0-9-'-',']/g,"")) || inputAmount == '' )
	{
		document.getElementById('calc_amount').focus();	
	}
	else 	if (parseFloat(inputReplenishment)< parseFloat(depositArray[inputDeposit]['min_replenishment'][selectCurrency]) )
	{
		document.getElementById('calc_replenishment').focus();	
	}
	else
	{
			hide('deposittermstitle');		
			hide('depositterms');		
			if (depositTerms[inputDeposit] == 1)
				var calcperiod = 12;
			else
				var calcperiod = 365;
				

			if (depositArray[inputDeposit].payment == 1)
			{
				$('calc_row_month').style.display='none';
				$('calc_row_percents').style.display='';
				var div_percents = 'calc_total_percents';
			}
			//monthly payment
			else if (depositArray[inputDeposit].payment == 2)
			{
				$('calc_row_month').style.display='';
				$('calc_row_percents').style.display='none';
				var div_percents = 'calc_total_percents_month';
			}	
			
			//monthly payment
			if (depositArray[inputDeposit].payment == 2)
			{
				 var totalpercents = inputAmount*inputRate/calcperiod/100;
				 var totalamount =  parseFloat(totalpercents)*selectPeriod + parseFloat(inputAmount)
			}
			//without capitalization
			else if (depositArray[inputDeposit].capitalization == 1)
			{
				var totalpercents = inputAmount*selectPeriod*inputRate/calcperiod/100;
				var totalamount = parseFloat(totalpercents) + parseFloat(inputAmount)
			}
			//with capitalization
			else if (depositArray[inputDeposit].capitalization == 2)
			{
				//bez mojlyvosti popovnyuvannya
				if (depositArray[inputDeposit].replenishment == 1 || inputReplenishment == '' || (depositArray[inputDeposit].replenishment == 2 && (inputReplenishment==0 )))
				{
					var totalpercents = inputAmount * Math.pow(1 + inputRate/calcperiod/100 ,selectPeriod)- inputAmount;	
					var totalamount = parseFloat(inputAmount) + parseFloat(totalpercents);
				}
				//z mojlyvistyu shomisyachnogo popovnyuvannya
				else if (depositArray[inputDeposit].replenishment == 2)
				{
					var totalamount = inputAmount;
					var totalpercents = 0;
					var periodpercents = 0;
					for(var i = 0; i < selectPeriod ; i++)
					{
						periodpercents = parseFloat(totalamount*inputRate/calcperiod/100);
						if (i!=selectPeriod-1)
							totalamount = parseFloat(totalamount) + parseFloat(periodpercents)+parseFloat(inputReplenishment);
						else
							totalamount = parseFloat(totalamount) + parseFloat(periodpercents);
						totalpercents =  parseFloat(totalpercents) + parseFloat(periodpercents);
					}
					//alert(totalamount);
				}
					
			}
			
			totalamount = totalamount.toFixed(2);			
			
			if (selectCurrency == 'USD')
				$('calc_total_amount').innerHTML = '$'+addCommas(totalamount);
			else if (selectCurrency == 'EUR')
				$('calc_total_amount').innerHTML = '€'+addCommas(totalamount);
			else if (selectCurrency == 'UAH')
				$('calc_total_amount').innerHTML = addCommas(totalamount)+cmnlang['hrn'];			
			
				
			if (selectCurrency == 'USD')
				$(div_percents).innerHTML = '$'+addCommas(parseFloat(totalpercents).toFixed(2));
			else if (selectCurrency == 'EUR')
				$(div_percents).innerHTML = '€'+addCommas(parseFloat(totalpercents).toFixed(2));
			else if (selectCurrency == 'UAH')
				$(div_percents).innerHTML = addCommas(parseFloat(totalpercents).toFixed(2))+cmnlang['hrn'];				
	
			
			
	
			
			$('depositresults').style.display='block';
			
	
				
	}
}