
var old_msg = '';
var odl_poj_doba = '';
$(document).ready(function() {
 
  $('#b_lecebne').click(function() {
     if($('#b_lecebne').attr('checked')) {
       $('#lecebne').attr("disabled","");
     } else {
       $('#lecebne').attr("disabled","disabled");
     }
     recalc_pojistne();
  });
  
  $('#b_hosp').click(function() {
     if($('#b_hosp').attr('checked')) {
       $('#hosp').attr("disabled","");
     } else {
       $('#hosp').attr("disabled","disabled");
     }
     recalc_pojistne();
  });
  
  $('#hosp').change(function() {
    recalc_pojistne();
  });
  $('#lecebne').change(function() {
    recalc_pojistne();
  });
  
  $("input[name='sex']").click(function() {
    if(check_all_params(true)) { 
      recalc_pojistne();
    }
  });
  
  $("input[name='pay_type']").click(function() {
    if(check_all_params(true)) { 
      recalc_pojistne();
    }
  });
  
  $('#smrt').change(function() {
    var death = $(this).val();
    if(death > 0) {
      if(!check_all_params()) { 
        $('#smrt').selectOptions("0");
        return false;
      }
      $('#trvalky').attr("disabled","");
      $.get(base_url + 'jquery_php/urazove_trvalky.php', 
	      {death: death},
	      function(data) {
	        $('#trvalky').html(data);
	        $('#trvalky').change();
  	    }  //data
	    );
	  
      $.get(base_url + 'jquery_php/urazove_lecebne.php', 
	      {death: death},
	      function(data) {
	        $('#lecebne').html(data);
	        $('#lecebne').change();
  	    }  //data
	    );
	    $('#lecebne').selectOptions("50");
	    
      $.get(base_url + 'jquery_php/urazove_hosp.php', 
	      {death: death},
	      function(data) {
	        $('#hosp').html(data);
	        $('#hosp').change();
  	    }  //data
	    );
	    $('#hosp').selectOptions("50");    
    } else {
      $('#trvalky').attr("disabled","disabled");
      
    }
    recalc_pojistne();
  });
  
  $('#trvalky').change(function() {
    var trvalky = $(this).val();
    prog_fil = trvalky * 100000 * 5;
    $('#progressive_filling').html(formatCurrency(prog_fil) + ' Kč');   
    recalc_pojistne();
  });
  
  //Radio button zamestnani
  $("input[name='job']").click(function() {
    risk_group_change();
  });
  
  //Radio button provozuji sport
  $("input[name='sport_type']").click(function(){
    sport_type = $("input[name='sport_type']:checked").val();
    if(sport_type == 0) {
      $('#row_sport').hide(); //schovej radek se sportem
      $('#row_sport_ucast').hide(); //schovej radek se sportem
      risk_group_change();
    } else if(sport_type == 1) {
      $('#row_sport').show();
      $('#row_sport_ucast').hide();
      //fill_sport(sport_type,0);	 
    } else if(sport_type > 1) {
      sport_ucast = $("input[name='sport_ucast']:checked").val();
      $('#row_sport').show();
      if(sport_ucast > 0 || sport_ucast == 0) {
   //     $('#row_sport').show();
        //fill_sport(sport_type,sport_ucast);	 
      } else {
   //      $('#row_sport').hide();
      }
      $('#row_sport_ucast').show(); //zobraz radek se sportem
    }   
     get_sport_risk_group();
  });
  
  $("input[name='sport_ucast']").click(function(){
    get_sport_risk_group();
  });
  
  
  /**
   * hlavny prepocet rizikovej skupiny
   */     
  function risk_group_change(risk_sport) {
    job = $("input[name='job']:checked").val();
    if(job == 3) { job = 1 } //pre "ine" povolanie dame 1 skupinu
    risk = job; //rizikova z povolania
     
    risk_sport = $("#risk_group_sport").val();
    sport_type = $("input[name='sport_type']:checked").val();
    if(sport_type == 0) {
      risk_sport = 1;
    } 
    if(risk_sport > risk){ 
      risk = risk_sport;
    }
    
    //nepojistitelna skupina
    if(risk_sport == -1) {
      risk = "";
      $('#nepojistelne_row').show();
    } else {
      $('#nepojistelne_row').hide();
    }
    
    $('#risk_group').val(risk);
    if(check_all_params(true)) {
      recalc_pojistne();
    }
  
  }
  
  function fill_sport(sport_type,sport_ucast) {
    if(sport_ucast > 1) { sport_ucast = 1 }
    $.get(base_url + 'jquery_php/urazove_sport.php', 
      {sport_type: sport_type, sport_ucast: sport_ucast},
      function(data) {
        $('#sport').html(data);
         $('#sport').selectOptions("0");
	    } 
    );
  }
  
  $("#sport").change(function(){
    $.get(base_url + 'jquery_php/urazove_riz_skupina.php', 
      {id: $(this).val()},
      function(data) {
         data = parseInt(data);
         risk_group_change(data);
	    } 
    );
  });
  //--------------------------------
  
  $(".sport_checks").click(function(){
    get_sport_risk_group();
  });
  
  function get_sport_risk_group() {
   
    var checked_sports=''; 
    $( ".sport_checks" ).each( function(){      
      if($(this).attr("checked")) {
        checked_sports = checked_sports + ';' +$(this).val();
      }
    });
    sport_type = $("input[name='sport_type']:checked").val();
    sport_ucast = $("input[name='sport_ucast']:checked").val();

    $.get(base_url + 'jquery_php/urazove_riz_skupina.php', 
      {checked_sports: checked_sports, sport_type: sport_type, sport_ucast: sport_ucast },
      function(data) {
      
         data = parseInt(data);
         $("#risk_group_sport").val(data);
         risk_group_change();
	    } 
    );
  }
  
  
  
  //DOBA pojisteni
  $("#pocatek_pojisteni").change(function(){
    // fill_konec_pojisteni();
  });
  $("#pojistna_doba").change(function(){
     //fill_konec_pojisteni();
  });
  $("#pojistna_doba").keydown(function(){
     odl_poj_doba = $(this).val();
  });
  $("#pojistna_doba").keyup(function(){
     if($(this).val() != parseInt($(this).val())) {
       alert('Musíte zadat číslo.');
       $(this).val(odl_poj_doba);
     }
     
     if($(this).val() < 1) {
       alert('Pojistná doba musí být od 1 roku a více.');
       $(this).val(odl_poj_doba);
     }
  });
  
  $("#start_age").change(function(){
    vek = $("#start_age").val();
    doba = 65-vek;
    $("#pojistna_doba").val(doba);
  });
  
  function fill_konec_pojisteni() {
    //pocatek = $("#pocatek_pojisteni").val();
    //pocatek = pocatek.split(".");
    vek = $("#start_age").val();
    doba = 65-vek;
    $("#pojistna_doba").val(doba);
    /*
    if(pocatek && doba) {
      pocatek = pocatek.split(".");
      konec_rok = parseInt(doba) + parseInt(pocatek[2])
      konec = pocatek[0] + '.' + pocatek[1] + '.' + konec_rok;
    } else {
      konec = '';
    }
    $("#konec_pojisteni").val(konec);
    */
  }
  //-------------
  
  
  
  function recalc_pojistne() {
    
    if(!check_all_params()) { return false; }
    
    smrt = $('#smrt').val();
    trvalky = $('#trvalky').val();
    if($('#b_lecebne').attr('checked')) {
      lecebne = $('#lecebne').val();
    } else {
      lecebne = 0;
    }
    if($('#b_hosp').attr('checked')) {
      hosp = $('#hosp').val();
    } else {
      hosp = 0;
    }    
    
    sex = $("input[name='sex']:checked").val();
    risk_group = $('#risk_group').val();
    $.get(base_url + 'jquery_php/urazove_get_tariff.php', 
      {sex: sex, risk_group: risk_group, company: 1},
      function(data) {
        suma = 0;
        var pole=data.split(";");
        //smrt
        temp = pole[0] * smrt;
        temp = Math.ceil(temp);
        suma = suma + temp;
        $('#pojistne_smrt').val(formatCurrency(temp));
        
        //trvalky
        temp = pole[1] * trvalky;
        temp = Math.ceil(temp);
        suma = suma + temp;
        $('#pojistne_trvalky').val(formatCurrency(temp));
        
        //lecebne
        temp = pole[2] * lecebne;
        temp = Math.ceil(temp);
        suma = suma + temp;
        $('#pojistne_lecebne').val(formatCurrency(temp));
        
        //hosp
        temp = pole[3] * hosp;
        temp = Math.ceil(temp);
        suma = suma + temp;
        $('#pojistne_hosp').val(formatCurrency(temp));    
        
        koef = get_pay_term_koef();
        term_pay = $("input[name='pay_type']:checked").val();
        suma_term = suma * (12 / term_pay); //koeficient pro rocni platbu
        suma_term = (suma_term / koef);
        
        suma_term = Math.round(suma_term);
        
        $('#month_complete_pure').val(suma);   
        $('#term_complete_pure').val(suma_term);   
        $('#month_complete').val(formatCurrency(suma));   
        $('#term_complete').val(formatCurrency(suma_term)); 
	    } 
    );
  }
  //recalc pojistne
  
  function get_pay_term_koef() {
    term_pay = $("input[name='pay_type']:checked").val();
    if(term_pay == 1) {
      koef = 1.08;
    } else if(term_pay == 2) {
      koef = 1.03765;
    } else if(term_pay == 4) {
      koef = 1.01864;
    }
    return koef;
  }
  
  function check_all_params(no_msg) {
    msg = '';
    
    sex = $("input[name='sex']:checked").val();
    risk_group = $('#risk_group').val();
    if(!sex) {
      msg = "Musíte zvolit pohlaví\n";
    }
    if(!risk_group) {
      job = $("input[name='job']:checked").val();
      if(!job) {
        msg = msg + "Musíte zvolit zaměstnání\n";
      }
      sport_type = $("input[name='sport_type']:checked").val();
      if(sport_type != 0 && !sport_type) {
        msg = msg + "Musíte zvolit jestli provozujete sport";
      }
    }
    if(msg != '') {
      //if(old_msg == msg) { return false; }
      if(!no_msg) {
        alert(msg);
      }
      old_msg = msg;
      return false;
    }
    return true;
  }
  //---------------------
  
  //Krok c.2 
  $('#b_pojistnik_pojisteni').click(function() {
     if($('#b_pojistnik_pojisteni').attr('checked')) {
       $('#cover_pojisteny').hide();
     } else {
       $('#cover_pojisteny').show();
     }
  });
  //--------
  
  
  //Krok c.3
  $.each(['leky', 'urazy', 'operace', 'chemo', 'nemoce', 'poj_osob', 'vypoved_smlouvy', 'sport_extrem'], function() {
    var akce = this;
    $("input[name='"+akce+"']").click(function(){
      if($("input[name='"+akce+"']:checked").val() == 'ano') {
        $('#'+akce+'_row').show(); 
      } else {
        $('#'+akce+'_row').hide(); 
      }     
    });
  });
  //--------
  
  
  
  //kontaktni form
  $('#contact_us').click(function(event) {
   $('#contact_form_content').slideToggle("slow");
   $(this).toggleClass("active")
   return false;
	});
	
	$('#contact_submit').click(function(event) { 
	  text = $('#cf_text').val();
	  name = $('#cf_name').val();
	  surname = $('#cf_surname').val();
	  phone = $('#cf_phone').val();
	  email = $('#cf_email').val();
	  town = $('#cf_town').val();
	  subject = 'Kontaktní formulář - úrazové pojištění';
	  
	  if(!phone || !email) { 
      alert('Musíte zadat email a telefon');
      return false; 
    }
    $.get(base_url + 'jquery_php/contact_form_send_email.php', 
      {text: text, name: name, surname: surname , phone: phone, email: email, town: town, subject: subject },
      function(data) {       
         if(data) {
           $('#ok_row').show();
           $('#cf_contact_form_ext').hide();
           $('#cf_button').hide();
           
           $('#cf_text').val('');
	       
         }
	    } 
    );
    
    return true;
	});
	
	$('#cf_send_again').click(function(event) { 
	  $('#ok_row').hide();
	  $('#cf_contact_form_ext').show();
    $('#cf_button').show();
    return false;
	});
	
})


 function formatCurrency(num) {
    num = num.toString().replace(/\$|\,/g,"");
    if (isNaN(num)) num = "0";
    sign = (num == (num = Math.abs(num)));
    num = Math.floor(num * 100 + 0.50000000001);
    cents = num % 100;
    num = Math.floor(num / 100).toString();
    if (cents < 10) cents = "0" + cents;
    for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3); i++)
    num = num.substring(0, num.length - (4 * i + 3)) + ' ' + num.substring(num.length - (4 * i + 3));
    return (((sign) ? "" : '-') + '' + num + '.' + cents);
  }
