﻿var cUsporyVynosy = function(){
	
	this.init = function(){
		this.el = el = $('#UsporyVynosy');
		if (!el) {} else { 
			el.find('.but_count').unbind('click').bind('click', function(){
//alert('error');
				uspory.calculate(this.form);
			});
		}
	};
	
	this.calculate = function(form){

		var Pole = new Array();
		var i = 1;
		var pocet_low = 1;
		var pocet_hight = 0;

		//vlastni vypocet

		var krok_1="";
		krok_1 = matKrat(hodnota('f','IT'),12.0000);

		var krok_2="";
		krok_2 = matKrat(krok_1,hodnota('f','MCE'));

		var krok_3="";
		krok_3 = fceSST(hodnota('f','IT'),hodnota('f','MCE'));

		var krok_4="";
		krok_4 = matKrat(krok_1,hodnota('f','MCC'));

		var krok_5="";
		krok_5 = fx1(hodnota('f','IT'),hodnota('f','MCE'));

		var krok_6="";
		krok_6 = fx2(hodnota('f','G'),hodnota('f','MCC'));

		var krok_7="";
		krok_7 = matPlus(krok_2,krok_3);

		var krok_8="";
		krok_8 = matPlus(krok_7,krok_4);

		var krok_9="";
		krok_9 = matPlus(krok_8,krok_6);

		var krok_10="";
		krok_10 = matMinus(krok_9,krok_2);

		var krok_11="";
		krok_11 = getSex(hodnota('f','SEX'),0.0000);

		var krok_13="";
		krok_13 = logIFL(hodnota('f','RA'),60.0000);


		Pole[i] = new Array("krok_13","krok_14","1");
		Pole[i+1] = new Array("krok_13","krok_15","0");
		i = i + 2;


		var krok_14="";
		krok_14 = " Věk odchodu do penze je nutné zadat větší než 59 let.";

		var krok_15="";
		krok_15 = logIFG(hodnota('f','RA'),90.0000);


		Pole[i] = new Array("krok_15","krok_17","1");
		Pole[i+1] = new Array("krok_15","krok_18","0");
		i = i + 2;


		var krok_17="";
		krok_17 = " Věk odchodu do penze je nutné zadat menší než 91 let.";

		var krok_18="";
		krok_18 = dozPen2(hodnota('f','RA'),krok_9);

		//vyhodnoceni vyrazu, kterym je podminka
		pocet_hight =  i - 1;

		for (j=pocet_hight;j>=pocet_low;j--)
		{
			vysledek = eval(Pole[j][1]);
			if (eval(Pole[j][0]) == Pole[j][2])
			{
				eval(Pole[j][0]+"=\""+vysledek+"\";");
			}
		}

		pocet_low = pocet_hight;



		var krok_19="";
		krok_19 = matPlus(krok_9,0.0000);

		fuj = "krok_2";

		if (document.getElementById(fuj))
		{
			document.getElementById(fuj).innerHTML = krok_2+" ,- Kč";
			//document.getElementById(fuj).value = krok_2+" ,- Kč";
		}
		fuj = "krok_2_hidden";
		if (document.getElementById(fuj))
		{
			document.getElementById(fuj).value = krok_2;
		}

		fuj = "krok_3";

		if (document.getElementById(fuj))
		{
			document.getElementById(fuj).innerHTML = krok_3+" ,- Kč";
			//document.getElementById(fuj).value = krok_3+" ,- Kč";
		}
		fuj = "krok_3_hidden";
		if (document.getElementById(fuj))
		{
			document.getElementById(fuj).value = krok_3;
		}

		fuj = "krok_4";

		if (document.getElementById(fuj))
		{
			document.getElementById(fuj).innerHTML = krok_4+" ,- Kč";
			//document.getElementById(fuj).value = krok_4+" ,- Kč";
		}
		fuj = "krok_4_hidden";
		if (document.getElementById(fuj))
		{
			document.getElementById(fuj).value = krok_4;
		}

		fuj = "krok_6";

		if (document.getElementById(fuj))
		{
			document.getElementById(fuj).innerHTML = krok_6+" ,- Kč";
			//document.getElementById(fuj).value = krok_6+" ,- Kč";
		}
		fuj = "krok_6_hidden";
		if (document.getElementById(fuj))
		{
			document.getElementById(fuj).value = krok_6;
		}

		fuj = "krok_9";

		if (document.getElementById(fuj))
		{
			document.getElementById(fuj).innerHTML = krok_9+" ,- Kč";
			//document.getElementById(fuj).value = krok_9+" ,- Kč";
		}
		fuj = "krok_9_hidden";
		if (document.getElementById(fuj))
		{
			document.getElementById(fuj).value = krok_9;
		}

		fuj = "krok_19";

		if (document.getElementById(fuj))
		{
			document.getElementById(fuj).innerHTML = krok_19+" ,- Kč";
			//document.getElementById(fuj).value = krok_19+" ,- Kč";
		}
		fuj = "krok_19_hidden";
		if (document.getElementById(fuj))
		{
			document.getElementById(fuj).value = krok_19;
		}

		fuj = "krok_13";

		if (document.getElementById(fuj))
		{
			document.getElementById(fuj).innerHTML = krok_13+" ,- Kč";
			//document.getElementById(fuj).value = krok_13+" ,- Kč";
		}
		fuj = "krok_13_hidden";
		if (document.getElementById(fuj))
		{
			document.getElementById(fuj).value = krok_13;
		}

		//zobrazeni vysledku
		kontrol = "vysledky";
		document.getElementById(kontrol).style.display = "block";
		
		if (typeof pageTracker == 'undefined') {} else {pageTracker._trackPageview("/cs/informace/spocitejte-si/uspory-vynosy.html/spocitat/usporyvynosy/");}
		
	};
	
};




