var a = 50000.00;
var p = 11;
var t = 10;
var d = 0;
var htmlCode = "";
var tStr = "";


function Init()
{
  document.forms.mainform["amount"].value = a.toString();
  document.forms.mainform["percent"].value = p.toString();

  onChangeParameter();
}

function roundPrcs(value, precision)
{
  var val = Math.round(value*Math.pow(10,precision));

  val=val<0 ? "" : val.toString();

  val = val.substring(0,val.length-precision)+"."+val.substring(val.length-precision, val.length);

  return val;
}

function onChangeParameter()
{
  switch (document.forms.mainform["calcscheme"].value)
  {
    case "decr" :
      document.all("pay_header").innerText="Платеж в первый месяц";
      break;
    case "equ" :
      document.all("pay_header").innerText="Ежемесячный платеж";
      break;
    default :
      document.all("pay_header").innerText="";
  }

  calcPay();
}

function calcPay()
{
  a = Number(document.forms.mainform["amount"].value);
  p = Number(document.forms.mainform["percent"].value);
  t = Number(document.forms.mainform["term"].value);
  d = Number(document.forms.mainform["pay"].value);

  switch (document.forms.mainform["calcscheme"].value)
  {
    case "decr" :
      d = a/t+a*p/1200;
      break;
    case "equ" :
      d = a*p/1200/(1-Math.pow(1+p/1200,-t));
      break;
    default :
      d=-1;
  }

  document.forms.mainform["pay"].value = roundPrcs(d, 2);
}

