// basic functions
function winClose()
{
  $('flashContent').setStyle({
    display:'none'
  });  
} 


// regulérní výraz hlídající správný tvar emailu
var reg_email=/^[a-zA-Z0-9._-]*@[a-zA-Z0-9._-]*\.[a-zA-Z]{2,4}$/

// alert okno při chybě ve formulářích (voláno jinými funkcemi)
function hlaska(text) {
  if (!text) return false;
  var vypis = "Ve formuláři jsou následující chyby: \n"+
              "____________________________________ \n\n"+
              text;
  alert(vypis);
}

function pole(x) {
    return document.getElementById(x);
}

function xelement(felement) {
	return document.getElementById(felement);
}

function oddelovac_pridej(hodnota,oddelovac) {
  if (!oddelovac) oddelovac = ".";
  var retezec = hodnota.toString();
  var delka = retezec.length;
  var nova_cena = "";
  var prevracena = "";
  for (var x=delka-1; x >= 0; x--) prevracena += retezec.substring(x,x+1);
  for (var y=delka-1; y >= 0; y--) {
    if (y % 3 == 0 && y != 0) nova_cena += prevracena.substring(y,y+1)+oddelovac;
    else nova_cena += prevracena.substring(y,y+1);
  }
  return nova_cena;
}

function oddelovac_uber(hodnota) {
  var retezec = hodnota.toString();
  var delka = retezec.length;
  var novy_retezec = "";
  var prevracena = "";
  for (var x=delka-1; x >= 0; x--) prevracena += retezec.substring(x,x+1);
  for (var y=delka-1; y >= 0; y--) {
    novy_retezec += (isNaN(prevracena.substring(y,y+1)) ? "" : prevracena.substring(y,y+1)) ;
  }
  return novy_retezec;
}

function toggle(elId)
{
	var obj = document.getElementById(elId);
	if (obj)
	{
		obj.style.display = (obj.style.display == 'none') ? '': 'none';
	}
}

function toggleAll()
{
	var objects=new Array("otazkyJ1","otazkyJ2","otazky","otazky2","otazky3","otazky5","otazky6","otazky7","otazky8");
	var obj;
	for (var x=0;x<objects.length;x++)
	{
			obj = document.getElementById(objects[x]);
			if (obj)
			{
				obj.style.display = (obj.style.display == 'none') ? '': 'none';
			}
	}
}

function oddelovac_uber2(elem)
{
    if (elem.value)
    {
        elem.value.replaceAll('.', '');
    }
}

function cisla() {
  with(event)
  {
     if (keyCode < 48 || keyCode > 57) returnValue = false;
  }
}
function formatuj_policka(policko) {
  if (policko) policko.value = policko.value = oddelovac_pridej(oddelovac_uber(policko.value));
  else {
    o = document.getElementsByTagName('input');
    for (i = 0; i < 1000; i++)
      if (o[i] && o[i].className.indexOf("castka") > -1) o[i].value = oddelovac_pridej(oddelovac_uber(o[i].value)) ;
    obarvi_ano_ne();
  }
}

function unformatuj_policka(policko) {
  if (policko) policko.value = policko.value = oddelovac_uber(policko.value);
  else {
    o = document.getElementsByTagName('input');
    for (i = 0; i < 1000; i++)
      if (o[i] && o[i].className.indexOf("castka") > -1) o[i].value = oddelovac_uber(o[i].value) ;
  }
}

//-------



function copy_adr(odkud,kam) {
        xelement(kam+'_ulice_').value = xelement(odkud+'_ulice_').value;
        xelement(kam+'_cp_').value = xelement(odkud+'_cp_').value;
        xelement(kam+'_mesto_').value = xelement(odkud+'_mesto_').value;
        xelement(kam+'_psc_').value = xelement(odkud+'_psc_').value;
        xelement(kam+'_kraj_').value = xelement(odkud+'_kraj_').value;
        xelement(kam+'_stat_').value = xelement(odkud+'_stat_').value;
}

