// JavaScript Document

function controllaNumero(input, min, max, msg)
{
    msg = msg + " ha un valore non valido: " + input.value;
    var str = input.value;
    for (var i = 0; i < str.length; i++) {
        var ch = str.substring(i, i + 1)
        if ((ch < "0" || "9" < ch) && ch != '.') {
            alert(msg);
            return false;
        }
    }
    var num = parseFloat(str)
    if (num < min || max < num) {
        alert(msg + " not in range [" + min + ".." + max + "]");
        return false;
    }
    input.value = str;
    return true;
}
function calcolaCampo(input)
{
    if (input.value != null && input.value.length != 0)
        input.value = "" + eval(input.value);
 
 
    input.value = format(input.value);
	
 
}
 
 
function calcolaCampo2(input)
{
    if (input.value != null && input.value.length != 0)
        input.value = "" + eval(input.value);
}
 
 
 
 
function calcolaModulo(form)
{
 
    form.capitale.value = unformat(form.capitale.value);    
 
    if ((form.pagamenti.value == null || form.pagamenti.value.length == 0) ||
        (form.interesse.value == null || form.interesse.value.length == 0) ||
        (form.capitale.value == null || form.capitale.value.length == 0)) {
        return;
    }
    if (!controllaNumero(form.pagamenti, 1, 480, "# of pagamenti") ||
        !controllaNumero(form.interesse, .001, 99, "Interesse") ||
        !controllaNumero(form.capitale, 500, 500000, "Capitale")) {
        form.rata.value = "Invalid";
        return;
    }
 
    form.numerorate.value=form.pagamenti.value * form.periodo.value
 
    var i = form.interesse.value;
    if (i > 1.0) {
        i = i / 100.0;
        form.interesse.value = i;
    }
    i /=form.periodo.value;
    var param = Math.pow(  (1 + i ) , form.numerorate.value ) ;
    form.rata.value = (form.capitale.value * i * param) / (param - 1)
 
    form.capitale.value = format(form.capitale.value);
    form.rata.value=format(form.rata.value);
    form.interesse.value=form.interesse.value * 100	    
}
function cancellaModulo(form)
{
    form.pagamenti.value = "";
    form.interesse.value = "";
    form.capitale.value = "";
}
 
 
 
function formatta(form) {
		form.capitale.value = format(valore);
    }
 
function format(number) {
      number = (Math.round(number*100)/100);
      var oldNum = '' + number;
      var newNum = '';
      decPos = oldNum.indexOf('.');
      if(decPos >= 0) {
        newNum = ','+oldNum.substring(decPos+1,oldNum.length);
      }
      else {
        newNum = '';
        decPos = oldNum.length;
      }
      for (var i=decPos; i>0; i -= 3) {
        if (i > 3) {
          newNum = '.'+oldNum.substring(i-3,i)+newNum;
        }
        else {
          newNum = oldNum.substring(i-3,i)+newNum;
        }
      }
      return newNum;
    }
 
function unformat(number) {
      var oldNum = '' + number;
      var newNum = '';
      migPos = oldNum.indexOf('.');
      while (migPos >= 0) {
        if (migPos >=0) {
          oldNum = oldNum.substring(0,migPos)+oldNum.substring(migPos+1,oldNum.length);
          migPos = oldNum.indexOf('.');
        }
      }
      decPos = oldNum.indexOf(',');
      if (decPos >0) {
        newNum = oldNum.substring(0,decPos)+'.'+oldNum.substring(decPos+1,oldNum.length);
      }
      else if (decPos == 0) {
        newNum = '0.'+oldNum.substring(decPos+1,oldNum.length);
      }
      else {
        newNum = oldNum;
      }
      return newNum;
    }
 
 
 
 
 
