$(document).ready(function() {

	/* DISATTIVA L'INVIO DEL FORM MA PERMETTE L'ESECUZIONE DEI CONTROLLI DI SJBJL */
	$('#form_isc').attr('onsubmit','return false;');
	$('#form_isc2').attr('onsubmit','return false;');
	$('#form_cmds').attr('onsubmit','return false;');

	
	$('#form_isc input').bind('blur',function() {
		isc_result();		
		isc_result(); // FIX PER CALCOLO
	})
	
	$('#form_isc2 input').bind('blur',function() {
		isc2_result();
		isc2_result(); // FIX PER CALCOLO
    })	
	
	$('#form_cmds input').bind('blur',function() {
		cmds_result();
		cmds_result(); // FIX PER CALCOLO
    })
});


//Arrotonda a due cifre decimali
function roundTo(value, decimalpositions) {
	var i = value * Math.pow(10,decimalpositions);
	i = Math.round(i);
	return i / Math.pow(10,decimalpositions);
}

function check_isc(){
	var fido_accordato_isc = parseFloat(document.getElementById('fido_accordato_isc').value);
	var primo_periodo_isc = parseFloat(document.getElementById('primo_periodo_isc').value);
	var secondo_periodo_isc = parseFloat(document.getElementById('secondo_periodo_isc').value);
	var terzo_periodo_isc = parseFloat(document.getElementById('terzo_periodo_isc').value);
	var gg_primo_periodo_isc = parseFloat(document.getElementById('gg_primo_periodo_isc').value);
	var gg_secondo_periodo_isc = parseFloat(document.getElementById('gg_secondo_periodo_isc').value);
	var gg_terzo_periodo_isc = parseFloat(document.getElementById('gg_terzo_periodo_isc').value);
	var commissione_max_isc = parseFloat(document.getElementById('commissione_max_isc').value);
	
			
	var controllo_check_isc = 'ok';
		
	//Controllo che il valore del fido č diverso da zero
	if (fido_accordato_isc == 0.00) {
		errormessage(useobj('fido_accordato_isc'),'Il valore deve essere diverso da 0',3000);
		document.getElementById('fido_accordato_isc').focus;
		controllo_check_isc = 'ko';	
	}		
	// if (isNaN(fido_accordato_isc)){
		// errormessage(useobj('fido_accordato_isc'),'Il campo non puņ essere vuoto',3000);
		// document.getElementById('fido_accordato_isc').focus;
		// controllo_check_isc = 'ko';
	// }		
	// if (isNaN(primo_periodo_isc)){
		// errormessage(useobj('primo_periodo_isc'),'Il campo non puņ essere vuoto',3000);
		// document.getElementById('primo_periodo_isc').focus;
		// controllo_check_isc = 'ko';
	// }
	
	//Controllo tra fido accordato e primo periodo
	if (primo_periodo_isc > fido_accordato_isc){
		errormessage(useobj('primo_periodo_isc'),'Il valore deve essere minore o uguale al Fido Accordato',3000);
		document.getElementById('primo_periodo_isc').focus;
		controllo_check_isc = 'ko';
	}
	//Controllo tra fido accordato e secondo periodo
	if (secondo_periodo_isc > fido_accordato_isc){
		errormessage(useobj('secondo_periodo_isc'),'Il valore deve essere minore o uguale al Fido Accordato',3000);
		document.getElementById('secondo_periodo_isc').focus;
		controllo_check_isc = 'ko';
	}
	//Controllo tra fido accordato e terzo periodo
	if (terzo_periodo_isc > fido_accordato_isc){
		errormessage(useobj('terzo_periodo_isc'),'Il valore deve essere minore o uguale al Fido Accordato',3000);
		document.getElementById('terzo_periodo_isc').focus;
		controllo_check_isc = 'ko';
	}
	//Controllo giorni primo periodo
	if (gg_primo_periodo_isc > 29){
		errormessage(useobj('gg_primo_periodo_isc'),'Il primo periodo deve essere inferiore o uguale a 29 giorni',3000);
		document.getElementById('gg_primo_periodo_isc').focus;
		controllo_check_isc = 'ko';
	}
	//Controllo giorni secondo periodo
	if (gg_secondo_periodo_isc > 29){
		errormessage(useobj('gg_secondo_periodo_isc'),'Il primo periodo deve essere inferiore o uguale a 29 giorni',3000);
		document.getElementById('gg_secondo_periodo_isc').focus;
		controllo_check_isc = 'ko';
		// alert('TERZO ' + controllo_check_isc);
	}
	//Controllo giorni terzo periodo
	if (gg_terzo_periodo_isc > 29){
		errormessage(useobj('gg_terzo_periodo_isc'),'Il primo periodo deve essere inferiore o uguale a 29 giorni',3000);
		document.getElementById('gg_terzo_periodo_isc').focus;
		controllo_check_isc = 'ko';
	}
	
	//Controllo che il valore del fido č diverso da zero
	if (commissione_max_isc == 0.00) {
		errormessage(useobj('commissione_max_isc'),'Il valore deve essere diverso da 0',3000);
		document.getElementById('commissione_max_isc').focus;
		controllo_check_isc = 'ko';	
	}
	
	// alert(isNaN(gg_primo_periodo_isc) + " " + isNaN(gg_secondo_periodo_isc) +" "+ isNaN(gg_terzo_periodo_isc));
	
	if (!isNaN(gg_primo_periodo_isc) && !isNaN(gg_secondo_periodo_isc) && !isNaN(gg_terzo_periodo_isc) && !isNaN(commissione_max_isc) && (controllo_check_isc == 'ok')) {
		isc_result();
		espandi('minimized_isc');
	}
}