function kontrola(f,p,co)
{
	setTimeout("k('"+f+"','"+p+"','"+co+"');",10);
}

function k(f,p,co)
{
	var spravne="";

	if(co=="cislo")
	{
		document[f][p].value=jecislo(document[f][p].value);
	}
}

function jecislo(v)
{
	var cisla="0123456789";
	var bylatecka=false;
	var ret="";
	v=v+"";
	if(v.charAt(0)=="-") ret="-";
	for(var i=0;i<v.length;i++)
	{
		if(cisla.indexOf(v.charAt(i))!=-1) ret+=v.charAt(i)+"";
		else if((v.charAt(i)==".")&&(bylatecka==false))
		{
			bylatecka=true;
			ret+=v.charAt(i)+"";
		}

	}
	return(ret);
}

function dopln_radio(kam,co)
{
	prvek = kam + "_name";
	if (document.f[prvek]) document.f[prvek].value = co;
}

function hodnota(f,n)
{
	if(document[f][n][0])
	{
		if(document[f][n][0].type)
		{
			for(var i=0;i<document[f][n].length;i++)
			{
				if(document[f][n][i].checked==true) return(document[f][n][i].value);
			}
			return("ERROR");
		}
		if(document[f][n].type.indexOf("select")!=-1)
		{
			return(document[f][n][document[f][n].selectedIndex].value);
		}
	}
	if(document[f][n].type=="text") return(document[f][n].value);
	if(document[f][n].type =="checkbox")
	{
		if (document[f][n].checked == true)
			return (document[f][n].value)
		else
			return ("ERROR");
	}
	if(document[f][n].type=="hidden") return(document[f][n].value);
}

function matPlus(a,b)
{
 a=jecislo(a);
	b=jecislo(b);
	if(a=="") return("error");
	if(b=="") return("error");
	a*=1;
	b*=1;
	return(a+b);
}

function matMinus(a,b)
{
	a=jecislo(a);
	b=jecislo(b);
	if(a=="") return("error");
	if(b=="") return("error");
	a*=1;
	b*=1;
	return(a-b);
}

function matKrat(a,b)
{
	a=jecislo(a);
	b=jecislo(b);
	if(a=="") return("error");
	if(b=="") return("error");
	a*=1;
	b*=1;
	return(a*b);
}

function logIFG(a,b)
{
	a=jecislo(a);
	b=jecislo(b);
	if(a=="") return("error");
	if(b=="") return("error");
	a*=1;
	b*=1;
	if(a>b)
		return(1)
	else
		return(0);
}

function logIFL(a,b)
{
	a=jecislo(a);
	b=jecislo(b);
	if(a=="") return("error");
	if(b=="") return("error");
	a*=1;
	b*=1;
	if(a<b)
		return(1)
	else
		return(0);
}

