// Skrypt obliczający taksę notarialną
//
// Autor: P.H.U. "GRAFIT" S.C.
//        Specjalista ds. oprogramowania i administracji stron WWW
//
//            mgr inż. Adam Korbel

// Funkcja obsługująca radio buttony
function changeOption(formid,opt)
{
  switch(opt)
  {
  case 1:
    formid.oplata1.checked=true;
    formid.zkw.disabled=false;
    formid.oplata2.checked=false;
    formid.oplata3.checked=false;
    break;
  case 2:
    formid.oplata1.checked=false;
    formid.zkw.disabled=true;
    formid.oplata2.checked=true;
    formid.oplata3.checked=false;
    break;
  case 3:
    formid.oplata1.checked=false;
    formid.zkw.disabled=true;
    formid.oplata2.checked=false;
    formid.oplata3.checked=true;
    break;
  }
  calculateTN(formid);
}

// Funkcja obliczająca wpis do księgi wieczystej dla mieszkania spółdzielczego-własnościowego
function calculateZKW(formid)
{
  calculateTN(formid);
}

// Funkcja usuwająca niepotrzebne znaki z ceny i kalkulująca taksę notarialną
function recalculate(formid)
{
  var kwota=formid.cena.value;
  var pozycja=kwota.length-1;
  var str="0123456789";
  var znalezione=false;
  for(var i=0;i<str.length;i++)
    if(kwota.charAt(pozycja)==str.charAt(i))
    {
      znalezione=true;
      break;
    }
  if(!znalezione)
    formid.cena.value=kwota.substring(0,pozycja);
  while(kwota.length>=1 && kwota==0)
  {
    formid.cena.value=kwota.substring(0,pozycja);
    kwota=formid.cena.value;
    pozycja=kwota.length-1;
  }
  calculateTN(formid);
}

// Funkcja obliczająca taksę notarialną
function calculateTN(formid)
{
  var vatw,wn,cn,pod,opsadowa,ogsuma,twvt,taxa,vatt,podzialka,prow;
  ogsuma=0;
  suma=0;
  twvat=0;
  if(formid.cena.value.length==0)
    cn=0;
  else
    cn=parseFloat(formid.cena.value);
  if(formid.oplata1.checked)
  {
    if(formid.zkw.checked)
    {
      wn=200;
      vatw=Math.round(wn*22/100);
      opsadowa=200;
    }
    else
    {
      wn=0;
      vatw=0;
      opsadowa=0;
    }
    podzialka=2;
  }
  if(formid.oplata2.checked)
  {
    wn=200;
    vatw=Math.round(wn*22/100);
    opsadowa=200;
    podzialka=2;
  }
  if(formid.oplata3.checked)
  {
    wn=200;
    vatw=Math.round(wn*22/100);
    opsadowa=200;
    podzialka=1;
  }
  taxa=0;
  if(cn>0 && cn<=3000)
    taxa=100/podzialka;
  if(cn>3000 && cn<=10000)
    taxa=(100+(cn-3000)*3/100)/podzialka;
  if(cn>10000 && cn<=30000)
    taxa=(310+(cn-10000)*2/100)/podzialka;
  if(cn>30000 && cn<=60000)
    taxa=(710+(cn-30000)*1/100)/podzialka;
  if(cn>60000 && cn<=1000000)
    taxa=(1010+(cn-60000)*0.4/100)/podzialka;
  if(cn>1000000 && cn<=2000000)
    taxa=(4770+(cn-1000000)*0.2/100)/podzialka;
  if(cn>2000000)
  {
    taxa=Math.round((6770+(cn-2000000)*0.25/100)/podzialka);
    if(taxa>10000)
      taxa=10000;
  }
  taxa=Math.round(taxa);
  vatt=Math.round(taxa*22/100);
  twvt=wn+vatw+taxa+vatt;
  pod=Math.round(cn*2/100);
  prow=Math.round(cn*3/100);
  prow=prow+Math.round(prow*22/100);
  ogsuma=twvt+opsadowa+pod+200;
  formid.wniosek.value=wn+" zł";
  formid.vwniosek.value=vatw+" zł";
  formid.taksa.value=taxa+" zł";
  formid.vtaksa.value=vatt+" zł";
  formid.podatekczcyw.value=pod+" zł";
  formid.prowizja.value=prow+" zł";
  formid.osadowa.value=opsadowa+" zł";
  formid.osuma.value="ok."+ogsuma+" zł";
}
