function muotoileLuku(luku) {
	luku = String(Math.round(luku));
	var output = "";
	var c = 0;
	for (var i = luku.length; i >= 0; i--) {
		c++;
		output += luku.charAt(i);
		if (c % 3 == 1 && i > 0) {
			output += " ";
		}
	}
	
	luku = "";
	//Reverse
	for (var i = output.length; i > 0; i--) {
		luku += output.charAt(i);
	}
	return luku;
}


function laskeTyopaivienMaara() {
	
	var tyontekijamaara = parseFloat(document.laskuri.tyontekijamaara.value.replace(/[^0-9.]/g, ''));
	var tyossaolomaara = parseFloat(document.getElementById("tyossaolomaara").innerHTML.replace(/[^0-9.]/g, ''));
	if (tyontekijamaara) {
		document.getElementById("tyopaivienMaaraVuodessa").innerHTML = muotoileLuku(tyontekijamaara * tyossaolomaara);
	}
	else {
		document.getElementById("tyopaivienMaaraVuodessa").innerHTML = "Syötä työntekijämäärä";
	}
								
		
	if (document.getElementById("tyopaivienMaaraVuodessa").innerHTML.length > 0 && document.getElementById("poissaolopaiviaYhteensa").innerHTML.length > 0) {
		laskeKustannukset();
		laskeSaasto();
	}
}

function laskeTyopaivienMaaraEng() {
	
	var tyontekijamaara = parseFloat(document.laskuri.tyontekijamaara.value.replace(/[^0-9.]/g, ''));
	var tyossaolomaara = parseFloat(document.getElementById("tyossaolomaara").innerHTML.replace(/[^0-9.]/g, ''));
	if (tyontekijamaara) {
		document.getElementById("tyopaivienMaaraVuodessa").innerHTML = muotoileLuku(tyontekijamaara * tyossaolomaara);
	}
	else {
		document.getElementById("tyopaivienMaaraVuodessa").innerHTML = "Input number of employees";
	}
								
		
	if (document.getElementById("tyopaivienMaaraVuodessa").innerHTML.length > 0 && document.getElementById("poissaolopaiviaYhteensa").innerHTML.length > 0) {
		laskeKustannukset();
		laskeSaasto();
	}
}

function laskePoissaOloPaivatYhteensa(source) {
	var poissaoloProsentti = parseFloat(document.laskuri.poissaoloProsentti.value.replace(/[^0-9.]/g, ''));
	var tyopaivienMaaraVuodessa = parseFloat(document.getElementById("tyopaivienMaaraVuodessa").innerHTML.replace(/[^0-9.]/g, ''));
	var tyontekijaMaara = parseFloat(document.laskuri.tyontekijamaara.value.replace(/[^0-9.]/g, ''));
	var poissaOlojaPerHenk = parseFloat(document.laskuri.poissaOlojaPerHenk.value.replace(/[^0-9.]/g, ''));
	if (!poissaoloProsentti && !source) {
		document.getElementById("poissaolopaiviaYhteensa").innerHTML = "Syötä poissaoloprosentti tai sairauspoissaolopäivien määrä vuodessa / henkilö";
	}
	else if (!tyopaivienMaaraVuodessa){
		document.getElementById("poissaolopaiviaYhteensa").innerHTML = "Syötä työntekijämäärä";
	}
	else {
		if (source == "poissaOlojaPerHenk") { //Lasketaan prosentti
			tulos = parseFloat((tyontekijaMaara * poissaOlojaPerHenk) / tyopaivienMaaraVuodessa * 100);
			tulos = Math.round(tulos*100)/100;
			if (tulos) {
				document.laskuri.poissaoloProsentti.value = tulos;
				poissaoloProsentti = parseFloat(document.laskuri.poissaoloProsentti.value.replace(/[^0-9.]/g, ''));
			}
		}
		else { //Lasketaan yhden henkilön sairaspoissaolot	
			document.laskuri.poissaOlojaPerHenk.value = Math.round(tyopaivienMaaraVuodessa / tyontekijaMaara * poissaoloProsentti / 100);
		}
		document.getElementById("poissaolopaiviaYhteensa").innerHTML = muotoileLuku((poissaoloProsentti/100 * tyopaivienMaaraVuodessa)) + "<br />";							
	}
	if (document.getElementById("tyopaivienMaaraVuodessa").innerHTML.length > 0 && document.getElementById("poissaolopaiviaYhteensa").innerHTML.length > 0) {
		laskeKustannukset();
		laskeSaasto();
	}
}