function fceSST(it,mce)
	{
		var retValue = 0;
		if(mce < 100)
		{
			retValue = 0;
		}
		else if(mce < 200)
		{
			retValue = (50 + ((mce - 100) * 0.4)) * (it * 12);
		}
		else if(mce < 300)
		{
			retValue = (90 + ((mce - 200) * 0.3)) * (it * 12);
		}
		else if(mce < 400)
		{
			retValue = (120 + ((mce - 300) * 0.2)) * (it * 12);
		}
		else if(mce < 500)
		{
			retValue = (140 + ((mce - 400) * 0.1)) * (it * 12);
		}
		else
		{
			retValue = 150 * (it * 12);
		}

		return retValue;
	}
var let;
var mp;

function fx1(it, mce)
{
	let = it;
	mp = mce;
}

function fx2(g, mcc)
{

  var ps;
  var ss;
  var fs;
  var zs;
  var ce;
  var fl;
  var fr;
  var pp;
  var pa = g;
  var mz = mcc;
  pp=(pa/100);
  if (mp<200) {
                        zb1=mp-100;
                        mp1=50+zb1*0.4 }
  else if (mp<300){
                        zb1=mp-200;
                        mp1=90+zb1*0.3 }
  else if (mp<400){
                        zb1=mp-300;
                        mp1=120+zb1*0.2 }
  else if (mp<500){
                        zb1=mp-400;
                        mp1=140+zb1*0.1 }
  else {mp1=150}
  ps=12*mp;
  ss=12*mp1;
  zs=12*mz;
  fs=((ps+ss+zs)/2)*pp;
  ce=fs+ss+ps+zs;
  fl=fs;
  for (i=2;i<=let;i++) {
      ps=ps+12*mp;
      ss=ss+12*mp1;
      zs=zs+12*mz;
      fs=((ce+ps+ss+zs)/2)*pp+(fl/2)*pp+fl;
      fl=fs;
      ce=fs+ss+ps+zs;     }
          fs=Math.round(fs);


return(fs);
}

var poh;
function getSex(a,b)
{
	if(a==1) { poh = "M";
	}else{ poh = "Z"; }
}

function dozPen2(a,b) {
  var mu=new Array(90);
  var ze=new Array(90);

  mu[60]=14.80781;
  mu[61]=14.33821;
  mu[62]=13.86854;
  mu[63]=13.39559;
  mu[64]=12.92096;
  mu[65]=12.44757;
  mu[66]=11.97858;
  mu[67]=11.52051;
  mu[68]=11.06963;
  mu[69]=10.62658;
  mu[70]=10.18338;
  mu[71]=9.74049;
  mu[72]=9.30083;
  mu[73]=8.87155;
  mu[74]=8.44894;
  mu[75]=8.03300;
  mu[76]=7.62752;
  mu[77]=7.23180;
  mu[78]=6.84627;
  mu[79]=6.47205;
  mu[80]=6.10727;
  mu[81]=5.75844;
  mu[82]=5.42406;
  mu[83]=5.10985;
  mu[84]=4.80549;
  mu[85]=4.51956;
  mu[86]=4.23572;
  mu[87]=3.97102;
  mu[88]=3.72009;
  mu[89]=3.48333;
  mu[90]=3.25966;
  ze[60]=17.63148;
  ze[61]=17.08789;
  ze[62]=16.54223;
  ze[63]=15.99369;
  ze[64]=15.44094;
  ze[65]=14.88316;
  ze[66]=14.32159;
  ze[67]=13.75789;
  ze[68]=13.20110;
  ze[69]=12.64851;
  ze[70]=12.09764;
  ze[71]=11.54846;
  ze[72]=11.00119;
  ze[73]=10.45736;
  ze[74]=9.92241;
  ze[75]=9.39761;
  ze[76]=8.88272;
  ze[77]=8.38025;
  ze[78]=7.88930;
  ze[79]=7.41066;
  ze[80]=6.94639;
  ze[81]=6.49836;
  ze[82]=6.06683;
  ze[83]=5.65287;
  ze[84]=5.25702;
  ze[85]=4.88003;
  ze[86]=4.52246;
  ze[87]=4.18443;
  ze[88]=3.86633;
  ze[89]=3.56818;
  ze[90]=3.28987;
  ind=parseInt(a);
  b=parseFloat(b);
  m=mu[ind];
  z=ze[ind];
  if (poh=="M")
	{ d=((b/m)/12) } else { d=((b/z)/12) }
  return (Math.round(d));
}
var uspory = new cUsporyVynosy();

$(function(){
	uspory.init();
});