function comma2dot(str)
{
 var i;
 var j;
 var tmp='';

  i = str.length;
  for (j=0;j<=i;j++)
  {
 	if (!isNaN(str.charAt(j)))
	{
	  tmp=tmp + str.charAt(j);
	}
 	else
 	{
 	  if (str.charAt(j) == ',')
	    tmp = tmp +'.';
 	}
  }

  return tmp;
}

function paddzero(num,dec)
{
 var p;

  if (isNaN(num) )return'';

  p = Math.pow(10,dec);

  num = (Math.round(num * p))/p;	

  if(num == 0)
    return 0;
  
  rets = num.toString(10);
  dot = rets.lastIndexOf('.');

  if(dot == -1) 
  {
    c = dec;
	rets+='.';
  }
  else 
  {
    c = dec - rets.length + dot + 1;
  };

  for (i = 0; i < c; i++)
    rets += '0';

  return rets;
}

// najwieksza funkcja ;] 
function fill()  
{
 var taksa_vat = 0;
 var prowizja = 0;
 var ksiega = 0;
 var oplata_skarb = 0;
 var prowizja_agencja = 0.025;
 var cyfry = "0123456789";
 var oplata_sadowa = 0;
 var oplaty_dod = 0;
 var suma = 0;
 var taksa_not = 0;

  form = document.getElementById('kalk');
  wartosc = form.elements['cenam'].value;
  prowizja_agencja = comma2dot(form.elements['prowizja_agencja'].value);

  if (prowizja_agencja.length == 0 || prowizja_agencja == null)
    prowizja_agencja='a1';

  if (isNaN(prowizja_agencja))
    prowizja_agencja = 2.5 / 100; 
  else 
    prowizja_agencja = parseFloat(prowizja_agencja) / 100;

  i = wartosc.length - 1;
  err = true;

  for (j = 0; j < cyfry.length; j++) 
  {
    if (wartosc.charAt(i) == cyfry.charAt(j))
      err = false;
  }

  if(err)
    form.elements['cenam'].value = wartosc.substring(0,i);

  if((wartosc.length == 1) && (wartosc == 0)) 
  {
    form.elements['cenam'].value = wartosc,+"00".substring(0,i);
  };

  cenam = parseFloat(wartosc);

  if(wartosc.length == 0)

  cenam = 0;

  if (form.elements['oplata1'].checked)
    oplata_skarb = cenam * 0.02;
  else
    oplata_skarb = cenam * 0.02;

  oplata_skarb = (Math.round(oplata_skarb * 100))/100;

  if(!isNaN(oplata_skarb))
    form.elements['oplataskarbowa'].value = paddzero(oplata_skarb,2).toString(10);

  if(form.elements['oplata1'].checked) 
  {
    if((cenam > 0) && (cenam <= 3000))
	  taksa_not = 100/2;
	
	if((cenam > 3000) && (cenam <= 10000))
	  taksa_not = (100 + ((cenam - 3000)*0.03))/2;

	if((cenam > 10000) && (cenam <= 30000))
      taksa_not = (310 + ((cenam - 10000)*0.02))/2;

	if((cenam > 30000) && (cenam <= 60000))
	  taksa_not = (710 + ((cenam - 30000)*0.01))/2;

	if((cenam > 60000) && (cenam <= 1000000))
	  taksa_not = (1010 + ((cenam - 60000)*0.005))/2;

	if(cenam > 1000000)
      taksa_not = (5710 + ((cenam - 1000000)*0.0025))/2;

	taksa_not = (Math.round(taksa_not * 100))/100;

    if(!isNaN(taksa_not))
      form.elements['taksanotarialna'].value = paddzero(taksa_not,2).toString(10);
  }
  else if(form.elements['oplata2'].checked) 
  {
	if((cenam > 0) && (cenam <= 3000))
	  taksa_not = 100;

	if((cenam > 3000) && (cenam <= 10000))
	  taksa_not = 100 + ((cenam - 3000)*0.03);

	if((cenam > 10000) && (cenam <= 30000))
	  taksa_not = 310 + ((cenam - 10000)*0.02);

	if((cenam > 30000) && (cenam <= 60000))
	  taksa_not = 710 + ((cenam - 30000)*0.01);

	if ((cenam > 60000) && (cenam <= 1000000))
	  taksa_not = 1010 + ((cenam - 60000)*0.005);

	if (cenam > 1000000)
	  taksa_not = 5710 + ((cenam - 1000000)*0.0025);

	taksa_not = (Math.round(taksa_not * 100))/100;

    if(!isNaN(taksa_not))
      form.elements['taksanotarialna'].value = paddzero(taksa_not,2).toString(10);
  }
  else if(form.elements['oplata3'].checked) 
  {
    if ((cenam > 0) && (cenam <= 3000))
	  taksa_not = 100/2;

	if((cenam > 3000) && (cenam <= 10000))
      taksa_not = (100 + ((cenam - 3000)*0.03))/2;

	if((cenam > 10000) && (cenam <= 30000))
	  taksa_not = (310 + ((cenam - 10000)*0.02))/2;

	if((cenam > 30000) && (cenam <= 60000))
	  taksa_not = (710 + ((cenam - 30000)*0.01))/2;

	if((cenam > 60000) && (cenam <= 1000000))
	  taksa_not = (1010 + ((cenam - 60000)*0.005))/2;

	if(cenam > 1000000)
	  taksa_not = (5710 + ((cenam - 1000000)*0.0025))/2;

	taksa_not = (Math.round(taksa_not * 100))/100;

    if(!isNaN(taksa_not))
      form.elements['taksanotarialna'].value = paddzero(taksa_not,2).toString(10);
  }
  else if(form.elements['oplata4'].checked) 
  {
    if((cenam > 0) && (cenam <= 3000))
	  taksa_not = 100/2;

	if((cenam > 3000) && (cenam <= 10000))
	  taksa_not = (100 + ((cenam - 3000)*0.03))/2;

	if((cenam > 10000) && (cenam <= 30000))
		taksa_not = (310 + ((cenam - 10000)*0.02))/2;

	if ((cenam > 30000) && (cenam <= 60000))
	  taksa_not = (710 + ((cenam - 30000)*0.01))/2;

	if((cenam > 60000) && (cenam <= 1000000))
	  taksa_not = (1010 + ((cenam - 60000)*0.005))/2;

	if(cenam > 1000000)
	  taksa_not = (5710 + ((cenam - 1000000)*0.0025))/2;

	taksa_not = (Math.round(taksa_not * 100))/100;

    if(!isNaN(taksa_not))
      form.elements['taksanotarialna'].value = paddzero(taksa_not,2).toString(10);
  }


  taksa_vat = taksa_not * 0.22;
  taksa_vat = (Math.round(taksa_vat * 100))/100;
  
  if(!isNaN(taksa_vat))
    form.elements['vatodtaksy'].value = paddzero(taksa_vat,2).toString(10);

  prowizja = cenam * prowizja_agencja;
  prowizja = (Math.round(prowizja * 100))/100;

  if(!isNaN(prowizja))
    form.elements['prowizja'].value = paddzero(prowizja,2).toString(10);

  prowizja_vat = (prowizja * 1.22)-prowizja;
  prowizja_vat = (Math.round(prowizja_vat * 100))/100;

  if(!isNaN(prowizja_vat))
    form.elements['prowizja_vat'].value = paddzero(prowizja_vat,2).toString(10);

  if(form.elements['oplata1'].checked) 
  {
    oplata_sadowa = 0;
    form.elements ['oplatasadowa'].value = "brak";
  }
  else if(form.elements['oplata2'].checked) 
  {
	if((cenam > 0) && (cenam <= 10000))
	  oplata_sadowa = cenam * 0.08;

	if((cenam > 10000) && (cenam <= 50000))
	  oplata_sadowa = 800 + ((cenam - 10000) * 0.07);

	if((cenam > 50000) && (cenam <= 100000))
	  oplata_sadowa = 3600 + ((cenam - 50000) * 0.06);

	if(cenam > 100000)
	  oplata_sadowa = 6600 + ((cenam - 100000) * 0.05);

	oplata_sadowa = oplata_sadowa * 0.2;

    if(oplata_sadowa < 30)
	  oplata_sadowa = 30;
    
	if (oplata_sadowa > 100000)
	  oplata_sadowa = 100000;

    oplata_sadowa = (Math.round(oplata_sadowa * 100))/100;

	if (!isNaN(oplata_sadowa))
	  form.elements['oplatasadowa'].value = paddzero(oplata_sadowa,2).toString(10);
	else
	  form.elements['oplatasadowa'].value = "";
  }
  else if (form.elements['oplata3'].checked) 
  {
	if((cenam > 0) && (cenam <= 10000))
	  oplata_sadowa = cenam * 0.08;

	if((cenam > 10000) && (cenam <= 50000))
	  oplata_sadowa = 800 + ((cenam - 10000) * 0.07);

	if((cenam > 50000) && (cenam <= 100000))
	  oplata_sadowa = 3600 + ((cenam - 50000) * 0.06);

	if (cenam > 100000)
	  oplata_sadowa = 6600 + ((cenam - 100000) * 0.05);

    oplata_sadowa = oplata_sadowa * 0.2;

    if(oplata_sadowa < 30)
	  oplata_sadowa = 30;

    if (oplata_sadowa > 100000)
	  oplata_sadowa = 100000;

    oplata_sadowa = (Math.round(oplata_sadowa * 100))/100;

	if(!isNaN(oplata_sadowa))
	  form.elements['oplatasadowa'].value = paddzero(oplata_sadowa,2).toString(10);
	else
	  form.elements['oplatasadowa'].value = "";

  }
  else if (form.elements['oplata4'].checked) 
  {
	if ((cenam > 0) && (cenam <= 10000))
	  oplata_sadowa = cenam * 0.08;

	if((cenam > 10000) && (cenam <= 50000))
	  oplata_sadowa = 800 + ((cenam - 10000) * 0.07);

	if((cenam > 50000) && (cenam <= 100000))
	  oplata_sadowa = 3600 + ((cenam - 50000) * 0.06);

	if(cenam > 100000)
	  oplata_sadowa = 6600 + ((cenam - 100000) * 0.05);

    oplata_sadowa = oplata_sadowa * 0.05 + 40;

    if(oplata_sadowa < 30)
	  oplata_sadowa = 30;

    if(oplata_sadowa > 100000)
	  oplata_sadowa = 100000;

    oplata_sadowa = (Math.round(oplata_sadowa * 100))/100;

	if(!isNaN(oplata_sadowa))
	  form.elements['oplatasadowa'].value = paddzero(oplata_sadowa,2).toString(10);
	else
	  form.elements['oplatasadowa'].value = "";
  };

  if(form.elements['oplata1'].checked) 
  {
	ksiega = 0;
	form.elements['ksiega'].value = "brak";
  }
  else
  {
	ksiega = 244;
	ksiega = (Math.round(ksiega * 100))/100;
	
	if(!isNaN(ksiega))
	  form.elements['ksiega'].value = paddzero(ksiega,2).toString(10);
	else
	  form.elements['ksiega'].value = "";
  };

  oplaty_dod = taksa_not + oplata_skarb + taksa_vat + oplata_sadowa;
  oplaty_dod = (Math.round(oplaty_dod * 100))/100;

  suma = prowizja + prowizja_vat + oplaty_dod + ksiega;
  suma = (Math.round(suma * 100))/100;

  if(!isNaN(suma))
    form.elements['suma'].value = paddzero(suma,2).toString(10);
} // fill()


function change(r) 
{
form = document.getElementById('kalk');
	form.oplata1.checked = false;
	form.oplata2.checked = false;
	form.oplata3.checked = false;
	form.oplata4.checked = false;
    r.checked = true;
}