function laskePoissaOloPaivatYhteensaEng(source) {
	var poissaoloProsentti = parseFloat(document.laskuri.poissaoloProsentti.value.replace(/[^0-9.]/g, ''));
	var tyopaivienMaaraVuodessa = parseFloat(document.getElementById("tyopaivienMaaraVuodessa").innerHTML.replace(/[^0-9.]/g, ''));
	var tyontekijaMaara = parseFloat(document.laskuri.tyontekijamaara.value.replace(/[^0-9.]/g, ''));
	var poissaOlojaPerHenk = parseFloat(document.laskuri.poissaOlojaPerHenk.value.replace(/[^0-9.]/g, ''));
	if (!poissaoloProsentti && !source) {
		document.getElementById("poissaolopaiviaYhteensa").innerHTML = "Input either absenteeism percentage or sick leave days / employee";
	}
	else if (!tyopaivienMaaraVuodessa){
		document.getElementById("poissaolopaiviaYhteensa").innerHTML = "Input number of employees";
	}
	else {
		if (source == "poissaOlojaPerHenk") { //Lasketaan prosentti
			tulos = parseFloat((tyontekijaMaara * poissaOlojaPerHenk) / tyopaivienMaaraVuodessa * 100);
			tulos = Math.round(tulos*100)/100;
			if (tulos) {
				document.laskuri.poissaoloProsentti.value = tulos;
				poissaoloProsentti = parseFloat(document.laskuri.poissaoloProsentti.value.replace(/[^0-9.]/g, ''));
			}
		}
		else { //Lasketaan yhden henkilön sairaspoissaolot	
			document.laskuri.poissaOlojaPerHenk.value = Math.round(tyopaivienMaaraVuodessa / tyontekijaMaara * poissaoloProsentti / 100);
		}
		document.getElementById("poissaolopaiviaYhteensa").innerHTML = muotoileLuku((poissaoloProsentti/100 * tyopaivienMaaraVuodessa)) + "<br />";							
	}
	if (document.getElementById("tyopaivienMaaraVuodessa").innerHTML.length > 0 && document.getElementById("poissaolopaiviaYhteensa").innerHTML.length > 0) {
		laskeKustannukset();
		laskeSaasto();
	}
}

function laskeKustannukset() {
	var poissaolopaiviaYhteensa = parseFloat(document.getElementById("poissaolopaiviaYhteensa").innerHTML.replace(/[^0-9.]/g, ''));
	var paivanHinta = parseFloat(document.getElementById("paivanHinta").innerHTML.replace(/[^0-9.]/g, ''));
	document.getElementById("kustannuksetYhteensa").innerHTML = muotoileLuku(poissaolopaiviaYhteensa * paivanHinta) + " €";
}

function nollaaLomake() {
	document.laskuri.reset();
	document.getElementById("tulokset").style.display = "none";
	document.getElementById("laskuriLaskenappi").style.display = "block";
	return false;
}	

function laskeSaasto() {
	var poissaoloProsentti = parseFloat(document.laskuri.poissaoloProsentti.value.replace(/[^0-9.]/g, ''));
	var tyopaivienMaaraVuodessa = parseFloat(document.getElementById("tyopaivienMaaraVuodessa").innerHTML.replace(/[^0-9.]/g, ''));
	var poissaolopaiviaYhteensa = (poissaoloProsentti - 1)/100 * tyopaivienMaaraVuodessa
	var kustannuksetYhteensa = parseFloat(document.getElementById("kustannuksetYhteensa").innerHTML.replace(/[^0-9.]/g, ''));
	var paivanHinta = parseFloat(document.getElementById("paivanHinta").innerHTML.replace(/[^0-9.]/g, ''));
	document.getElementById("saastotYhteensa").innerHTML = muotoileLuku(kustannuksetYhteensa - (poissaolopaiviaYhteensa * paivanHinta)) + " €";
}

function paivitaTiedot() {
	laskeTyopaivienMaara();
	laskePoissaOloPaivatYhteensa();
	laskeKustannukset();
	laskeSaasto();
	if (parseFloat(document.getElementById("saastotYhteensa").innerHTML.replace(/[^0-9.]/g, ''))) {
		document.getElementById("laskuriLaskenappi").style.display = "none";
		document.getElementById("tulokset").style.display = "block";
	}
	else {
		//alert(document.getElementById("saastotYhteensa").innerHTML);
	}
}

function paivitaTiedotEng() {
	laskeTyopaivienMaaraEng();
	laskePoissaOloPaivatYhteensaEng();
	laskeKustannukset();
	laskeSaasto();
	if (parseFloat(document.getElementById("saastotYhteensa").innerHTML.replace(/[^0-9.]/g, ''))) {
		document.getElementById("laskuriLaskenappi").style.display = "none";
		document.getElementById("tulokset").style.display = "block";
	}
	else {
		//alert(document.getElementById("saastotYhteensa").innerHTML);
	}
}

function muutaPaivanHinta(uusihinta) {
	document.getElementById("paivanHinta").innerHTML = uusihinta + " €";
}

function muutaLinkkiTausta(paikkaX) {
	document.getElementById("laskuriValintaBG").style.backgroundPosition = paikkaX + "px" + " 0px";
}