function ajaxZipToLocation(x,kde) {
	var zip = x;

	new Ajax.Request(
			"scripts/ajax.php",
			{
				method :	"get",
				parameters:
				{
					op : "zipToLocation",
					zip : zip
				},

				onSuccess: function(transport) {
					if (transport.responseText != "") {
						$(kde).value = transport.responseText;
					}
				}
			}
	);	
}

function odhad(x) {
  x.value = oddelovac_pridej(oddelovac_uber(x.value));
}

function svazNemVlastnictvi(zdroj)
{
	if (zdroj == "nem") {
		if ($('zadost_id_nemovitost_').value == 3)
			$('zadost_id_vlastnictvi_').value = 2;
		else
			$('zadost_id_vlastnictvi_').value = 1;
	}
	else {
		if ($('zadost_id_vlastnictvi_').value == 2)
			$('zadost_id_nemovitost_').value = 3;
		else
			$('zadost_id_nemovitost_').value = 1;
	}
}		

function checkForm(x,co) {
    var hlaseni = "";
    var focus;
    
    //ajaxZipToLocation(x['zadost[nem_psc]'].value,'nem_kraj');
    //ajaxZipToLocation(x['zadost[trv_psc]'].value,'trv_kraj');
    if (x['zadost[kor_psc]']) ajaxZipToLocation(x['zadost[kor_psc]'].value,'kor_kraj');
    
    for (i=1; i <= 100000; i++)
    	continue; 
    //alert('test');

    switch (co) {
        case "index" :
          if (x['zadost[castka]'].value ==0) {hlaseni += "- není vyplněna vyše půjčky\n"; if (!focus) focus = 'zadost[castka]';}
          if (x['zadost[doba]'].value == 0) {hlaseni += "- není vyplněna splatnost půjčky\n"; if (!focus) focus = 'zadost[doba]';}
          if (x['zadost[id_ucel]'].value == 0) {hlaseni += "- není vyplněn účel půjčky\n"; if (!focus) focus = 'zadost[id_ucel]';}
          
          if (x['zadost[id_ucel]'].value == 9) {
    	      if (!x['zadost[jmeno]'].value) {hlaseni += "- není vyplněno Vaše jméno a příjmení\n"; if (!focus) focus = 'zadost[jmeno]';}
    	      if (!x['zadost[prijmeni]'].value) {hlaseni += "- není vyplněn název Vaší firmy\n"; if (!focus) focus = 'zadost[prijmeni]';}
    	      if (!x['zadost[rodne_cislo]'].value) {hlaseni += "- není vyplněno IČ Vaší firmy\n"; if (!focus) focus = 'zadost[rodne_cislo]';}
    	      if (x['zadost[rodne_cislo]'].value.length < 8 && x['zadost[rodne_cislo]'].value) {hlaseni += "- IČ firmy musí mít 8 číslic\n"; if (!focus) focus = 'zadost[rodne_cislo]';}
          }
          else {
              if (!x['zadost[jmeno]'].value) {hlaseni += "- není vyplněno Vaše jméno\n"; if (!focus) focus = 'zadost[jmeno]';}
              if (!x['zadost[prijmeni]'].value) {hlaseni += "- není vyplněno Vaše příjmení\n"; if (!focus) focus = 'zadost[prijmeni]';}
          }
          
	      if (!x['zadost[telefon]'].value) {hlaseni += "- není vyplněn telefon na Vás\n"; if (!focus) focus = 'zadost[telefon]';}
	      if (x['zadost[email]'].value && reg_email.test(x['zadost[email]'].value)==false) {hlaseni += "- Váš email nemá korektní tvar\n"; if (!focus) focus = 'zadost[email]';}
	      if (!$('souhlas').checked) {hlaseni += "- k odeslání nezávazné žádosti je třeba Váš souhlas se zpracováním osobních údajů\n"; }
	      break;
        case "kontakt" :
          if (!x['mail[prijmeni]'].value) {hlaseni += "- není vyplněno Vaše příjmení\n"; if (!focus) focus = 'mail[prijmeni]';}
          if (!x['mail[jmeno]'].value) {hlaseni += "- není vyplněno Vaše jméno\n"; if (!focus) focus = 'mail[jmeno]';}
          if (!x['mail[telefon]'].value && !x['mail[email]'].value) {hlaseni += "- není vyplněno telefon nebo email na Vás\n"; if (!focus) focus = 'mail[telefon]';}
          if (x['mail[email]'].value && reg_email.test(x['mail[email]'].value)==false) {hlaseni += "- Váš email nemá korektní tvar\n"; if (!focus) focus = 'mail[email]';}
          if (!x['mail[vzkaz]'].value) {hlaseni += "- není vyplněno políčko vzkaz\n"; if (!focus) focus = 'mail[vzkaz]';}
          break;

        case "zadost" :
          if (x['zadost[castka]'].value ==0) {hlaseni += "- není vyplněna vyše půjčky\n"; if (!focus) focus = 'zadost[castka]';}
          if (x['zadost[doba]'].value == 0) {hlaseni += "- není vyplněna splatnost půjčky\n"; if (!focus) focus = 'zadost[doba]';}
          if (x['zadost[id_ucel]'].value == 0) {hlaseni += "- není vyplněn účel půjčky\n"; if (!focus) focus = 'zadost[id_ucel]';}
          
          if (x['zadost[id_ucel]'].value == 9) {
    	      if (!x['zadost[jmeno]'].value) {hlaseni += "- není vyplněno Vaše jméno a příjmení\n"; if (!focus) focus = 'zadost[jmeno]';}
    	      if (!x['zadost[prijmeni]'].value) {hlaseni += "- není vyplněn název Vaší firmy\n"; if (!focus) focus = 'zadost[prijmeni]';}
    	      if (!x['zadost[rodne_cislo]'].value) {hlaseni += "- není vyplněno IČ Vaší firmy\n"; if (!focus) focus = 'zadost[rodne_cislo]';}
    	      if (x['zadost[rodne_cislo]'].value.length < 8 && x['zadost[rodne_cislo]'].value) {hlaseni += "- IČ firmy musí mít 8 číslic\n"; if (!focus) focus = 'zadost[rodne_cislo]';}
          }
          else {
              if (!x['zadost[jmeno]'].value) {hlaseni += "- není vyplněno Vaše jméno\n"; if (!focus) focus = 'zadost[jmeno]';}
              if (!x['zadost[prijmeni]'].value) {hlaseni += "- není vyplněno Vaše příjmení\n"; if (!focus) focus = 'zadost[prijmeni]';}
          }
          
          if (!x['zadost[id_ucel]'].value) {hlaseni += "- není vyplněn účel Vaší půjčky\n"; if (!focus) focus = 'zadost[id_ucel]';}
          if (!x['zadost[id_nemovitost]'].value) {hlaseni += "- není vyplněn druh nemovitosti,\n"; if (!focus) focus = 'zadost[id_nemovitost]';}
          if (!x['zadost[id_vlastnictvi]'].value) {hlaseni += "- není vyplněn forma vlastnictví\n"; if (!focus) focus = 'zadost[id_vlastnictvi]';}
          if (!x['zadost[cena_nem]'].value) {hlaseni += "- není vyplněna přibližná cena Vaší nemovitosti\n"; if (!focus) focus = 'zadost[cena_nem]';}
          if (!x['zadost[nem_kraj]'].value) {hlaseni += "- není vyplněn kraj, kde se Vaše nemovitost nalézá\n"; if (!focus) focus = 'zadost[nem_kraj]';}
          if (x['zadost[exekuce_vyse]'].value < 0) {hlaseni += "- není vyplněna výše exekucí na nemovitosti\n"; if (!focus) focus = 'zadost[exekuce_vyse]';}
          if (x['zadost[zastavy_vyse]'].value < 0) {hlaseni += "- není vyplněna výše zástav (hypoték) na nemovitosti\n"; if (!focus) focus = 'zadost[zastavy_vyse]';}
          if (!$('souhlas').checked) {hlaseni += "- k odeslání nezávazné žádosti je třeba Váš souhlas se zpracováním osobních údajů\n"; }

		  //if ((x['zadost[nem_kraj]'].value != 11 && x['zadost[nem_kraj]'].value != 16) && x['zadost[id_vlastnictvi]'].value == 2) 
		  //			hlaseni = "Družtevním bytem můžete ručit pouze v Praze nebo Středočeském kraji!\n\n" + hlaseni; 
		  
		  /*zajisteni = posouditZajisteni();
		  if (zajisteni != "")
		  		hlaseni = zajisteni + "\nDalší chyby formuláře:\n" + hlaseni;
		  */
          break;
        default : return false;
    }

    if (hlaseni) {
          hlaska(hlaseni);
          //x['zadost[prijmeni]'].focus();
          if (focus) eval("x['"+focus+"'].focus();");
          return false;
    }
    else {
          unformatuj_policka();
          return true;
    }
}