function nuovo(form) {
 
    form.capitale.value = unformat(form.capitale.value);    
 
    if ((form.pagamenti.value == null || form.pagamenti.value.length == 0) ||
        (form.interesse.value == null || form.interesse.value.length == 0) ||
        (form.capitale.value == null || form.capitale.value.length == 0)) {
        return;
    }
    if (!controllaNumero(form.pagamenti, 1, 480, "# of pagamenti") ||
        !controllaNumero(form.interesse, .001, 99, "Interesse") ||
        !controllaNumero(form.capitale, 500, 500000, "Capitale")) {
        form.rata.value = "Invalid";
        return;
    }
 
    form.numerorate.value=form.pagamenti.value * form.periodo.value
 
    var i = form.interesse.value;
    if (i > 1.0) {
        i = i / 100.0;
        form.interesse.value = i;
    }
    i /=form.periodo.value;
    var param = Math.pow(  (1 + i ) , form.numerorate.value ) ;
    form.rata.value = (form.capitale.value * i * param) / (param - 1)
 
    form.capitale.value = format(form.capitale.value);
    form.rata.value=format(form.rata.value);
    form.interesse.value=form.interesse.value * 100
 
 
 
var ammortamento = '';
ammortamento += '<p>&nbsp;</p>';
ammortamento += '<table width="100%" border="0" cellpadding="5" cellspacing="1">';
ammortamento += '<tr>'; 
ammortamento += '<td align="center" colspan="7" class="alt"><strong>Calcolo del mutuo</strong></td>';
ammortamento += '</tr>';
ammortamento += '<tr>'; 
ammortamento += '<th colspan="2"><strong>Tasso di interesse</strong></td>';
ammortamento += '<th><strong>Numero delle Rate</strong></td>';
ammortamento += '<th colspan="2"><strong>Capitale Iniziale</strong></td>';
ammortamento += '<th colspan="2"><strong>Frequenza pagamenti</strong></td>';
ammortamento += '</tr>';
ammortamento += '<tr>'; 
ammortamento += '<td align="center" colspan="2">' + form.interesse.value + '%</td>';
ammortamento += '<td align="center"><strong>'+ form.numerorate.value +'</strong></td>';
ammortamento += '<td align="center" colspan="2">&euro; '+ format(Math.round(unformat(form.capitale.value))) +'</td>';
//finestra.document.write('<td align="center" bgcolor="#C0C0C0"><img src=images/euro.gif width="14" height="21">'+ format(Math.round(unformat(form.capitale.value)/1936.27)) +'</td>');

if (form.periodo.value == 1) {
ammortamento += '<td align="center" colspan="2"><strong>Annuale</strong></td>';
}
if (form.periodo.value == 2) {
ammortamento += '<td align="center" colspan="2"><strong>Semestrale</strong></td>';
}
if (form.periodo.value == 3) {
ammortamento += '<td align="center" colspan="2"><strong>Quadrimestrale</strong></td>';
}
if (form.periodo.value == 4) {
ammortamento += '<td align="center" colspan="2"><strong>Trimestrale</strong></td>';
}
if (form.periodo.value == 12) {
ammortamento += '<td align="center" colspan="2"><strong>Mensile</strong></td>';
}

ammortamento += '</tr>';
ammortamento += '<tr>';
ammortamento += '<th colspan="2"><strong>Importo da restituire</strong></td>';
ammortamento += '<th colspan="3"><strong>Importo rata </strong></td>';
ammortamento += '<th colspan="2"><strong>Totale interessi</strong></td>';
ammortamento += '</tr>';
ammortamento += '<tr>';
ammortamento += '<td align="center" colspan="2">&euro; '+ format(Math.round(unformat(form.rata.value)*form.numerorate.value)) +'</td>';
//finestra.document.write('<td align="center" bgcolor="#C0C0C0"><img src=images/euro.gif width="14" height="21">'+ format((unformat(form.rata.value)*form.numerorate.value)/1936.27) +'</td>');
ammortamento += '<td align="center" colspan="3">&euro; '+ format(Math.round(unformat(form.rata.value))) +'</td>';
//finestra.document.write('<td align="center" colspan="2" bgcolor="#C0C0C0"><img src=images/euro.gif width="14" height="21">'+ format(unformat(form.rata.value)/1936.27) +'</td>');
ammortamento += '<td align="center" colspan="2">&euro; '+ format((Math.round(unformat(form.rata.value)*form.numerorate.value))-Math.round(unformat(form.capitale.value))) +'</td>';
//finestra.document.write('<td align="center" bgcolor="#C0C0C0"><img src=images/euro.gif width="14" height="21">'+ format(((unformat(form.rata.value)*form.numerorate.value)-unformat(form.capitale.value))/1936.27) +'</td>');
ammortamento += '</tr>';
ammortamento += '</table>';
ammortamento += '<p>&nbsp;</p>';




ammortamento += '<h4>Piano di ammortamento</h4>';
ammortamento += '<p>&nbsp;</p>';
ammortamento += '<table width="100%" border="0" cellpadding="5" cellspacing="1">';
ammortamento += '<tr>'; 
ammortamento += '<th>N&deg; rata</td>';
ammortamento += '<th colspan="2">Interesse</td>';
ammortamento += '<th colspan="2">Capitale</td>';
ammortamento += '<th colspan="2">Saldo passivo</td>';
ammortamento += '</tr>';



var capitale=unformat(form.capitale.value);
var rata=unformat(form.rata.value);
var numerorate=(form.numerorate.value);
var tassointeresse=form.interesse.value;
var periodo=form.periodo.value

for (i=1;i<=form.numerorate.value; i++){



var intx=((capitale*tassointeresse)/100)/periodo;	
var capit=rata-intx;

ammortamento += '<tr>';
ammortamento += '<td align="center">'+ i +'</td>';
ammortamento += '<td align=left  colspan="2">&euro; '+ format(Math.round(intx)) +'</td>';
//finestra.document.write('<td align=left bgcolor=#C0C0C0><img src=images/euro.gif>'+format(intx/1936.27)+'</td>');
ammortamento += '<td align=left  colspan="2">&euro; '+ format(Math.round(capit)) +'</td>';
//finestra.document.write('<td align=left bgcolor=#C0C0C0><img src=images/euro.gif>'+format(capit/1936.27)+'</td>');
 
capitale=capitale-capit;    
 
ammortamento += '<td align=left  colspan="2">&euro; '+ format(Math.round(capitale)) +'</td>';
//finestra.document.write('<td align=left bgcolor=#C0C0C0><img src=images/euro.gif>'+format(capitale/1936.27)+'</td>');
ammortamento += '</tr>';


}
 
ammortamento += '</table>';

	//	Inserisce il piano di ammortamento
	$('#ammortamento').html(ammortamento);
}
 
