﻿/* 
Opłaty przy kupnie nieruchomości
Creation-Date 2003-04-02 10:33:19
Edited-Date 2010-03-17 16:38:52 
*/
function check() 
{
var a = "0123456789";
var podatek_od_cc = 0;
var oplata_sadowa = 0;
var oplata_sadowa_150 = 0;
var oplata_sadowa_200 = 0;
var koszt_sadowy = 0;
var taksa_notarialna = 0;
var VAT_od_taksy = 0;
var prowizja_procent = 0;
var prowizja = 0;
var VAT_od_prowizji = 0;
var wypis_strona = 0;
var wypis = 0;
var oplaty_dodatkowe = 0;
var sum = 0;
form = document.forms['calc_real_estate'];
estimate = form.elements['price'].value;
currency = form.elements['currency_value'].options[form.elements['currency_value'].selectedIndex].value;
wypis = form.elements['wypis'].value;
i = estimate.length - 1;
err = true;
j = 0;
for (var j = 0; j < a.length; j++) 
{
if (estimate.charAt(i) == a.charAt(j))
err = false;
}
if (err)
form.elements['price'].value = estimate.substring(0,i);
if ((estimate.length == 1) && (estimate == 0)) 
{
form.elements['price'].value = estimate.substring(0,i);
}
price = parseFloat(estimate) * parseFloat(currency);
if (estimate.length == 0)
price = 0;
if (form.elements['oplata1'].checked)
podatek_od_cc = price * 0.02;
else
podatek_od_cc = price * 0.02;
//Agencja Nieruchomości "ZOFIA" (Mod: 19-Jun-2004)
//Deklaracja PCC-1 kwota z dokladnoscia do pelnych dziesiatek groszy
podatek_od_cc = Math.round(podatek_od_cc*10)/10;
if (!isNaN(podatek_od_cc))
form.elements['podatekodcc'].value = podatek_od_cc.toString(10);
if (form.elements['oplata1'].checked) 
/*
Agencja Nieruchomości "ZOFIA" (Mod: 10-October-2007)
stawki wg rozp. Min. Spr. z 26 wrzesnia 2007 r.	
do 3.000 PLN - 100 PLN;
powyżej 3.000 PLN do 10.000 PLN - 100 PLN + 3 % od nadwyżki powyżej 3.000 PLN;
powyżej 10.000 PLN do 30.000 PLN - 310 PLN + 2 % od nadwyżki powyżej 10.000 PLN;
powyżej 30.000 PLN  do 60.000 PLN -  710  PLN + 1 % od nadwyżki powyżej 30.000  PLN;
powyżej 60.000 PLN do 1.000.000 – 1.010 PLN + 0,4 % od nadwyżki powyżej 60.000 PLN;
powyżej 1.000.000 PLN do 2.000.000 PLN – 4.770 PLN + 0,2 % od nadwyżki powyżej 1.000.000 PLN;
powyżej 2.000.000 PLN – 6.770 PLN + 0,25 % od nadwyżki powyżej 2.000.000 PLN, nie więcej jednak niż 10 000 PLN 
taksa 10 000 PLN odpowiada cenie 3.291.999 PLN
*/	
{
	if ((price > 0) && (price <= 3000))
		taksa_notarialna = 100/2
	if ((price > 3000) && (price <= 10000))
		taksa_notarialna = (100 + ((price - 3000)*0.03))/2;
	if ((price > 10000) && (price <= 30000))
		taksa_notarialna = (310 + ((price - 10000)*0.02))/2;
	if ((price > 30000) && (price <= 60000))
		taksa_notarialna = (710 + ((price - 30000)*0.01))/2;
	if ((price > 60000) && (price <= 1000000))
		taksa_notarialna = (1010 + ((price - 60000)*0.004))/2;
	if ((price > 1000000) && (price <= 2000000))
		taksa_notarialna = (4770 + ((price - 1000000)*0.002))/2;
	if (price > 2000000)
		taksa_notarialna = (6770 + ((price - 2000000)*0.0025))/2;	
	if (taksa_notarialna > 4999.99) taksa_notarialna = 5000;		
}
else if (form.elements['oplata2'].checked) 
{
	if ((price > 0) && (price <= 3000))
		taksa_notarialna = 100
	if ((price > 3000) && (price <= 10000))
		taksa_notarialna = (100 + (price - 3000)*0.03);
	if ((price > 10000) && (price <= 30000))
		taksa_notarialna = (310 + (price - 10000)*0.02);
	if ((price > 30000) && (price <= 60000))
		taksa_notarialna = (710 + (price - 30000)*0.01);
	if ((price > 60000) && (price <= 1000000))
		taksa_notarialna = (1010 + (price - 60000)*0.004);
	if ((price > 1000000) && (price <= 2000000))
		taksa_notarialna = (4770 + (price - 1000000)*0.002);
	if (price > 2000000)
		taksa_notarialna = (6770 + (price - 2000000)*0.0025);			
	if (taksa_notarialna > 9999.99) taksa_notarialna = 10000;
}
else if (form.elements['oplata3'].checked) 
{
	if ((price > 0) && (price <= 3000))
		taksa_notarialna = 100
	if ((price > 3000) && (price <= 10000))
		taksa_notarialna = (100 + (price - 3000)*0.03);
	if ((price > 10000) && (price <= 30000))
		taksa_notarialna = (310 + (price - 10000)*0.02);
	if ((price > 30000) && (price <= 60000))
		taksa_notarialna = (710 + (price - 30000)*0.01);
	if ((price > 60000) && (price <= 1000000))
		taksa_notarialna = (1010 + (price - 60000)*0.004);
	if ((price > 1000000) && (price <= 2000000))
		taksa_notarialna = (4770 + (price - 1000000)*0.002);
	if (price > 2000000)
		taksa_notarialna = (6770 + (price - 2000000)*0.0025);			
	if (taksa_notarialna > 9999.99) taksa_notarialna = 10000;
}
//Agencja Nieruchomości "ZOFIA" (Mod: 15-Jul-2004)
if (form.elements['oplata2'].checked && form.elements['register_new'].checked==true)
{
koszt_sadowy = 60;
}
if (form.elements['oplata1'].checked && form.elements['register_new'].checked==true)
{
koszt_sadowy = 60;
}
//Agencja Nieruchomości "ZOFIA" (Mod: 1-March-2006)
if (form.elements['oplata3'].checked && form.elements['register_new'].checked==true)
{
koszt_sadowy = 60;
}
if (form.elements['oplata1'].checked && form.elements['register'].checked==false) 
{
oplata_sadowa = 0;
form.elements['oplatasadowa'].value = "nie ma";
}
//Agencja Nieruchomości "ZOFIA" (Mod: 1-March-2006)
else if (form.elements['oplata1'].checked && form.elements['register'].checked==true) 
{
	if ((price > 0))
	oplata_sadowa_200 = 200;	
//Agencja Nieruchomości "ZOFIA" (Mod: 19-Jun-2004)
oplata_sadowa = (koszt_sadowy) + (oplata_sadowa_200);

oplata_sadowa = Math.round(oplata_sadowa*10)/10;
	if (!isNaN(oplata_sadowa) )
	form.elements['oplatasadowa'].value = oplata_sadowa.toString(10);
	else
	form.elements['oplatasadowa'].value = "";	
}
//Agencja Nieruchomości "ZOFIA" (Mod: 1-March-2006)
else if (form.elements['oplata2'].checked) 
{
	if ((price > 0))
	oplata_sadowa_200 = 200;	
//Agencja Nieruchomości "ZOFIA" (Mod: 19-Jun-2004)
oplata_sadowa = (koszt_sadowy) + (oplata_sadowa_200);
oplata_sadowa = Math.round(oplata_sadowa*10)/10;
	if (!isNaN(oplata_sadowa) )
	form.elements['oplatasadowa'].value = oplata_sadowa.toString(10);
	else
	form.elements['oplatasadowa'].value = "";	
}
//Agencja Nieruchomości "ZOFIA" (Mod: 1-March-2006)
else if (form.elements['oplata3'].checked) 
{
	if ((price > 0))
	oplata_sadowa_150 = 150;	
oplata_sadowa = (koszt_sadowy) + (oplata_sadowa_150);
oplata_sadowa = Math.round(oplata_sadowa*10)/10;
	if (!isNaN(oplata_sadowa) )
	form.elements['oplatasadowa'].value = oplata_sadowa.toString(10);
	else
	form.elements['oplatasadowa'].value = "";
	
}	
/* Agencja Nieruchomości "ZOFIA" (Mod: 19-Jun-2004)
Dodano koszt od załozenia KW 40 zl
Agencja Nieruchomości "ZOFIA" (Mod: 1-March-2006)
Oplata stala w kwocie 200 zlotych od wniosku o wpis w KW
Oplata stala w kwocie 150 zlotych od wniosku o wpis w KW rolne
Oplata stala od wniosku o założenie KW w kwocie 60 zlotych
Wersja poprzednia:
else if (form.elements['oplata2'].checked || form.elements['register'].checked==true) {
	if ((price > 0) && (price <= 10000))
	oplata_sadowa = price * 0.08;
	if ((price > 10000) && (price <= 50000))
	oplata_sadowa = 800 + ((price - 10000) * 0.07);
	if ((price > 50000) && (price <= 100000))
	oplata_sadowa = 3600 + ((price - 50000) * 0.06);
	if (price > 100000)
	oplata_sadowa = 6600 + ((price - 100000) * 0.05);
oplata_sadowa = (koszt_sadowy) + (oplata_sadowa * 0.2);
if (oplata_sadowa < 20)
oplata_sadowa = 0;
if (oplata_sadowa > 100000)
oplata_sadowa = 100000;
 */
/*Agencja Nieruchomości "ZOFIA" (Mod: 19-Jun-2004)
Koncowki oplat zaokragla sie wzwyz do pelnej dziesiatki groszy */
taksa_notarialna = Math.round(taksa_notarialna*100)/100;
if (!isNaN(taksa_notarialna))
form.elements['taksanotarialna'].value = taksa_notarialna.toString(10);
VAT_od_taksy = taksa_notarialna * 0.22;
VAT_od_taksy = Math.round(VAT_od_taksy*100)/100;
if (!isNaN(VAT_od_taksy))
form.elements['vatodtaksy'].value = VAT_od_taksy.toString(10);
// Wynagrodzenie Agencji
prowizja_procent = form.elements['prowizjaprocent'].value;
i = prowizja_procent.length - 1;
err = true;
j = 0;
for (var j = 0; j < a.length; j++) 
{
if (prowizja_procent.charAt(i) == a.charAt(j))
err = false;
}
if ((prowizja_procent.charAt(i) == ",") || (prowizja_procent.charAt(i) == ".")) 
{
form.elements['prowizjaprocent'].value = prowizja_procent.substring(0,i) + ".";
err = false 
}
if (err)
form.elements['prowizjaprocent'].value = prowizja_procent.substring(0,i);
if ((estimate.length == 1) && (estimate == 0)) 
{
form.elements['prowizjaprocent'].value = prowizja_procent.substring(0,i);
}
prowizja_procent = parseFloat(prowizja_procent);
if (prowizja_procent.length == 0)
prowizja_procent = 0;
prowizja = price * prowizja_procent * 0.01;
prowizja = Math.ceil(prowizja);
//Agencja Nieruchomości "ZOFIA" (Mod: 3-Nov-2008)
if ((price > 0) && (price <= 100000))
prowizja = 3660;
if (!isNaN(prowizja))
form.elements['prowizja'].value = prowizja.toString(10);
/* Agencja Nieruchomości "ZOFIA
wprowadzono VAT 5 maja 2004
VAT_od_prowizji = prowizja * 0.22;
VAT_od_prowizji = Math.round(VAT_od_prowizji*100)/100;
if (!isNaN(VAT_od_prowizji))
form.elements['vatodprowizji'].value = VAT_od_prowizji.toString(10);
po szkoleniu MSPON wprowadzono wynagrodzenie brutto
Edited-Date 2009-12-17 19:34:18 
*/
// Wypis Aktu Notarialnego 2009-12-17
wypis_strona = form.elements['WypisStrona'].value;
i = wypis_strona.length - 1;
err = true;
j = 0;
for (var j = 0; j < a.length; j++) 
{
if (wypis_strona.charAt(i) == a.charAt(j))
err = false;
}
if ((wypis_strona.charAt(i) == ",") || (wypis_strona.charAt(i) == ".")) 
{
form.elements['WypisStrona'].value = wypis_strona.substring(0,i) + ".";
err = false 
}
if (err)
form.elements['WypisStrona'].value = wypis_strona.substring(0,i);
if ((estimate.length == 1) && (estimate == 0)) 
{
form.elements['WypisStrona'].value = wypis_strona.substring(0,i);
}
wypis_strona = parseFloat(wypis_strona);
if (wypis_strona.length == 0)
wypis_strona = 0;
wypis = wypis_strona * 7.32;
if (!isNaN(wypis))
form.elements['wypis'].value = wypis.toString(10);
// Suma
oplaty_dodatkowe = podatek_od_cc + oplata_sadowa + taksa_notarialna + VAT_od_taksy + prowizja + wypis;
oplaty_dodatkowe = Math.round(oplaty_dodatkowe*100)/100;
if (!isNaN(oplaty_dodatkowe))
form.elements['oplatydodatkowe'].value = oplaty_dodatkowe.toString(10);
sum = price + oplaty_dodatkowe;
sum = Math.round(sum*100)/100;
if (!isNaN(sum))
form.elements['sum'].value = sum.toString(10);
}
function change(r1,r2,r3) 
{
if (r1.checked)
r2.checked = false;
r3.checked = false;
}