function getInterest()
{
    id_ucel = $('calc_ucel').value;
    castka =  $('calc_penize').value;
    puvodni_castka = castka;
    castka = parseInt(castka.replace(/ /g,""),10);
    delka_uveru = $("calc_roky").value;
    
    var jineNakladyCastka = new Array();
    var jineNakladyDny    = new Array();

    if( isNaN( castka ) || castka < 100000 )
    {
    	return;
    }
    
    new Ajax.Request(
		"scripts/ajax.php",
		{
			method:   "get",
			parameters: {
				op : "getInterest",
				ucel : id_ucel,
				castka : castka,
				delka : delka_uveru
			},
			onSuccess: function(transport) 
			{
				if (transport.responseText != "") 
				{
					temp = transport.responseText.split("||");
					urok = parseFloat(temp[0]);
					urok_vip = parseFloat(temp[1]);
					poplatek = parseFloat(temp[2]);
					poplatky = parseFloat(temp[3]);
					if(!isNaN(urok) || !isNaN(urok_vip) )
					{
						urok = urok / 100;
						urok_vip = urok_vip / 100;
						
						
						koef = (1 - Math.pow(1 / (1 + urok / 12.0), 12 * delka_uveru)) / (urok / 12.0);
						koef_vip = (1 - Math.pow(1 / (1 + urok_vip / 12.0), 12 * delka_uveru)) / (urok_vip / 12.0);
						//console.log('Urok: '+urok);
						//console.log('KoeficientSTD: '+koef);
						//console.log('KoeficientVIP: '+koef_vip);
						//console.log('id_ucel: '+id_ucel);
						
						// vip splátky jen když je splatnost delší než 3 let
						if (delka_uveru < 3) {
							koef_vip = koef;
							urok_print = temp[0];
						}
						else {
            	urok_print = temp[1];
            }
						
						splatka = Math.round(castka / koef_vip) + poplatek;
						
						//console.log('splatka: '+splatka);
						
						jineNakladyCastka.push(poplatky);
						jineNakladyDny.push(0);
						
						$("calc_splatka").value = splatka;
						if(!isNaN(splatka)) {
								$("span_splatka").innerHTML = oddelovac_pridej(splatka)+" Kč";
								$("splatka_text_form").value = " "+oddelovac_pridej(splatka)+" Kč";
            }								
						else
								$("span_splatka").innerHTML = "<div style=\"font-size:12px; margin-top: 10px\">vyplňte výši, splatnost a účel úvěru</div>";
						rpsn_x = RPSN(puvodni_castka,splatka,(delka_uveru*12),12,jineNakladyCastka,jineNakladyDny);
						$("span_rpsn").innerHTML = "Úrok od "+urok_print+"% p.a., RPSN od "+rpsn_x;
					}
				}
			}
		}
	);
}


