var credit_amount; // Сумма кредита – от 10 до 500000, с шагом – 1000. Только целые числа.
var init_payment_rate; // Первый взнос – от 1 до 99, с шагом – 1.
var init_payment_summa; // Первый взнос сумма 
var months; // Срок кредитования – от 1 до 240, с шагом – 1. Только целые числа.
var annual_rate; // Годовая % ставка – от 1 до 99, с шагом – 1. Возможны дробные числа при ручном вводе.
var months_rate; // Ежемесячная % ставка – от 1 до 10, с шагом – 0.1.
var one_fee_rate; // Единоразовая комиссия – от 1 до 10, с шагом – 0.1.
var one_fee_summa; // Единоразовая комиссия – сумма
var insurance_rate; // Страховка – от 1 до 20, с шагом – 0.1.
var insurance_summa; // Страховка – сумма
var real_rate; // Реальная ставка
var monthly_payment; // Ежемесячный платеж
var overpayment; // Переплата по кредиту
var full_summa; // Полная сумма оплаты


$(window).bind("load",function(){

	$('#credit_amount_slider').slider({ min: 10, max: 500000, startValue: credit_amount, stepping: 1000, slide: function(e,ui) { set_credit_amount( 1, ui.value ) } });
	
	$('#init_payment_rate_slider').slider({ min: 0, max: 99, startValue: init_payment_rate, stepping: 1, slide: function(e,ui) { set_init_payment_rate( 1, ui.value ) } });
	
	$('#months_slider').slider({ min: 1, max: 240, startValue: months, stepping: 1, slide: function(e,ui) { set_months( 1, ui.value ) } });

	$('#annual_rate_slider').slider({ min: 10, max: 990, startValue: annual_rate*10, stepping: 1, slide: function(e,ui) { set_annual_rate( 1, ui.value ) } });
	
	$('#months_rate_slider').slider({ min: 0, max: 100, startValue: months_rate*10, stepping: 1, slide: function(e,ui) { set_months_rate( 1, ui.value ) } });
	$('#one_fee_rate_slider').slider({ min: 0, max: 100, startValue: one_fee_rate*10, stepping: 1, slide: function(e,ui) { set_one_fee_rate( 1, ui.value ) } });

	$('#insurance_rate_slider').slider({ min: 0, max: 200, startValue: insurance_rate*10, stepping: 1, slide: function(e,ui) { set_insurance_rate( 1, ui.value ) } });

});



function credit_calc_init()
{
	credit_amount = parseInt($('#credit_amount').attr('value')); // Сумма кредита
	
	init_payment_rate = parseFloat($('#init_payment_rate').attr('value')); // Первый взнос %
	init_payment_summa = parseFloat($('#init_payment_summa').attr('value')); // Первый взнос сумма
	months = parseInt($('#months').attr('value')); // Срок кредитования
	annual_rate = parseFloat($('#annual_rate').attr('value'));
	months_rate = parseFloat($('#months_rate').attr('value'));
	one_fee_rate= parseFloat($('#one_fee_rate').attr('value'));
	one_fee_summa= parseFloat($('#one_fee_summa').attr('value'));
	insurance_rate = parseFloat($('#insurance_rate').attr('value'));
	insurance_summa = parseFloat($('#insurance_summa').attr('value'));
	real_rate = parseFloat($('#real_rate').html() );
	monthly_payment = parseFloat($('#monthly_payment').html());
	overpayment = parseFloat($('#overpayment').html());
	full_summa = parseFloat($('#full_summa').html());
}

function set_credit_amount( type, newValue )
{
	credit_amount = parseInt( newValue );
	if( type==1 ) {
		$('#credit_amount').attr('value', credit_amount );
	} else {
		$('#credit_amount_slider').slider("moveTo", credit_amount );
	}
	set_init_payment_summa( 1, init_payment_rate/100*credit_amount );
	set_one_fee_summa( 1, one_fee_rate/100*credit_amount );
	set_insurance_summa( 1, insurance_rate/100*credit_amount )
	calc_Values();
}

function set_init_payment_rate( type, newValue )
{
	init_payment_rate = parseFloat( newValue );
	if( type==1 ) {
		$('#init_payment_rate').attr('value', init_payment_rate );
	} else {
		$('#init_payment_rate_slider').slider("moveTo", init_payment_rate );
	}
	set_init_payment_summa( 1, credit_amount/100*init_payment_rate );
	calc_Values();
}
function set_init_payment_summa( type, newValue )
{
	init_payment_summa = parseFloat( newValue );
	if( type==1 ) {
		$('#init_payment_summa').attr('value', Math.round(init_payment_summa) );
	} else {
		set_init_payment_rate( 1, init_payment_summa/credit_amount*100 );
		set_init_payment_rate( 2, init_payment_summa/credit_amount*100 );
	}
	calc_Values();
}

function set_months( type, newValue )
{
	months = parseInt( newValue );
	if( type==1 ) {
		$('#months').attr('value', months );
	} else {
		$('#months_slider').slider("moveTo", months );
	}
	calc_Values();
}