function isc_result(){
	var fido_accordato_isc = parseFloat(document.getElementById('fido_accordato_isc').value);
	var primo_periodo_isc = parseFloat(document.getElementById('primo_periodo_isc').value);
	var secondo_periodo_isc = parseFloat(document.getElementById('secondo_periodo_isc').value);
	var terzo_periodo_isc = parseFloat(document.getElementById('terzo_periodo_isc').value);
	var gg_primo_periodo_isc = parseFloat(document.getElementById('gg_primo_periodo_isc').value);
	var gg_secondo_periodo_isc = parseFloat(document.getElementById('gg_secondo_periodo_isc').value);
	var gg_terzo_periodo_isc = parseFloat(document.getElementById('gg_terzo_periodo_isc').value);
	var periodo_rif_isc = parseFloat(document.getElementById('periodo_rif_isc').value);
	var spesa_ist_isc = parseFloat(document.getElementById('spesa_ist_isc').value);
	var oneri_totali_isc = parseFloat(document.getElementById('oneri_totali_isc').value);
	var tasso_deb_annuo_isc = parseFloat(document.getElementById('tasso_deb_annuo_isc').value);
	var tempo_annualizzato_isc = parseFloat(document.getElementById('tempo_annualizzato_isc').value);
	var calcolo_int_isc = parseFloat(document.getElementById('calcolo_int_isc').value);
	var utilizzato_medio_isc = parseFloat(document.getElementById('utilizzato_medio_isc').value);
	var maxscopcalc_isc = (parseFloat(document.getElementById('maxscopcalc_isc').value)).toFixed(2);
	
	// document.getElementById('gg_secondo_periodo_isc').value = 91 - gg_primo_periodo_isc;

	//Calcolo spesa d'istruttoria
/* var limite_spesa_ist_isc = parseFloat(((fido_accordato_isc)*0.15)/100);
		if (limite_spesa_ist_isc <= 258.23) {
			document.getElementById('spesa_ist_isc').value = limite_spesa_ist_isc;
		} else {
			document.getElementById('spesa_ist_isc').value = 258.23;
		} */

	document.getElementById('spesa_ist_isc').value = parseFloat(((fido_accordato_isc)*0.15)/100);
	
	//Calcolo tempo annualizzato
	document.getElementById('periodo_rif_isc').value = 3;
	document.getElementById('tempo_annualizzato_isc').value = roundTo((365/(gg_primo_periodo_isc+gg_secondo_periodo_isc+gg_terzo_periodo_isc)),2);
	tempo_annualizzato_isc = (365/(gg_primo_periodo_isc+gg_secondo_periodo_isc+gg_terzo_periodo_isc));
	
	//Calcolo utilizzato medio - rigo nascosto al form e utile ai fini dei calcoli
	document.getElementById('utilizzato_medio_isc').value = ((primo_periodo_isc*gg_primo_periodo_isc)+(secondo_periodo_isc*gg_secondo_periodo_isc)+(terzo_periodo_isc*gg_terzo_periodo_isc))/(gg_primo_periodo_isc+gg_secondo_periodo_isc+gg_terzo_periodo_isc);
	utilizzato_medio_isc = ((primo_periodo_isc*gg_primo_periodo_isc)+(secondo_periodo_isc*gg_secondo_periodo_isc)+(terzo_periodo_isc*gg_terzo_periodo_isc))/(gg_primo_periodo_isc+gg_secondo_periodo_isc+gg_terzo_periodo_isc);
	
	//Calcolo interessi
	document.getElementById('calcolo_int_isc').value = roundTo(((primo_periodo_isc*(tasso_deb_annuo_isc/100)*gg_primo_periodo_isc)/365)+((secondo_periodo_isc*(tasso_deb_annuo_isc/100)*gg_secondo_periodo_isc)/365)+((terzo_periodo_isc*(tasso_deb_annuo_isc/100)*gg_terzo_periodo_isc)/365),2);
	calcolo_int_isc = roundTo(((primo_periodo_isc*(tasso_deb_annuo_isc/100)*gg_primo_periodo_isc)/365)+((secondo_periodo_isc*(tasso_deb_annuo_isc/100)*gg_secondo_periodo_isc)/365)+((terzo_periodo_isc*(tasso_deb_annuo_isc/100)*gg_terzo_periodo_isc)/365),2);
	
	//Calcolo oneri totali
	document.getElementById('oneri_totali_isc').value = roundTo((spesa_ist_isc/4),2);
	oneri_totali_isc = (spesa_ist_isc/4);
	
	//Calcolo TAEG
	var base_taeg_isc = ((utilizzato_medio_isc+calcolo_int_isc+oneri_totali_isc)/utilizzato_medio_isc);
	var taeg_isc = parseFloat(document.getElementById('taeg_isc').value);
	document.getElementById('taeg_isc').value = roundTo(((Math.pow(base_taeg_isc,tempo_annualizzato_isc)-1)*100),2);
	
}