function genTable()
{

  a = Number(document.forms.mainform["amount"].value);
  p = Number(document.forms.mainform["percent"].value);
  t = Number(document.forms.mainform["term"].value);
  var scheme="";
  var db, dp, d;
  var sdb=0, sdp=0, sd=0;

//  document.all("pay_table").innerText="A long time ago";

  for(i=0;i<document.forms.mainform["calcscheme"].options.length;i++)
  {
    if(document.forms.mainform["calcscheme"].options.item(i).selected)
    {
      scheme=document.forms.mainform["calcscheme"].options.item(i).innerText;
      break;
    }
  }
  tStr ="";
  tStr = tStr + "<b>Условия кредитования:</b><br>";
  tStr = tStr + "Схема выплат: "+scheme+".<br>";
  tStr = tStr + "Сумма кредита: "+roundPrcs(a,2)+ "<br>";
  tStr = tStr + "Срок кредитования: "+t+" мес. Процентная ставка: "+roundPrcs(p,2)+"%.<br><br>";
  tStr = tStr + "<b>График возврата кредита и уплаты процентов за пользование кредитом:</b>";
  tStr = tStr + "<table border=0 width=500 cellspacing=3 cellpadding=3 bgcolor=#FEF8E2>";
  tStr = tStr + "<tr bgcolor='#FEECB6'><td>Период (год)</td><td>Возвращаемая часть кредита</td>";
  tStr = tStr + "<td>Проценты по кредиту</td><td>Общая сумма кредита и процентов</td><td>Задолженность</td></tr>";

  db=Number(roundPrcs(a/t,2));
  d=Number(roundPrcs(a*p/1200/(1-Math.pow(1+p/1200,-t)),2));
  var tyear = 0;
  for(i=1;i<t;i++)
  {
    switch (document.forms.mainform["calcscheme"].value)
    {
      case "decr" :
        dp=Number(roundPrcs(a*p/1200,2));
        d=Number(roundPrcs(db+dp,2));
        a=a-db;
        break;
      case "equ" :
        dp=Number(roundPrcs(a*p/1200,2));
        db=Number(roundPrcs(d-dp,2));
        a=a-db;
        break;
      default :
        dp="";
    }
    if ((i-1)%12 == 0) tyear++;
    tStr = tStr + "<tr  bgcolor='#FEF1CB'><td><nobr>"+i+" мес. (" + tyear + ")</nobr></td><td>"+roundPrcs(db,2)+"</td><td>"+roundPrcs(dp,2)+"</td><td>"+roundPrcs(d,2)+"</td><td>"+roundPrcs(a,2)+"</td></tr>";
    sdp+=dp;
    sdb+=db;
    sd+=d;
  }//for

  db=a;
  dp=Number(roundPrcs(db*p/1200,2));
  d=Number(roundPrcs(db+dp,2));
  sdp+=dp;
  sdb+=db;
  sd+=d;

  tStr = tStr + "<tr><td>"+i+" мес. (" + tyear + ") </td><td>"+roundPrcs(db,2)+"</td><td>"+roundPrcs(dp,2)+"</td><td>"+roundPrcs(d,2)+"</td><td>"+roundPrcs(a,2)+"</td></tr>";

  tStr = tStr + "<tr><td><b>Всего:</b></td><td><b>"+roundPrcs(sdb,2)+"</b></td><td><b>"+roundPrcs(sdp,2)+"</b></td><td><b>"+roundPrcs(sd,2)+"</b></td></tr>";

  tStr = tStr + "</table><br>";

    document.all.table_data.innerHTML = "";
    document.all.table_data.innerHTML = tStr;

}
//-------------------------------------------------------------
function myGenTable()
{

  a = Number(document.forms.calcform["amount"].value);
  p = Number(document.forms.calcform["percent"].value);
  t = Number(document.forms.calcform["term"].value);
  
  var scheme="";
  var db, dp, d;
  var sdb=0, sdp=0, sd=0;

  scheme=document.forms.calcform["calcscheme"].value;
    switch (scheme)
    {
      case "decr" :
           var lscheme="Выплаты убывающими платежами (обычные)";
        break;
      case "equ" :
           var lscheme="Выплаты равными платежами (аннуитентные)";
        break;
    }
  
  

  var myCalcRes="";
  
  
  tStr ="";
  tStr = tStr + "<p><b>Условия кредитования:</b><br>";
  tStr = tStr + "Схема выплат: "+lscheme+".<br>";
  tStr = tStr + "Сумма кредита: <b>"+roundPrcs(a,2)+"</b> (руб.)<br>";
  tStr = tStr + "Срок кредитования: <b>"+t+" мес.</b> Процентная ставка: <b>"+roundPrcs(p,2)+"%.</b><br><br></p>";
  tStr = tStr + "<b>График возврата кредита и уплаты процентов за пользование кредитом:</b>";
  tStr = tStr + "<table border=0 width=610 cellspacing=3 cellpadding=3>";
  tStr = tStr + "<tr><td style='background: #DDD;'>Период (год)</td><td style='background: #DDD;'>Возвращаемая часть кредита</td>";
  tStr = tStr + "<td style='background: #DDD;'>Проценты по кредиту</td><td style='background: #DDD;'>Общая сумма кредита и процентов</td><td style='background: #DDD;'>Задолженность</td></tr>";
  
  db=Number(roundPrcs(a/t,2));
  d=Number(roundPrcs(a*p/1200/(1-Math.pow(1+p/1200,-t)),2));
  var tyear = 0;
  var i=1;
  
  for(i=1;i<t;i++)
  {
  
    switch (scheme)
    {
      case "decr" :
        dp=Number(roundPrcs(a*p/1200,2));
        d=Number(roundPrcs(db+dp,2));
        a=a-db;
        break;
      case "equ" :
        dp=Number(roundPrcs(a*p/1200,2));
        db=Number(roundPrcs(d-dp,2));
        a=a-db;
        break;
      default :
        dp="";
    }
    if ((i-1)%12 == 0) tyear++;
    tStr = tStr + "<tr><td><nobr>"+i+" мес. (" + tyear + ")</nobr></td><td>"+roundPrcs(db,2)+"</td><td>"+roundPrcs(dp,2)+"</td><td>"+roundPrcs(d,2)+"</td><td>"+roundPrcs(a,2)+"</td></tr>";
    sdp+=dp;
    sdb+=db;
    sd+=d;
    if (i==1) myCalcRes = roundPrcs(d,2);
  }
  db=a;
  dp=Number(roundPrcs(db*p/1200,2));
  
  d=Number(roundPrcs(db+dp,2));
  
  sdp+=dp;
  sdb+=db;
  sd+=d;

  tStr = tStr + "<tr><td>"+i+" мес. (" + tyear + ") </td><td>"+roundPrcs(db,2)+"</td><td>"+roundPrcs(dp,2)+"</td><td>"+roundPrcs(d,2)+"</td><td>"+roundPrcs(a,2)+"</td></tr>";

  tStr = tStr + "<tr><td><b>Всего:</b></td><td><b>"+roundPrcs(sdb,2)+"</b></td><td><b>"+roundPrcs(sdp,2)+"</b></td><td><b>"+roundPrcs(sd,2)+"</b></td></tr>";

  tStr = tStr + "</table><br>";

    document.getElementById('calc_res').innerHTML = '';
    document.getElementById('calc_res').innerHTML = myCalcRes;
    
    document.getElementById('calc_tab_info').innerHTML = '';
    document.getElementById('calc_tab_info').innerHTML = tStr;
    
    document.getElementById('show_tab').style.display='block';
}


