﻿var zj_nezPremija_A = [
  20.24,
  23.29,
  67.565,
  76.8,
  40.48,
  46.58,
  135.13,
  153.53,
  60.72,
  69.86,
  202.69,
  230.29,
  80.96,
  93.15,
  270.25,
  307.5,
  101.2,
  116.44,
  293.54,
  330.34
]

function um_obvesti(id, s) {
    if ( document.getElementById )
        if ( document.getElementById(id) )
            if ( document.getElementById(id).innerHTML ) {
                if ( s.length > 0 )
                    document.getElementById(id).innerHTML = s;
                else
                    document.getElementById(id).innerHTML = "&nbsp;";
                return true;
            }
    if ( s.length > 0 ) alert(s);
    return false;
}

function um_display(id, visible_B) {
    if ( document.getElementById )
        if ( document.getElementById(id) )
            if ( document.getElementById(id).style )
                if ( visible_B )
                    document.getElementById(id).style.display = "block";
                else
                    document.getElementById(id).style.display = "none";
}

function um_parseInteger(expr) {
    var n = parseInt(expr);
    if ( isNaN(n) )
        return 0
    else
        return n
}

function formatNumber(expr, decplaces) {
	var decseparator = arguments[2] || ",";
	var thoseparator = arguments[3] || ".";

	if ( isNaN(expr) ) return 0;

	var str = "" + Math.round(eval(expr) * Math.pow(10,decplaces));

	while (str.length <= decplaces) {
		str = "0" + str;
	}

	var decpoint = str.length - decplaces;

	var formats = decplaces > 0 ? decseparator + str.substring(decpoint, str.length) : "";

	var i = decpoint-3;
	while (i > 0) {
		formats = thoseparator + str.substring(i, i+3) + formats
		decpoint = i;
		i -= 3;
	}
	formats = str.substring(0,decpoint) + formats;

	return formats
}


function zivKlasVrsta(f) {
var b = f.zav_vrsta[1].checked;

	um_display("d_vzajemno", b);
	um_display("bd_druzinsko", b);
	if ( !b ) f.bd_druzinsko.checked=false;
	/*
		if ( b ) {
			f.kz_5.checked = false;
			f.kz_5_v.value = "";
		}
		um_display("d_zavaro_5a", !b);
		um_display("d_zavaro_5b", !b);
		um_display("d_zavaro_5c", !b);
		um_display("d_zavaro_5d", !b);
		um_display("d_zavaro_5e", !b);
	*/
}

function zivKlasNezgodnoRecalc(f) {
    // vzpostavi odškodninska polja
    var p = f.zav_nez_inv.value;

    f.nez_vso_smr.value = formatNumber(p/2,0);

    var dnevna = p/2000;
    if ( dnevna > 20 ) dnevna = 20;
    f.nez_vso_do.value  = formatNumber(dnevna,0);
    f.nez_vso_bd.value  = formatNumber(dnevna,0);

    p = (p/10000 - 1) * 4;

    // hierarhično odvisno vklapljanje
    if ( f.zav_nez_opt_3.checked ) {
       f.zav_nez_opt_2.checked = true;
       f.zav_nez_opt_1.checked = true;
    } else if ( f.zav_nez_opt_2.checked )
       f.zav_nez_opt_1.checked = true;


    if ( f.zav_nez_opt_1.checked ) p++;
    if ( f.zav_nez_opt_2.checked ) p++;
    if ( f.zav_nez_opt_3.checked ) p++;

    var p = zj_nezPremija_A[p];

    f.nez_pre_let.value = formatNumber(p,2);
    f.nez_pre_mes.value = formatNumber(p/12,2);
}


function zivKlasNezgodno(f) {

    if ( f.dodatno_nezgodno.checked ) {

        var z_pre = 100 // !!!! --- um_parseInteger(f.premija.value)
        if ( z_pre == 0 ) {
            alert("Najprej vnesite premijo!");
            f.dodatno_nezgodno.checked = false;
            f.premija.focus();
            return false;
        }

        var max = 10;

        if (z_pre > 100)
            max = 50;
        else if (z_pre > 70)
            max = 30;
        else if (z_pre > 50)
            max = 20;

        var i = 0;
        for (i = f.zav_nez_inv.options.length-1; i >= 0; i--)
            f.zav_nez_inv.options[i] = null;

        for ( i = 10; i <= max; i+=10 )
            f.zav_nez_inv.options.add( new Option( formatNumber(i*1000,0), (i*1000), false, false) );
        f.zav_nez_inv.options.value = 10000;
        zivKlasNezgodnoRecalc(f);

        um_display("d_nezgodno", true);

    } else
        um_display("d_nezgodno", false);

}



