//--GE-laskimen Javascript-funktiot
//--- Pop-upin avaamis-funktio
function Avaa_laskin(urli) {
	window.open(urli,'Rahoituslaskin','directories=no,location=no,menubar=yes,toolbar=no,resizable=yes,scrollbars=yes,width=670,height=500');
}

//--- Desimaalien laitto-funktio
function Py(numero) {
	kerto = numero*100
	raundi = Math.round(kerto)
	jako = raundi/100
	return jako
}
//--- Kokonaislukupyöristys
function Py_kl(numero) {
	//kerto = numero*100
	raundi = Math.round(numero)
	if (numero > raundi)
		raundi++;
	//jako = raundi/100
	return raundi
}

//--- Erikois-pyöristys funktio
function Pe(numero,summattava) {
	var integeriko = numero % 1;
	if (integeriko == 0) {
		// On kokonaisluku valmiiksi
 		numero = Py(numero);
 	}
 	else {
 		// On desimaaliluku
 		numero = numero*100;
		var stringgi = new String(numero)
		var kohta = stringgi.indexOf(".");
		if (kohta != "-1") {
			// Löytyi piste edelleen kerronnan jälkeen
			numero = stringgi.substring(0, kohta);
			numero = (numero/100)+summattava;
			numero = Py(numero);
		}
		else {
			// Ei enää pistettä kerronnan jälkeen
			numero = numero/100;
		}
	}
	return numero;
}
	
//--- Onko erät ilman viimeistä suurempaa erää mahdollinen funktio
function Suuruus(arvo,vertailu) {
	//alert(arvo + " < " + vertailu)
	if (arvo < vertailu) {
		arvo = "-";
	}
	return arvo
}
//--- Annuiteetin laskenta-funktio
function annuiteetti(p_o,aika,korko) {
	var pros = korko/100;
	pros = pros/12;
	n = aika*12;
	yla = Math.pow((1+pros), n)*pros;
	ala = Math.pow((1+pros), n)-1;
	annu = (yla/ala)*p_o;
	return annu
}
//--- Arvojen laskenta-funktio
function Laskearvot(cur,korko,perustamismaksu,kasittelymaksu,hankintahinta,era_kk_12,era_kk_24,era_kk_36,era_kk_48,era_kk_60,max_ja_12,max_ja_24,max_ja_36,max_ja_48,max_ja_60,calc_url) {
	if (cur.kasirahaOsuus_pros.value != "" && cur.kasirahaOsuus.value != "") {

		cur.rahoitettavaa.value = Py(cur.velkaosuus.value) + perustamismaksu;

		// Erät ilman suurempaa viimeistä erää
		var pienin = 0;
		var jannosarvo = "";
		var luvut = "";
		for (var i=1;i<6;i++) {
			var annu = annuiteetti(cur.rahoitettavaa.value,i,korko)
			var jaannos = 0;
			if (i==1 && era_kk_12 == "YES") {
				var mahd_max_era = annu + kasittelymaksu;
				jannosarvo = max_ja_12/100*hankintahinta
				if (jannosarvo > cur.velkaosuus.value) {
					jannosarvo = cur.velkaosuus.value
				}
				rahoitettavaa = cur.rahoitettavaa.value-((jannosarvo)/(Math.pow((1+(korko/100/12)),i*12)));
				annu2 = annuiteetti(rahoitettavaa,i,korko)
				if (annu2 < pienin || pienin == 0) {
					pienin = annu2;
					pienin_kk = 12;
				}
			}
			if (i==2 && era_kk_24 == "YES") {
				jannosarvo = max_ja_24/100*hankintahinta
				if (jannosarvo > cur.velkaosuus.value) {
					jannosarvo = cur.velkaosuus.value
				}
				rahoitettavaa = cur.rahoitettavaa.value-((jannosarvo)/(Math.pow((1+(korko/100/12)),i*12)));
				annu2 = annuiteetti(rahoitettavaa,i,korko)
				if (annu2 < pienin || pienin == 0) {
					pienin = annu2;
					pienin_kk = 24;
				}
			}
			if (i==3 &&  era_kk_36 == "YES") {
				jannosarvo = max_ja_36/100*hankintahinta
				if (jannosarvo > cur.velkaosuus.value) {
					jannosarvo = cur.velkaosuus.value
				}
				rahoitettavaa = cur.rahoitettavaa.value-((jannosarvo)/(Math.pow((1+(korko/100/12)),i*12)));
				annu2 = annuiteetti(rahoitettavaa,i,korko)
				if (annu2 < pienin || pienin == 0) {
					pienin = annu2;
					pienin_kk = 36;
				}
			}
			if (i==4 &&  era_kk_48 == "YES") {
				jannosarvo = max_ja_48/100*hankintahinta
				if (jannosarvo > cur.velkaosuus.value) {
					jannosarvo = cur.velkaosuus.value
				}
				rahoitettavaa = cur.rahoitettavaa.value-((jannosarvo)/(Math.pow((1+(korko/100/12)),i*12)));
				annu2 = annuiteetti(rahoitettavaa,i,korko)
				if (annu2 < pienin || pienin == 0) {
					pienin = annu2;
					pienin_kk = 48;
				}
			}
			if (i==5 &&  era_kk_60 == "YES") {
				jannosarvo = max_ja_60/100*hankintahinta
				if (jannosarvo > cur.velkaosuus.value) {
					jannosarvo = cur.velkaosuus.value
				}
				rahoitettavaa = cur.rahoitettavaa.value-((jannosarvo)/(Math.pow((1+(korko/100/12)),i*12)));
				annu2 = annuiteetti(rahoitettavaa,i,korko)
				if (annu2 < pienin || pienin == 0) {
					pienin = annu2;
					pienin_kk = 60;
				}
			}			
		}
		// Mahdolliset kk-erät
		if (pienin < 80) {
			pienin = 80;
		}
		cur.kk_era_min.value = Pe(pienin+kasittelymaksu,0.01);
		cur.kk_era_max.value = Pe(mahd_max_era,0);
	}

	// Syötetään arvo sivustolle
	muuttujat = "<a href=\"Javascript:Avaa_laskin('" + calc_url + "&haluttuKkEra=" + cur.kk_era_min.value + "&sopimusaika=" + pienin_kk + "&listalla=YES')\">";
	muuttujat = muuttujat + Py_kl(cur.kk_era_min.value) + "</a>&nbsp;&euro;/kk";
	muuttujat = muuttujat + "<a href=\"Javascript:Avaa_laskin('" + calc_url + "&haluttuKkEra=" + cur.kk_era_min.value + "&sopimusaika=" + pienin_kk + "&YES')\">";
	muuttujat = muuttujat + "<img src=\"/include/nw_caches/ge_huuto.gif\" alt=\"Laske sinulle sopiva kuukausierä\" border=\"0\"></a>";
}