function ajaxChangeDelkaUveru(ucel)
{
    ucel = ucel;

    if (ucel == 9) {
    	$("jmeno_a_prijmeni").innerHTML = "Jméno a příjmení";
    	$("prijmeni_a_firma").innerHTML = "Firma";
    	$("rodne_cislo_ico").style.display = "block";
    }
    if (ucel < 9) { 
    	$("jmeno_a_prijmeni").innerHTML = "Jméno";
		$("prijmeni_a_firma").innerHTML = "Příjmení";
    	$("rodne_cislo_ico").style.display = "none";
    }
    
    new Ajax.Request(
		"scripts/ajax.php",
		{
			method:   "get",
			parameters: {
				op : "changeDelkaUveru",
				ucel : ucel,
				value : $("calc_roky").value
			},
			onSuccess: function(transport) 
			{
				if (transport.responseText != "") 
				{
						$("calc_roky_selector").innerHTML = transport.responseText;
				}
			}
		}
	);
}

function ajaxChangeVyseUveru(ucel)
{
    ucel = ucel;
    
    new Ajax.Request(
		"scripts/ajax.php",
		{
			method:   "get",
			parameters: {
				op : "changeVyseUveru",
				ucel : ucel,
				value : $("calc_penize").value
			},
			onSuccess: function(transport) 
			{
				if (transport.responseText != "") 
				{
						$("calc_penize_selector").innerHTML = transport.responseText;
						getInterest();
				}
			}
		}
	);
    
}