function set_annual_rate( type, newValue )
{
	if( type==1 ) {
		annual_rate = parseFloat( newValue/10 );
		$('#annual_rate').attr('value', annual_rate );
	} else {
		annual_rate = parseFloat( newValue );
		$('#annual_rate_slider').slider("moveTo", annual_rate*10 );
	}
	calc_Values();
}

function set_months_rate( type, newValue )
{
	if( type==1 ) {
		months_rate = parseFloat( newValue/10 );
		$('#months_rate').attr('value', months_rate );
	} else {
		months_rate = parseFloat( newValue );
		$('#months_rate_slider').slider("moveTo", months_rate*10 );
	}
	calc_Values();
}
function set_one_fee_rate( type, newValue )
{
	if( type==1 ) {
		one_fee_rate = parseFloat( newValue/10 );
		$('#one_fee_rate').attr('value', Math.round(one_fee_rate*10)/10 );
	} else {
		one_fee_rate = parseFloat( newValue );
		$('#one_fee_rate_slider').slider("moveTo", one_fee_rate*10 );
	}
	set_one_fee_summa( 1, one_fee_rate/100*credit_amount );
	calc_Values();
}
function set_one_fee_summa( type, newValue )
{
	one_fee_summa = parseFloat( newValue );
	if( type==1 ) {
		$('#one_fee_summa').attr('value', Math.round(one_fee_summa) );
	} else {
		set_one_fee_rate( 1, one_fee_summa/credit_amount*100*10 );
		set_one_fee_rate( 2, one_fee_summa/credit_amount*100 );
	}
	calc_Values();
}

function set_insurance_rate( type, newValue )
{
	if( type==1 ) {
		insurance_rate = parseFloat( newValue/10 );
		$('#insurance_rate').attr('value', Math.round(insurance_rate*10)/10 );
	} else {
		insurance_rate = parseFloat( newValue );
		$('#insurance_rate_slider').slider("moveTo", insurance_rate*10 );
	}
	set_insurance_summa( 1, insurance_rate/100*credit_amount );
	calc_Values();
}
function set_insurance_summa( type, newValue )
{
	insurance_summa = parseFloat( newValue );
	if( type==1 ) {
		$('#insurance_summa').attr('value', Math.round(insurance_summa) );
	} else {
		set_insurance_rate( 1, insurance_summa/credit_amount*100*10 );
		set_insurance_rate( 2, insurance_summa/credit_amount*100 );
	}
	calc_Values();
}





function calc_payment_rate()
{
	init_payment_rate = init_payment_summa/(credit_amount/100);
	$('#init_payment_rate').attr('value',init_payment_rate );
}
function calc_one_fee_summa()
{
	one_fee_summa = credit_amount/100*one_fee_rate;
	$('#one_fee_summa').attr('value', one_fee_summa );
}
function calc_insurance_summa()
{
	insurance_summa = credit_amount/100*insurance_rate;
	$('#insurance_summa').attr('value', insurance_summa );
}
function calc_real_rate()
{
	// Реальная ставка (без страховкой)
//	real_rate = (annual_rate*(months/12)+(months_rate*months)+one_fee_rate)/(months/12);
	// Реальная ставка (со страховкой)
	real_rate = ((annual_rate+insurance_rate)*(months/12)+(months_rate*months)+one_fee_rate)/(months/12);
	$('#real_rate').html( Math.round(real_rate*100)/100 );
}
function calc_monthly_payment()
{
	// Ежемесячный платеж (без страховки)
	//monthly_payment = ((credit_amount-init_payment_summa)/100)*((annual_rate*(months/12)+months_rate*months+one_fee_rate)/(months/12));
//	monthly_payment = (
//			(credit_amount-init_payment_summa)/100*
//			(annual_rate*(months/12)+months_rate*months+one_fee_rate))/(months);
	
//	monthly_payment =  ((credit_amount-init_payment_summa)/100)*
//			((annual_rate*(months/12)+months_rate*months+one_fee_rate)/(months)) + (credit_amount-init_payment_summa)/months; 

	monthly_payment = (((credit_amount-init_payment_summa)/100)*((annual_rate+insurance_rate)*(months/12)+months_rate*months+one_fee_rate))/months + (credit_amount-init_payment_summa)/months;
	
	$('#monthly_payment').html( Math.round(monthly_payment*100)/100 );
}
function calc_overpayment()
{
	// Переплата по кредиту (без страховки)
	// overpayment = ((credit_amount-init_payment_summa)/100)*(annual_rate*(months/12)+months_rate*months+one_fee_rate);
	// Переплата по кредиту (со страховкой)
	overpayment = ((credit_amount-init_payment_summa)/100)*((annual_rate+insurance_rate)*(months/12)+months_rate*months+one_fee_rate);
	$('#overpayment').html( Math.round(overpayment*100)/100 );
}
function calc_full_summa()
{
	// Полная сумма оплаты
	full_summa = overpayment + credit_amount - init_payment_summa;
	$('#full_summa').html( Math.round(full_summa*100)/100 );
}
function calc_Values()
{
	calc_real_rate();
	calc_monthly_payment();
	calc_overpayment();
	calc_full_summa();
}