function somma() {
var vettore=new Array(20);
	tot=90000;
	var vettore;
	var p;
vettore[1]=parseFloat(document.boll.pz1.options[document.boll.pz1.selectedIndex].value);
vettore[2]=parseFloat(document.boll.pz2.options[document.boll.pz2.selectedIndex].value);
vettore[3]=parseFloat(document.boll.pz3.options[document.boll.pz3.selectedIndex].value);
vettore[4]=parseFloat(document.boll.pz4.options[document.boll.pz4.selectedIndex].value);
vettore[5]=parseFloat(document.boll.pz5.options[document.boll.pz5.selectedIndex].value);
vettore[6]=parseFloat(document.boll.pz6.options[document.boll.pz6.selectedIndex].value);
vettore[7]=parseFloat(document.boll.pz7.options[document.boll.pz7.selectedIndex].value);
vettore[8]=parseFloat(document.boll.pz8.options[document.boll.pz8.selectedIndex].value);;
vettore[9]=parseFloat(document.boll.pz9.options[document.boll.pz9.selectedIndex].value);
vettore[10]=parseFloat(document.boll.pz10.options[document.boll.pz10.selectedIndex].value);
vettore[11]=parseFloat(document.boll.pz11.options[document.boll.pz11.selectedIndex].value);
vettore[12]=0;
for (i=1;i<=12; i++){
	tot=tot+vettore[i];
	}
}