function check_isc2(){
	var fido_accordato_isc2 = parseFloat(document.getElementById('fido_accordato_isc2').value);
	var trimestre_isc2 = parseFloat(document.getElementById('trimestre_isc2').value);
	var gg_trimestre_isc2 = parseFloat(document.getElementById('gg_trimestre_isc2').value);
	
	var controllo_check_isc2 = 'ok';
		
	if (fido_accordato_isc2 == 0.00){
		errormessage(useobj('fido_accordato_isc2'),'Il valore deve essere diverso da 0',3000);
		document.getElementById('fido_accordato_isc2').focus;
		controllo_check_isc2 = 'ko';	
	}	
		
	//Controllo tra fido accordato e periodi
	if (trimestre_isc2 > fido_accordato_isc2){
		errormessage(useobj('trimestre_isc2'),'Il valore deve essere minore o uguale al Fido Accordato',3000);
		document.getElementById('trimestre_isc2').focus;
		controllo_check_isc2 = 'ko';
	}
		
	//Calcolo numero dei giorni del terzo periodo
	if ((gg_trimestre_isc2 > 90) || (gg_trimestre_isc2 < 30)){
		errormessage(useobj('gg_trimestre_isc2'),'Il valore deve essere maggiore di 30 e inferiore o uguale a 90 giorni',3000);
		document.getElementById('gg_trimestre_isc2').focus;
		controllo_check_isc2 = 'ko';
	}
	
	if (!isNaN(trimestre_isc2) && (controllo_check_isc2 == 'ok')) {				
		isc2_result();
		espandi('minimized_isc2');
	}
}	
	
function isc2_result(){
	var fido_accordato_isc2 = parseFloat(document.getElementById('fido_accordato_isc2').value);
	var trimestre_isc2 = parseFloat(document.getElementById('trimestre_isc2').value);
	var gg_trimestre_isc2 = parseFloat(document.getElementById('gg_trimestre_isc2').value);
	var tasso_deb_annuo_isc2 = parseFloat(document.getElementById('tasso_deb_annuo_isc2').value);
	var spesa_ist_isc2 = parseFloat(document.getElementById('spesa_ist_isc2').value);
	var periodo_rif_isc2 = parseFloat(document.getElementById('periodo_rif_isc2').value);
	var oneri_totali_isc2 = parseFloat(document.getElementById('oneri_totali_isc2').value);
	var tempo_annualizzato_isc2 = parseFloat(document.getElementById('tempo_annualizzato_isc2').value);

	//Calcolo spesa d'istruttoria
/* var limite_spesa_ist_isc = parseFloat(((fido_accordato_isc)*0.15)/100);
		if (limite_spesa_ist_isc <= 258.23) {
			document.getElementById('spesa_ist_isc').value = limite_spesa_ist_isc;
		} else {
			document.getElementById('spesa_ist_isc').value = 258.23;
		} */
	
	document.getElementById('spesa_ist_isc2').value = parseFloat(((fido_accordato_isc2)*0.15)/100);
	document.getElementById('periodo_rif_isc2').value = 3;
	
	//Calcolo tempo annualizzato
	document.getElementById('tempo_annualizzato_isc2').value = roundTo((360/gg_trimestre_isc2),2);
	tempo_annualizzato_isc2 = roundTo((360/gg_trimestre_isc2),2);
	
	//Calcolo interessi
	var calcolo_int_isc2 = parseFloat(document.getElementById('calcolo_int_isc2').value);
	document.getElementById('calcolo_int_isc2').value = roundTo(((trimestre_isc2*gg_trimestre_isc2*tasso_deb_annuo_isc2)/360)/100,2);
	calcolo_int_isc2 = roundTo(((trimestre_isc2*gg_trimestre_isc2*tasso_deb_annuo_isc2)/360)/100,2);
	
	//Commissione massimo scoperto	
	var commissione_max_isc2 = document.getElementById('commissione_max_isc2').value/100;
	document.getElementById('massimo_scoperto_isc2').value = (roundTo((trimestre_isc2*commissione_max_isc2),2)).toFixed(2);
	massimo_scoperto_isc2 = (trimestre_isc2*commissione_max_isc2);
	
	//Calcolo oneri totali
	var oneri_totali_isc2 = parseFloat(document.getElementById('oneri_totali_isc2').value);
	document.getElementById('oneri_totali_isc2').value = roundTo((((spesa_ist_isc2/4)+massimo_scoperto_isc2)),2);
		
	//Calcolo TAEG
	var taeg_isc2 = parseFloat(document.getElementById('taeg_isc2').value);
	var base_potenza_taeg_isc2 = ((trimestre_isc2+calcolo_int_isc2+oneri_totali_isc2)/trimestre_isc2);
	
	taeg_isc2 = (Math.pow(base_potenza_taeg_isc2,tempo_annualizzato_isc2)-1)*100;
	document.getElementById('taeg_isc2').value = roundTo(taeg_isc2,2);
}