function zmenStyl ()
{
	colorArray = new Array();
	colorArray[1] = "#4cae44";
	colorArray[4] = "#555555";
	colorArray[27] = "#fe6816";
	colorArray[6] = "#16a1d5";
	
	index = $('calc_ucel').value;
	color = colorArray[index];
	var selectors = document.getElementsByTagName('select');
	var inputs = document.getElementsByTagName('input');
	var divs = document.getElementsByTagName('div');
	var spans = document.getElementsByTagName('span');
	var h1s = document.getElementsByTagName('h1');
	
	for (x=0;x<selectors.length;x++) {
		if (selectors[x].className == "form-calculator2") {
			selectors[x].style.color = color;
		}
	}
	for (x=0;x<inputs.length;x++) {
		if (inputs[x].className == "form-calculator2") {
			inputs[x].style.color = color;
		}
	}
	for (x=0;x<divs.length;x++) {
		if (divs[x].className == "div-calculator2") {
			//if (divs[x].id == "TooltipContainer")
			//	divs[x].style.border = color + " 2px solid";
			divs[x].style.color = color;
		}
	}
	for (x=0;x<spans.length;x++) {
		if (spans[x].className == "div-calculator2") {
			spans[x].style.color = color;
		}
	}
	for (x=0;x<h1s.length;x++) {
		if (h1s[x].className == "div-calculator2") {
			h1s[x].style.color = color;
		}
	}
}

function napoveda(x)
{
	if (x == 1)
		pmaTooltip('Uváděné výše úvěru jsou nominální a budou poníženy o poplatky za poskytnutí úvěru, dle platného sazebníku poplatků a odměn (souvisedjícícho s konkrétním typem úvěru), který je součástí Všeobecných obchodních podmínek, v celkové výš maximálně 6,5% z úvěrového rámce. Úvěr lze o tento poplatek navýšit.');
	if (x == 2)		
		pmaTooltip('Výše splátky je uváděna za předpokladu využití motivačního bonusu ke smlouvě o úvěru (podmínky pro získání Motivačního bonusu jsou k dispozici na vyžádání ve společnosti, popřípadě ke stažení na tomto webu). Splátka je uváděna včetně poplatku za správu úvěru ve výši 199,- Kč.');
}

function kontextNapoveda(text)
{
		$('kontextNapoveda').innerHTML = text;	
}

function getZajisteni ()
{
		
}