function zivKlasDoba(f) {
    var i = 0;
    for (i = f.zav_trajanje.options.length-1; i > 0; i--)
        f.zav_trajanje.options[i] = null;

    var lrmin;
    lrmin = f.leto_rojstva.value;
    if ( f.zav_vrsta[1].checked )
        if ( f.leto_rojstva_v.value < lrmin ) lrmin = f.leto_rojstva_v.value;

    for (i = 5; i < 76 - ( f.letnica.value - lrmin ); i++)
        f.zav_trajanje.options.add( new Option(i,i,false,false) );

}

function zivKlasVklop(e)
{
    if ( !e.checked )
    {
        e.form.elements[e.name + "_v"].value = "";
        zivKlasVsote(e.form);
    }
    else
        e.form.elements[e.name + "_v"].focus();
}
function zivKlasVsote(f)
{
// stikala: kz_1 .. kz_5, textbox: kz_1_v .. kz_5_v

    var i = 0, v = 0, sum = 0;

    // najprej uskladimo vnose in stikala
    for ( i = 1; i < 6; i++ ) {
        v = um_parseInteger( f.elements["kz_" + i + "_v"].value )
        if ( v > 0 ) {
            f.elements["kz_" + i + "_v"].value = v;
            sum += v;
            f.elements["kz_" + i].checked = true;
        } else {
            f.elements["kz_" + i + "_v"].value = "";
            f.elements["kz_" + i].checked = false;
        }
    }

    um_obvesti("vsota_opozorilo", "");

    // potem preverimo pogoje
    if ( f.kz_5.checked && !(f.kz_4.checked || f.kz_3.checked) )
    {
        alert("Življenjsko zavarovanje IIIe je mogoče skleniti le v kombinaciji s IIIc ali IIId!")
        f.kz_5_v.value=""; //focus();
        f.kz_5.checked =  false;
        return false;
    }
    else if ( f.kz_5.checked && (f.kz_4.checked || f.kz_3.checked) )
    {
		var sum_cd = 2 * ( um_parseInteger(f.elements["kz_3_v"].value) + um_parseInteger(f.elements["kz_4_v"].value) );
		if ( sum_cd > 20000 ) sum_cd = 20000;
		if ( um_parseInteger( f.elements["kz_5_v"].value ) > sum_cd )
		{
	        alert("Zavarovalna vsota IIIe je lahko največ " + sum_cd + "!");
	        f.kz_5_v.value=""; //focus();
	        f.kz_5.checked =  false;

			return false;
		}
	}

    if ( sum > 25000 )
        um_obvesti("vsota_opozorilo", "Potreben bo zdravniški pregled!");

    return ( sum > 0 );

}


function zivKlasCheck(f) {

    if ( f.leto_rojstva.value == 0 ) {
        alert("Izberite letnico rojstva!");
        f.leto_rojstva.focus();
        return false;
    } else if ( f.spol.value == 0 ) {
        alert("Izberite spol!");
        f.spol.focus();
        return false;
    }

    if ( f.zav_vrsta[1].checked )
      if ( f.leto_rojstva_v.value == 0 ) {
          alert("Izberite letnico rojstva 2. zavarovanca!");
          f.leto_rojstva_v.focus();
          return false;
      } else if ( f.spol_v.value == 0 ) {
          alert("Izberite spol 2. zavarovanca!");
          f.spol_v.focus();
          return false;
      }

    if ( ( f.zav_trajanje.value == 0 && (f.kz_2_v.value != "" || f.kz_3_v.value != "" || f.kz_4_v.value != "" || f.kz_5_v.value != "") ) || ( f.zav_trajanje.value > 75 - (f.letnica.value - f.leto_rojstva.value) ) ) {
        alert("Izberite trajanje zavarovanja!");
        f.zav_trajanje.focus();
        return false;
    }

    var retVal = zivKlasVsote(f);
    if ( !retVal ) {
        alert("Določite zavarovalno/e vsoto/e!");
        f.kz_1_v.focus();
        return false;
    }

	if ( !(f.ziv_zav_placilo[0].checked || f.ziv_zav_placilo[1].checked || f.ziv_zav_placilo[2].checked || f.ziv_zav_placilo[3].checked || f.ziv_zav_placilo[4].checked) ) {
        alert("Izberite način plačila!");
        f.ziv_zav_placilo[1].focus();
        return false;
    }

    return true;
}

function tilia_popup(h,n)
{
	var x = arguments[2] || 530;
	var y = arguments[3] || 300;

	var w = window.open('popup/?v=' + h, n, 'width='+x+',height='+y+',status=0,toolbar=0,menubar=0,location=0,resizable=1,scrollbars=1');
	if ( w.focus ) w.focus();
}