function check_cmds(){

	var accordato_cmds = document.getElementById('accordato_cmds').value;
	var controllo_check_cmds = 'ok';

	//Controllo che il campo abbiamo valore diverso da 0 
	if (accordato_cmds == 0.00){
		errormessage(useobj('accordato_cmds'),'Il valore deve essere diverso da 0',3000);
		document.getElementById('accordato_cmds').focus;
		controllo_check_cmds = 'ko';	
	}		
	
	if (controllo_check_cmds =='ok') {
		cmds_result();
		espandi('minimized_cmds');
	}
}

function cmds_result(){
	var accordato_cmds = parseFloat(document.getElementById('accordato_cmds').value);
	var tasso_deb_cmds= document.getElementById('tasso_deb_cmds').value;
	var comm_somme_cmds = document.getElementById('comm_somme_cmds').value;
	var spesa_ist_cmds = parseFloat(document.getElementById('spesa_ist_cmds').value);
	var durata_mesi_cmds = document.getElementById('durata_mesi_cmds').value;
	var calcolo_int_cmds = parseFloat(document.getElementById('calcolo_int_cmds').value);
	var comm_dispo_cmds = document.getElementById('comm_dispo_cmds').value;
	var calcolo_oneri_cmds = parseFloat(document.getElementById('calcolo_oneri_cmds').value);
	var taeg_cmds = document.getElementById('taeg_cmds').value;
	
	
	//Calcolo spesa d'istruttoria
/*	var limite_spesa_ist_cmds = (((accordato_cmds)*0.15)/100);
		if (limite_spesa_ist_cmds <= 258.23) {
			document.getElementById('spesa_ist_cmds').value = (roundTo((limite_spesa_ist_cmds),2)).toFixed(2);
		} else {
			document.getElementById('spesa_ist_cmds').value = 258.23;
		}*/
		
	document.getElementById('spesa_ist_cmds').value = parseFloat(((accordato_cmds)*0.15)/100);
	
	//Calcolo tempo annualizzato
	document.getElementById('durata_mesi_cmds').value = 3;
	durata_mesi_cmds = document.getElementById('durata_mesi_cmds').value;
	
	var tempo_ann_cmds = durata_mesi_cmds/12;
	
	//Calcolo tasso interessi
	var tasso_int_cmds = 1+(tasso_deb_cmds/100);
	var comm_somme1_cmds = comm_somme_cmds/100;
	
	//Calcolo interessi
	document.getElementById('calcolo_int_cmds').value = roundTo(((accordato_cmds*tasso_deb_cmds*durata_mesi_cmds)/12)/100,2);
	calcolo_int_cmds = ((accordato_cmds*tasso_deb_cmds*durata_mesi_cmds)/12)/100;
	
	//Calcolo commissione messa a disposizione delle somme calcolate
	document.getElementById('comm_dispo_cmds').value = (roundTo(comm_somme1_cmds*accordato_cmds*tempo_ann_cmds,2)).toFixed(2);
		
	//Calcolo oneri totali
	calcolo_oneri_cmds = ((comm_somme1_cmds*accordato_cmds)+spesa_ist_cmds)*tempo_ann_cmds;
	document.getElementById('calcolo_oneri_cmds').value = roundTo((calcolo_oneri_cmds),2);
	
	//Calcolo taeg
	var base_taeg_cmds = (accordato_cmds+calcolo_int_cmds+calcolo_oneri_cmds)/accordato_cmds;
	var esp_taeg_cmds = 1/tempo_ann_cmds;
	document.getElementById('taeg_cmds').value = roundTo(((Math.pow(base_taeg_cmds,esp_taeg_cmds)-1)*100),2);

}
