Advertisement
pabloducato

InterCitySourceCode

Oct 26th, 2019
475
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. $.fn.zakupBiletu = function (options) {
  3.     var zakup_biletu_form = $("#zakup_biletu_form");
  4.     var nr_biletu_osoby_towarzyszacej = $("#nr_biletu_osoby_towarzyszacej");
  5.     var rodzaj_wagonu = $("#rodzaj_wagonu");
  6.     var dalej_button = $(".dalej_button");
  7.     var klasa_wagonu = $("#klasa_wagonu");
  8.     var tryb_posel = $("#tryb_posel");
  9.     var przesiadkaPrev = $(".przesiadka_prev");
  10.     var przesiadkaNext = $(".przesiadka_next");
  11.     var arrow_box_ext_info = $(".arrow_box_ext_info");
  12.  
  13.     var nextStepPrzesiadka = 0;
  14.     var ODCINEK = {
  15.         PIERWSZY: 1,
  16.         DRUGI: 2
  17.     };
  18.  
  19.     // events
  20.     dalej_button.unbind('click').click(function (e) {
  21.  
  22.         var self = $(this);
  23.  
  24.         var strefaCiszyArr = [52, 11];
  25.         var dlaPodrzDzieckiDoLat6Arr = [3,50];
  26.         var rowerOferta = 15;
  27.         var SIEDZACE = 1;
  28.  
  29.         var rodzajWagonu = parseInt($("#rodzaj_wagonu").find("option:selected").val());
  30.         var rodzajWagonuOdcinek_1 = parseInt($("#rodzaj_wagonu_odcinek_2").val());
  31.         var rower = $("#rodzaj_wagonu").find("option:selected").val();
  32.         var krajowy = self.attr("krajowy");
  33.         var kat_poc = self.attr("kat_poc");
  34.         var is_bilet_rodzinny = $("#bilet_rodzinny").is(":checked");
  35.         var is_przesiadka_zakupowa = ParamUtil.parseBoolean(self.attr("przesiadka"));
  36.         var ignoruj_odc = false;
  37.         if (self.attr("ignoruj_odc") !== null && self.attr("ignoruj_odc") !== undefined) {
  38.             ignoruj_odc = ParamUtil.parseBoolean(self.attr("ignoruj_odc"));
  39.         }
  40.         if (ignoruj_odc) {
  41.             is_przesiadka_zakupowa = false;
  42.         }
  43.  
  44.         if (!validMiejsceSasiadujaceWskazane(ODCINEK.PIERWSZY)) {
  45.             return; // blokujemy przycisk Dalej
  46.         }
  47.  
  48.         if (!validNrBiletuOsobyTowarzyszacej()) {
  49.             return;
  50.         }
  51.  
  52.         var v1 = $("#dalej_modal_ok").attr("v1");
  53.         var v2 = $("#dalej_modal_ok").attr("v2");
  54.         var v3 = $("#dalej_modal_ok").attr("v3");
  55.         var v4 = $("#dalej_modal_ok").attr("v4");
  56.  
  57.         var dalej_modal_false = true;
  58.         var dalej_modal_atention = false;
  59.         var dalej_modal_bilet_pies_caly_przedzial = false;
  60.         var dalej_modal_jedno_lozko_dziecko_opiekun = false;
  61.         var dalej_modal_wymiana_mm_niechronologiczne_daty = false;
  62.         var dalej_modal_dziecko_metropol = false;
  63.        
  64.         $('.dalej_modal').each(function (index) {
  65.             $(this).hide();
  66.         });
  67.  
  68.         var openModal = false;
  69.  
  70.         if (krajowy) {
  71.  
  72.             // strefa ciszy
  73.             if ((strefaCiszyArr.indexOf(rodzajWagonu) > -1 || strefaCiszyArr.indexOf(rodzajWagonuOdcinek_1) > -1) && !is_przesiadka_zakupowa) {
  74.                 openModal = true;
  75.                 $("#dalej_modal_strefa_ciszy").show();
  76.                 $("#dalej_modal_ok").val(v1);
  77.             }
  78.  
  79.             // dla dziecka do lat 6
  80.             if (nextStepPrzesiadka == 0) {
  81.                 if (dlaPodrzDzieckiDoLat6Arr.indexOf(rodzajWagonu) > -1 && !BilDodatkoweService().czyNieWybranoCalegoPrzedzialuDlaPsa()) {
  82.  
  83.                     var ile_osob = Number($("#liczba_n").find("option:selected").val()) + Number($("#liczba_u").find("option:selected").val()) + Number($("#liczba_u_2").find("option:selected").val());
  84.                     if (ile_osob >= 2) {
  85.                         if (kat_poc != 81 || ile_osob <= 4) {
  86.                             openModal = true;
  87.                             $("#dalej_modal_dla_podr_z_dzieckiem_do_lat_6").show();
  88.                             $("#dalej_modal_ok").val(v1);
  89.                         }
  90.                     }
  91.                 }
  92.             }
  93.  
  94.             // bilet rodzinny
  95.             if (is_bilet_rodzinny) {
  96.  
  97.                 var usluga_id = parseInt($(".rodzaj_miejsca:checked").val());
  98.                 var container_id = (usluga_id == SIEDZACE) ? 1 : 2;
  99.                 var usluga_wrapper = $("#rodzaj_ulgi_wrap_" + container_id);
  100.  
  101.                 var liczba_n = $("#liczba_n").val();
  102.                 var kod_znizki = usluga_wrapper.find("#kod_znizki").val();
  103.                 var liczba_u = $("#liczba_u").val();
  104.  
  105.                 var kod_znizki_2 = usluga_wrapper.find("#kod_znizki_2").val();
  106.                 var liczba_u_2 = $("#liczba_u_2").val();
  107.  
  108.                 var ile_osob = Number(liczba_n) + Number(liczba_u) + Number(liczba_u_2);
  109.  
  110.                 if (liczba_n == 0 && (Number(liczba_u) + Number(liczba_u_2)) > 0)
  111.                 {
  112.                     openModal = true;
  113.                     dalej_modal_false = false;
  114.                     $("#dalej_modal_bilet_rodzinny_bledna_liczba_osob").show();
  115.                     $("#dalej_modal_ok").val(v3);
  116.  
  117.                 } else
  118.                 {
  119.                     if ((liczba_u > 0 && kod_znizki == 77) || (liczba_u_2 > 0 && kod_znizki_2 == 77) || ile_osob < 2 || ile_osob > 5)
  120.                     {
  121.  
  122.                     } else if (liczba_n >= 2 || (liczba_u > 0 && kod_znizki > 1) || (liczba_u_2 > 0 && kod_znizki_2 > 1))
  123.                     {
  124.                         openModal = true;
  125.                         $("#dalej_modal_bilet_rodzinny").show();
  126.                         $("#dalej_modal_ok").val(v2);
  127.                     }
  128.  
  129.  
  130.                     if (strefaCiszyArr && $("#dalej_modal_strefa_ciszy").is(":visible") && $("#dalej_modal_bilet_rodzinny").is(":visible"))
  131.                     {
  132.                         $("#dalej_modal_strefa_ciszy").hide();
  133.                         $("#dalej_modal_bilet_rodzinny").hide();
  134.                         $("#dalej_modal_bilet_rodzinny_strefa_ciszy").show();
  135.                         $("#dalej_modal_ok").val(v2);
  136.                     }
  137.                 }
  138.             }
  139.  
  140.             /*** oblsuga modala dla pracownikow kolei ***/
  141.             var ILOSC_OSOB_PRACOWNIK_KOLEI = 1; // dla 1 normalny submit, powyżej 1 pokazujemy modala
  142.             if (iloscZaznaczonychZnizekPracownikKolei() > ILOSC_OSOB_PRACOWNIK_KOLEI && !ZakupBiletuUtil().isPolbus()) {
  143.                 openModal = true;
  144.                 $("#dalej_modal_pracownik_kolei").show();
  145.             }
  146.  
  147.  
  148.             if (BilDodatkoweService().czyNieWybranoCalegoPrzedzialuDlaPsa()) {
  149.                 openModal = true;
  150.                 dalej_modal_bilet_pies_caly_przedzial = true;
  151.             }
  152.  
  153.             if (czyWybranoWspolneUsytuowanieNaJednymLozkuDzieckoOpiekun()) {
  154.                 openModal = true;
  155.                 dalej_modal_jedno_lozko_dziecko_opiekun = true;
  156.             }
  157.  
  158.  
  159.  
  160.         } // end krajowy
  161.         if($("#dalej_modal_dziecko_metropol").length > 0)
  162.         {  
  163.             var liczba_n = $("#liczba_n").val();
  164.             var liczba_u = $("#liczba_u").val();
  165.             var nrTaryfyII = $("#nrTaryfyII").val();
  166.             if( liczba_n == 0 && liczba_u > 0 && nrTaryfyII == 73) {            
  167.                 openModal = true;
  168.                 dalej_modal_dziecko_metropol = true;
  169.             }
  170.         }
  171.         if ($(".bilet_dodatkowy").length > 0) {
  172.             $(".bilet_dodatkowy").each(function (idx, obj) {
  173.  
  174.                 var activeOption = $(obj).find("option:selected").val();
  175.                 if (parseInt(activeOption) == rowerOferta && !is_bilet_rodzinny) {
  176.                     openModal = false;
  177.                 }
  178.  
  179.             });
  180.         }
  181.        
  182.         if($("#dalej_modal_wymiana_mm_niechronologiczne_daty").length > 0) {            
  183.             openModal = true;
  184.             dalej_modal_wymiana_mm_niechronologiczne_daty = true;
  185.         }        
  186.  
  187.         if ($(this).attr("przesiadka") == "true")
  188.         {
  189.             var kat_1 = $(this).attr("kat_1");
  190.             var kat_2 = $(this).attr("kat_2");
  191.  
  192.             if (kat_1 != kat_2)
  193.             {
  194.                 if (czyZnalezionoZnizkiKolejarza()) {
  195.                     openModal = true;
  196.                     dalej_modal_atention = true;
  197.                 }
  198.             }
  199.         }        
  200.  
  201.         if (openModal && (nextStepPrzesiadka == 0))
  202.         {
  203.             var modalService = new OknoModalneService();
  204.  
  205.             if (dalej_modal_atention) {
  206.                 modalService.dalejModalAtention();
  207.  
  208.             } else if (dalej_modal_bilet_pies_caly_przedzial) {
  209.                 modalService.dalejModalBiletPiesCalyPrzedzial();
  210.  
  211.             } else if (dalej_modal_jedno_lozko_dziecko_opiekun) {
  212.                 modalService.dalejModalJednoLozkoDzieckoOpiekun();
  213.  
  214.             }else if(dalej_modal_wymiana_mm_niechronologiczne_daty) {
  215.                 modalService.dalejModalMiedzynarodowyNiechronologiczneDaty();
  216.            
  217.             }else if(dalej_modal_dziecko_metropol) {
  218.                 modalService.dalejModalMiedzynarodowyDzieckoMetropol();
  219.                
  220.             }else if (dalej_modal_false) {
  221.                 modalService.dalejModalFalse();
  222.                
  223.             }else {
  224.                 modalService.dalejModalDefault();
  225.             }
  226.  
  227.             // w przypadku przesiadki podmieniamy dla modala submita na button
  228.             if (is_przesiadka_zakupowa) {
  229.  
  230.                 $("#dalej_modal_ok").attr("type", "button").unbind('click').click(function (event) {
  231.  
  232.                     nextStepPrzesiadka++;
  233.                     przesiadkiService(nextStepPrzesiadka);
  234.                     $(this).okienkoModalne().close();
  235.                 });
  236.  
  237.             }
  238.  
  239.             $(this).okienkoModalne().open();
  240.  
  241.         } else if (is_przesiadka_zakupowa) {      
  242.            
  243.             if(ZakupBiletuUtil().czyWybranoZnizkiKolejarzaPolbus()) {                
  244.                 new OknoModalneService().modalZnizkiDlaKolejarzaPolbus(this);                
  245.                 return;
  246.                
  247.             }else if (ObslugaKlopotliwychZnizek().validate(this)) {                
  248.                 return;
  249.             }
  250.  
  251.             if (nextStepPrzesiadka == 0) { // odcinek 1
  252.                
  253.                 informacja_pasazerska($(this).attr("nr_poc_2"), $(this).attr("data_odj_2"), $(this).attr("lang"));
  254.  
  255.                 nextStepPrzesiadka++;
  256.                 przesiadkiService(nextStepPrzesiadka);
  257.                 return;
  258.  
  259.  
  260.             } else if (nextStepPrzesiadka == 1) { // odcinek 2
  261.  
  262.                 if (strefaCiszyArr.indexOf(rodzajWagonuOdcinek_1) > -1) {
  263.  
  264.                     prepareStrefaCiszyPrzesiadkiModal().unbind('click').click(function (event) {
  265.  
  266.                         nextStepPrzesiadka++;
  267.                         przesiadkiService(nextStepPrzesiadka);
  268.  
  269.                         if (nextStepPrzesiadka > 1) {
  270.                             document.forms['zakup_biletu_form'].submit();
  271.                         }
  272.  
  273.                     });
  274.  
  275.                     $(this).okienkoModalne().open();
  276.                     return;
  277.                 }
  278.  
  279.                 if (czyWybranoDlaPodroznychZDziecmiDoLat6(this, dlaPodrzDzieckiDoLat6Arr, kat_poc)) {
  280.                     return;
  281.                 }
  282.  
  283.                 if (!validMiejsceSasiadujaceWskazane(ODCINEK.DRUGI)) {
  284.                     return; // blokujemy przycisk Dalej
  285.                 }
  286.  
  287.                 document.forms['zakup_biletu_form'].submit();
  288.  
  289.             }
  290.  
  291.         } else {
  292.  
  293.             document.forms['zakup_biletu_form'].submit();
  294.         }
  295.  
  296.  
  297.  
  298.     });
  299.  
  300.     // przesiadki events
  301.     przesiadkaPrev.click(function (event) {
  302.         informacja_pasazerska($(this).attr("nr_poc_1"), $(this).attr("data_odj_1"), $(this).attr("lang"));
  303.         nextStepPrzesiadka = 0;
  304.  
  305.         var przesiadka = new PrzesiadkiZakupowe();
  306.         przesiadka.setIndexPrzesiadki(nextStepPrzesiadka);
  307.         przesiadka.odblokujPolaDlaPrzesiadkiZakupowej();
  308.         przesiadka.aktywujDeaktywujElementy();
  309.  
  310.         $().obslugaUlgi().obslugaWieluZnizek();
  311.  
  312.     });
  313.  
  314.  
  315.     przesiadkaNext.click(function (event) {
  316.  
  317.         var przesiadka = new PrzesiadkiZakupowe();
  318.  
  319.         if (nextStepPrzesiadka == 0) {
  320.             nextStepPrzesiadka++;
  321.             przesiadka.setIndexPrzesiadki(nextStepPrzesiadka);
  322.             przesiadka.aktywujDeaktywujElementy();
  323.  
  324.         }
  325.         przesiadka.zablokujPolaDlaPrzesiadkiZakupowej();
  326.  
  327.     });
  328.  
  329.     arrow_box_ext_info.toggleClick(function () {
  330.  
  331.         $(this).closest(".data_box_section").find(".data_box_rwd").removeClass("data_box_hide").addClass("data_box_show");
  332.         $(this).removeClass('arrow_box_down').addClass('arrow_box_up');
  333.  
  334.     }, function () {
  335.         $(this).closest(".data_box_section").find(".data_box_rwd").removeClass("data_box_show").addClass("data_box_hide");
  336.         $(this).removeClass('arrow_box_up').addClass('arrow_box_down');
  337.  
  338.     });
  339.  
  340.     zakup_biletu_form.submit(function () {
  341.  
  342.         // obsluga ulgi 100% Dla dziecka do lat 4              
  343.         if (nr_biletu_osoby_towarzyszacej.is(':visible')) {
  344.             if (nr_biletu_osoby_towarzyszacej.val().trim().length == 0) {
  345.                 nr_biletu_osoby_towarzyszacej.next().show();
  346.                 return false;
  347.             }
  348.         }
  349.  
  350.         /*********************/
  351.  
  352.  
  353.         return true;
  354.  
  355.     });
  356.  
  357.     rodzaj_wagonu.change(function () {
  358.         var kod_wagonu = $(this).find("option:selected").attr("value");
  359.         rodzajWagonuOpis(kod_wagonu);
  360.         sprawdzRowerRodzajWagonu();
  361.         usunInformacjeWstepnaDlaPrzedzialDzieckoDo6Lat();
  362.  
  363.     });
  364.  
  365.     klasa_wagonu.change(function () {
  366.        
  367.         if (tryb_posel.length == 0) {
  368.             ustawKlasaWagonu();
  369.         }
  370.         //    dzieckoDoLat6();
  371.  
  372.     });
  373.  
  374.     function iloscZaznaczonychZnizekPracownikKolei() {
  375.  
  376.         //PRACOWNIK_KOLEI : 40, EMERYT_RENCISTA_KOLEI : 41, PRACOWNIK_KOLEI_RODZINA : 42, PRACOWNIK_KOLEI_ZAPLECZE_TECHNICZNE : 44
  377.         var pracownik_kolei_znizki = [40, 41, 42, 44];
  378.         var kod_znizki_arr = ["kod_znizki", "kod_znizki_2", "kod_znizki_3"];
  379.         var ilosc_arr = ["liczba_u", "liczba_u_2", "liczba_u_3"];
  380.  
  381.         var laczna_ilosc_osob_pracownik_kolei = 0;
  382.         $.each(kod_znizki_arr, function (idx, elem) {
  383.  
  384.             var zaznaczona_znizka = parseInt($("#" + elem).find("option:selected").val());
  385.  
  386.             if (pracownik_kolei_znizki.indexOf(zaznaczona_znizka) > -1) {
  387.  
  388.                 var liczba_u_elem = ilosc_arr[idx];
  389.                 var liczba_u_ilosc = parseInt($("#" + liczba_u_elem).find("option:selected").val());
  390.                 laczna_ilosc_osob_pracownik_kolei += liczba_u_ilosc;
  391.  
  392.             }
  393.         });
  394.  
  395.         return laczna_ilosc_osob_pracownik_kolei;
  396.  
  397.     }
  398.  
  399.  
  400.     function przesiadkiService(nextStepPrzesiadka) {
  401.  
  402.         var przesiadka = new PrzesiadkiZakupowe();
  403.         przesiadka.setIndexPrzesiadki(nextStepPrzesiadka);
  404.         przesiadka.zablokujPolaDlaPrzesiadkiZakupowej();
  405.         przesiadka.aktywujDeaktywujElementy();
  406.  
  407.         ObslugaKlopotliwychZnizek().pokazKomunikatRozneKatPoc_Eip_TLK();
  408.  
  409.     }
  410.  
  411.     function prepareStrefaCiszyPrzesiadkiModal() {
  412.  
  413.         $("#dalej_modal_inform").hide();
  414.         $("#dalej_modal_strefa_ciszy").show();
  415.         $("#dalej_modal_footer").show();
  416.  
  417.         var modal = $("#dalej_modal_ok");
  418.  
  419.         var v1 = modal.attr("v1");
  420.         modal.val(v1);
  421.         modal.attr("type", "button");
  422.         modal.addClass("js-modal-close");
  423.  
  424.         return modal;
  425.  
  426.     }
  427.  
  428.     function validMiejsceSasiadujaceWskazane(odcinek) {
  429.  
  430.         var MIEJSCE = {
  431.             ZAJETE: "rezerwacja_obok_miejsca_juz_zajetego",
  432.             WSKAZANE: "rezerwacja_miejsca_wskazanego"
  433.         };
  434.  
  435.         var isWrongFormat = function (odcinek) {
  436.  
  437.             var elementy_nr = ["numer_wagonu", "numer_miejsca"];
  438.             var flag = false;
  439.  
  440.             $.each(elementy_nr, function (idx, elem) {
  441.                 var idx = (odcinek > 1) ? "_" + odcinek : "";
  442.                 var input = $("#" + elem + idx);
  443.                 if (input.val().length > 0) {
  444.                     if (!input.val().match(/^\d+$/)) {
  445.                         input.addClass("error_input").closest(".form_wrapper_input").find(".error_info_wskazane_zajete").removeClass("display-hide");
  446.                         flag = true;
  447.                     } else {
  448.                         input.removeClass("error_input").closest(".form_wrapper_input").find(".error_info_wskazane_zajete").addClass("display-hide");
  449.                     }
  450.                 }
  451.             });
  452.  
  453.  
  454.             return flag;
  455.  
  456.         };
  457.  
  458.         var idx = (odcinek > 1) ? "_" + odcinek : "";
  459.  
  460.         if ($("#" + MIEJSCE.ZAJETE).is(":checked") || $("#" + MIEJSCE.WSKAZANE + idx).is(":checked")) {
  461.             return !isWrongFormat(odcinek);
  462.         }
  463.  
  464.         return true;
  465.  
  466.     }
  467.     ;
  468.  
  469.  
  470.         function czyWybranoWspolneUsytuowanieNaJednymLozkuDzieckoOpiekun() {
  471.            
  472.             var BEZ_ZNIZKI = 1;
  473.             var znizkiDzieciMlodziez = [71, 77, 78];
  474.            
  475.             var liczba_lozek = $("#llozek");
  476.             var liczba_n = $("#liczba_n");
  477.            
  478.             var kod_znizki_arr = ["kod_znizki", "kod_znizki_2", "kod_znizki_3"];
  479.             var liczba_u_arr = ["liczba_u", "liczba_u_2", "liczba_u_3"];
  480.             var liczba_doroslych = 0;
  481.             var liczba_dzieci = 0;
  482.             var osobne_lozko_dla_dziecka_wrapper = $("#osobne_lozko_dla_dziecka_wrapper");
  483.             var jestSiedzacy = (parseInt($(".rodzaj_miejsca:checked").val()) === 1);
  484.  
  485.             if(!jestSiedzacy && liczba_lozek.is(":visible")) {
  486.                
  487.                 liczba_doroslych += parseInt(liczba_n.val());
  488.                 var znizkaWrapper = "rodzaj_ulgi_wrap_" + (jestSiedzacy ? 1 : 2);
  489.                
  490.                 $.each(kod_znizki_arr, function(idx, elem) {
  491.                
  492.                     var kod_znizka = idx===0 ? parseInt($("#" + znizkaWrapper).find("#" + elem).val()) : parseInt($("#" + elem).val());
  493.                     var liczba_u = parseInt($("#" + liczba_u_arr[idx]).val());
  494.                    
  495.                     if (znizkiDzieciMlodziez.indexOf(kod_znizka) > -1) {                                              
  496.                         liczba_dzieci += liczba_u;
  497.                     }else if(kod_znizka != BEZ_ZNIZKI) {
  498.                         liczba_doroslych += liczba_u;
  499.                     }
  500.                    
  501.                    
  502.                 });
  503.                 osobne_lozko_dla_dziecka_wrapper.hide();
  504.                $("#osobne_lozko_dla_dziecka").attr('checked', false);
  505.                 var liczba_osob_ogolem = liczba_dzieci + liczba_doroslych;
  506.  
  507.                  if(parseInt(liczba_lozek.val()) == 0) {
  508.                      return false;
  509.                      
  510.                  }else if(liczba_osob_ogolem > parseInt(liczba_lozek.val())) {                    
  511.                     return true;
  512.                 }
  513.                
  514.             }
  515.            
  516.             return false;
  517.         }
  518.        
  519.  
  520.     function czyWybranoDlaPodroznychZDziecmiDoLat6(inputref, dlaPodrzDzieckiDoLat6Arr, katPoc) {
  521.  
  522.         var flag = false;
  523.         var rodzaj_wagonu_odcinek_2 = parseInt($("#rodzaj_wagonu_odcinek_2").find("option:selected").val());
  524.  
  525.         if (dlaPodrzDzieckiDoLat6Arr.indexOf(rodzaj_wagonu_odcinek_2) > -1) {
  526.  
  527.             var ile_osob = 0;
  528.             var ids_liczba_osob_arr = ["liczba_n", "liczba_u_2_1", "liczba_u_2_2"];
  529.  
  530.             $(ids_liczba_osob_arr).each(function (idx, elem) {
  531.                 ile_osob += parseInt($("#" + elem).find("option:selected").val());
  532.             });
  533.  
  534.             if (ile_osob >= 2) {
  535.                 if (katPoc != 81 || ile_osob <= 4) {
  536.  
  537.                     $(".dalej_modal").hide();
  538.                     $("#dalej_modal_inform").hide();
  539.                     $("#dalej_modal_dla_podr_z_dzieckiem_do_lat_6").show();
  540.                     $("#dalej_modal_footer").show();
  541.  
  542.                     var modal = $("#dalej_modal_ok");
  543.                     var v1 = modal.attr("v1");
  544.                     modal.val(v1);
  545.                     modal.attr("type", "button");
  546.                     modal.addClass("js-modal-close").unbind('click').click(function (event) {
  547.                         document.forms['zakup_biletu_form'].submit();
  548.                     });
  549.  
  550.                     flag = true;
  551.  
  552.                     $(inputref).okienkoModalne().open();
  553.  
  554.                 }
  555.             }
  556.  
  557.         }
  558.  
  559.         return flag;
  560.  
  561.     }
  562.  
  563.     function validNrBiletuOsobyTowarzyszacej() {
  564.  
  565.         var nr_biletu_osoby_towarzyszacej = $("#nr_biletu_osoby_towarzyszacej");
  566.         var nr_osoba_towarz_error = $(".nr_osoba_towarz_error");
  567.         var regex = /^[0-9]+$/;
  568.         var isPoprawny = true;
  569.  
  570.         if (nr_biletu_osoby_towarzyszacej.is(':visible')) {
  571.             if (nr_biletu_osoby_towarzyszacej.val().trim().length === 0 || !regex.test(nr_biletu_osoby_towarzyszacej.val().trim())) {
  572.                 nr_osoba_towarz_error.find("span").show();
  573.                 isPoprawny = false;
  574.             } else {
  575.                 nr_osoba_towarz_error.find("span").hide();
  576.                 isPoprawny = true;
  577.             }
  578.         }
  579.  
  580.         return isPoprawny;
  581.     }
  582.  
  583.  
  584.     function czyZnalezionoZnizkiKolejarza() {
  585.  
  586.         var znizkaKolejarzPracownikIEmeryt = [40, 41];
  587.         var znizkaKolejarzRodzina = [42, 44];
  588.  
  589.         //Badanie czy wybrano zniżki kolejarsie oraz inne
  590.         var znizki_arr = ["kod_znizki", "kod_znizki_2", "kod_znizki_3", "kod_znizki_2_1", "kod_znizki_2_2", "kod_znizki_2_3"];
  591.         var znalezionoZnizkaKolejarzRodzina = false;
  592.         var znalezionoZnizkaKolejarzPracownikIEmeryt = false;
  593.  
  594.         $.each(znizki_arr, function (key, elem) {
  595.             var zaznaczona_znizka = parseInt($("#" + elem).find(":selected").val());
  596.  
  597.             if (znizkaKolejarzRodzina.indexOf(zaznaczona_znizka) > -1) {
  598.                 znalezionoZnizkaKolejarzRodzina = true;
  599.             }
  600.             if (znizkaKolejarzPracownikIEmeryt.indexOf(zaznaczona_znizka) > -1) {
  601.                 znalezionoZnizkaKolejarzPracownikIEmeryt = true;
  602.             }
  603.  
  604.         });
  605.  
  606.         return (znalezionoZnizkaKolejarzRodzina && znalezionoZnizkaKolejarzPracownikIEmeryt);
  607.  
  608.     }
  609.  
  610.  
  611.  
  612.     function PrzesiadkiZakupowe() {
  613.  
  614.         var elementyOnChange = "#zakup_biletu_form input[type='checkbox'], #zakup_biletu_form input[type='radio'], #zakup_biletu_form select";
  615.         var elementy = {
  616.             id: ["tr_rodzaj_miejsca", "tr_promocja", "tr_liczba_osob_n", "tr_kod_znizki", "tr_kod_znizki_2", "tr_kod_znizki_3",
  617.                 "tr_nr_taryfy_II", "tr_nr_taryfy_I", "tr_przedzial", "tr_plec", "tr_klasa",
  618.                 "tr_kolorowa_karta_ic", "tr_pokaz_kolorowa_karte", "tr_bilety_dodatkowe"],
  619.             klasa: ["bilet_karta_rodziny_main_wrapper"]
  620.         };
  621.  
  622.  
  623.         this.indexPrzesiadki = 0;
  624.  
  625.         var odcinek = {PIERWSZY: 0, DRUGI: 1};
  626.  
  627.         this.zablokujPolaDlaPrzesiadkiZakupowej = function () {
  628.  
  629.             var elementsToShow = [
  630.                 ".submit_powrot_zakup_biletu",
  631.                 ".dalej_button",
  632.                 ".przesiadka_info_parametry",
  633.                 "#rodzaj_wagonu_odcinek_2",
  634.                 "#usytuowanie_przesiadka_1"
  635.  
  636.             ];
  637.  
  638.             // blokujemy KDR, BR
  639.             $(".opcja_biletu_rodzinny").each(function () {
  640.  
  641.                 var self = $(this);
  642.  
  643.                 if (self.is(":checked")) {
  644.                     _addInputKDFiBR(self, 1);
  645.                 } else {
  646.                     _addInputKDFiBR(self, 0);
  647.                 }
  648.  
  649.             });
  650.  
  651.             $("#pokaz_kolorowa_karte").attr('disabled', true);
  652.  
  653.             // blokujemy usługi (siedzace, sypialne kuszetka)
  654.             $(".rodzaj_miejsca").each(function (idx) {
  655.  
  656.                 var self = $(this);
  657.                 if (!self.is(":checked")) {
  658.                     self.attr('disabled', true);
  659.                 }
  660.             });
  661.  
  662.  
  663.             // usuwamy X z biletów dodatkowych
  664.             $(".remove_additional_ticket").each(function (idx) {
  665.                 var self = $(this);
  666.                 self.hide();
  667.             });
  668.  
  669.             _ustawMiejsceZajeteWskazaneMIejsce(false);
  670.             _pokazUkryjElementyDlaPrzesiadek(elementy, false);
  671.  
  672.             $.each(elementsToShow, function (key, elem) {
  673.                 $(elem).show();
  674.             });
  675.  
  676.             $("#rodzaj_wagonu, #usytuowanie").hide();
  677.  
  678.             this.obslugaZnizkeDlaPrzesiadki();
  679.             $("#tr_pokaz_karte_duzej_rodziny").hide();
  680.             $("#tr_pokaz_bilet_rodzinny").hide();
  681.  
  682.  
  683.  
  684.         };
  685.  
  686.         this.odblokujPolaDlaPrzesiadkiZakupowej = function () {
  687.  
  688.             var elementsToHide = [
  689.                 ".submit_powrot_zakup_biletu",
  690.                 ".przesiadka_info_parametry",
  691.                 "#rodzaj_wagonu_odcinek_2",
  692.                 "#usytuowanie_przesiadka_1",
  693.                 "#tr_liczba_osob_n_2",
  694.                 "#liczba_u_2_1",
  695.                 "#liczba_u_2_2",
  696.                 "#liczba_u_2_3"
  697.             ];
  698.  
  699.             var elementsToShow = ["#liczba_u", "#liczba_u_2", "#liczba_u_3"];
  700.  
  701.             // usuwamy blokade  dla wszystkich elementow                  
  702.             /*
  703.              $(".opcja_biletu_rodzinny").each(function() {
  704.              var self = $(this);                    
  705.              
  706.              });
  707.              */
  708.             // uswamy fake dla KDR i BR                    
  709.             _removeInputKDRiBR();
  710.  
  711.             $("#pokaz_kolorowa_karte").attr('disabled', false);
  712.  
  713.             // odblokujemy usługi (siedzace, sypialne kuszetka)
  714.             $(".rodzaj_miejsca").each(function (idx) {
  715.  
  716.                 var self = $(this);
  717.                 self.attr('disabled', false);
  718.  
  719.             });
  720.  
  721.             // usuwamy X z biletów dodatkowych
  722.             $(".remove_additional_ticket").each(function (idx) {
  723.                 var self = $(this);
  724.                 self.show();
  725.             });
  726.  
  727.  
  728.             _ustawMiejsceZajeteWskazaneMIejsce(true);
  729.             _pokazUkryjElementyDlaPrzesiadek(elementy, true);
  730.  
  731.  
  732.             $.each(elementsToHide, function (key, elem) {
  733.                 $(elem).hide();
  734.             });
  735.  
  736.             $.each(elementsToShow, function (key, elem) {
  737.                 $(elem).removeClass("przesiadka_hide_elem");
  738.             });
  739.  
  740.             $("#rodzaj_wagonu, #usytuowanie").show();
  741.  
  742.             this.obslugaZnizkeDlaPrzesiadki();
  743.  
  744.         };
  745.  
  746.         this.aktywujDeaktywujElementy = function () {
  747.  
  748.             var indexPrzesiadki = this.getindexPrzesiadki();
  749.  
  750.             $(".przesiadka_linia_wrapper").each(function (index) {
  751.  
  752.                 var self = $(this);
  753.  
  754.                 if (index == indexPrzesiadki) {
  755.                     self.removeClass("przesiadka_linia_deactive").addClass("przesiadka_linia_active");
  756.                 } else {
  757.                     self.removeClass("przesiadka_linia_active").addClass("przesiadka_linia_deactive");
  758.                 }
  759.             });
  760.  
  761.             $(".przesiadka_konfiguracja_wypis").each(function (index) {
  762.  
  763.                 var self = $(this);
  764.  
  765.                 if (index == indexPrzesiadki) {
  766.                     self.show();
  767.                 } else {
  768.                     self.hide();
  769.                 }
  770.             });
  771.  
  772.             if (indexPrzesiadki == 0) {
  773.                 $(".przesiadka_prev_bg").addClass("przesiadka_aktywny_odcinek");
  774.                 $(".przesiadka_next_bg").removeClass("przesiadka_aktywny_odcinek");
  775.  
  776.             } else {
  777.  
  778.                 $("#rodzaj_wagonu_msg").hide();
  779.                 $(".przesiadka_prev_bg").removeClass("przesiadka_aktywny_odcinek");
  780.                 $(".przesiadka_next_bg").addClass("przesiadka_aktywny_odcinek");
  781.             }
  782.  
  783.             // ustawiamy index odcinka w elemencie html na potrzeby innych modulow
  784.             $("#indexPrzesiadki").val(indexPrzesiadki);
  785.  
  786.             var klasa_poc1 = $("#klasa_wagonu").find("option:selected").val();
  787.             var klasa_poc2 = $("#klasa_wagonu").find("option:selected").val();
  788.  
  789.             if (klasa_poc1 !== klasa_poc2) {
  790.                 $("#klasa_wagonu").val(klasa_poc1);
  791.             }
  792.  
  793.             $(".przesiadka_info_znizka_rozne_kategorie").hide();
  794.  
  795.             this.obslugaBiletRodzinny_DuzaRodzina();
  796.  
  797.         };
  798.  
  799.         this.obslugaZnizkeDlaPrzesiadki = function () {
  800.  
  801.             var indexOdcinek = this.getindexPrzesiadki();
  802.  
  803.             var znizkiPierwszyOdcinek = ["#kod_znizki", "#kod_znizki_2", "#kod_znizki_3"];
  804.             var znizkiDrugiOdcinek = {
  805.                 combo: ["#kod_znizki_2_1", "#kod_znizki_2_2", "#kod_znizki_2_3"],
  806.                 wrapper: ["#tr_kod_znizki", "#tr_kod_znizki_2", "#tr_kod_znizki_3"]
  807.             };
  808.  
  809.  
  810.  
  811.             if (indexOdcinek > 0) {
  812.                 this.pobierzZnizkiDlaPrzesiadki();
  813.  
  814.             } else { // obsluga pierwszego odcinka                      
  815.  
  816.                 var liczba_n = $("#liczba_n");
  817.                 var liczba_u = $("#liczba_u");
  818.                 var kod_znizki = $("#kod_znizki");
  819.  
  820.                 $(znizkiDrugiOdcinek.wrapper).each(function (key, elem) {
  821.  
  822.                     var znizka_wrapper = $(elem);
  823.                     znizka_wrapper.removeClass("przesiadka_hide_elem");
  824.                     znizka_wrapper.find(".znizki_wrapper_ulga_ilosc").removeClass("przesiadka_hide_elem");
  825.                     znizka_wrapper.find("#liczba_u").removeClass("przesiadka_hide_elem");
  826.                     znizka_wrapper.find(".znizki_wrapper_ulga_nazwa").find("div").each(function (key, elem) {
  827.  
  828.                         if ($(elem).attr("class") == "znizki_przesiadki_wrapper") {
  829.                             $(elem).val(1);
  830.                             $(elem).hide();
  831.                         } else {
  832.                             $(elem).removeClass("przesiadka_hide_elem");
  833.                         }
  834.                     });
  835.  
  836.                 });
  837.  
  838.                 var isWybranoZnizke = false;
  839.                 $.each(znizkiPierwszyOdcinek, function (key, elem) {
  840.                     if (parseInt($(elem).val()) > 1) {
  841.                         isWybranoZnizke = true;
  842.                     }
  843.                 });
  844.  
  845.                 if (isWybranoZnizke) {
  846.                     $("#tr_miejsce_wskazane").hide();
  847.                 } else {
  848.                     $("#tr_miejsce_wskazane").show();
  849.                 }
  850.  
  851.                 $(".znizki_przesiadki_wrapper").hide();
  852.                 $("#kod_znizki_opis").removeClass("przesiadka_hide_elem");
  853.                 $(".przesiadka_info_brak_znizki").hide();
  854.                 //$(".przesiadka_info_znizka_rozne_kategorie").hide();
  855.  
  856.                 var znizki_pracownika_kolei_arr = [77, 79, 84];
  857.  
  858.                 var wybrana_znizka = parseInt(kod_znizki.val());
  859.                 if (liczba_n.val() == 0 && liczba_u.val() == 1 && znizki_pracownika_kolei_arr.indexOf(wybrana_znizka) < 0) {
  860.                     $("#tr_miejsce_wskazane").show();
  861.                 }
  862.             }
  863.  
  864.  
  865.         };
  866.  
  867.  
  868.  
  869.         this.pobierzZnizkiDlaPrzesiadki = function () {
  870.  
  871.  
  872.             $.ajax({
  873.                 method: "GET",
  874.                 url: "/zakup-biletu-utils",
  875.                 cache: false,
  876.                 data: {
  877.                     action: "pobierzZnizkiPrzesiadki",
  878.                     karta_duzej_rodziny: $("#karta_duzej_rodziny").is(":checked"),
  879.                     bilet_rodzinny: $("#bilet_rodzinny").is(":checked"),
  880.                     klasa_wagonu: $("#klasa_wagonu").val()
  881.  
  882.                 },
  883.                 beforeSend: function (xhr) {
  884.                     $(".zakup_biletu_form_main_wrapper").append(addMaskHtml());
  885.                 },
  886.                 success: function (data) {
  887.  
  888.                     var result = JSON.parse(data);
  889.                     wypelnijCombaDlaPrzesiadki(result);
  890.                     obslugaZnizekDlaOdcinkow();
  891.                     ObslugaKlopotliwychZnizek().run();
  892.                     obslugaElementowDlaPrzesiadki();
  893.                     //        dzieckoDoLat6();
  894.  
  895.                 },
  896.                 complete: function (r) {
  897.                     removeMaskHtml();
  898.                 },
  899.                 error: function (xhr, status, thrownError) {
  900.                 }
  901.  
  902.             });
  903.  
  904.  
  905.  
  906.  
  907.             function wypelnijCombaDlaPrzesiadki(options) {
  908.  
  909.                 var comboZnizki = ["#kod_znizki", "#kod_znizki_2", "#kod_znizki_3"];
  910.                 var znizkiComboPrzesiadka = ["#kod_znizki_2_1", "#kod_znizki_2_2", "#kod_znizki_2_3"];
  911.  
  912.  
  913.                 $.each(comboZnizki, function (key, elem) {
  914.  
  915.                     var selectedOption = $(elem).find("option:selected");
  916.  
  917.                     if (selectedOption.val() > 0) {
  918.  
  919.                         var combo = $(znizkiComboPrzesiadka[key]);
  920.                         combo.html('');
  921.                         var znizkiCombos = options["znizki_" + key];
  922.  
  923.                         for (var i = 0; i < znizkiCombos.length; i++) {
  924.                             combo.append(znizkiCombos[i].option);
  925.                         }
  926.                     }
  927.                 });
  928.             }
  929.             ;
  930.  
  931.             function obslugaElementowDlaPrzesiadki() {
  932.  
  933.                 var PIERWSZY_ODCINEK = 1;
  934.                 var dalej_button = $(".dalej_button");
  935.  
  936.                 //if(dalej_button.attr("przesiadka") == "true") { // sprawdzamy czy mamy doczynienia z przesiadka
  937.  
  938.                 var indexOdcinek = parseInt($("#indexPrzesiadki").val());
  939.                 if (indexOdcinek == PIERWSZY_ODCINEK) {
  940.  
  941.                     var przesiadkiPola = ["kod_znizki_2_1", "kod_znizki_2_2", "kod_znizki_2_3"];
  942.                     var isWybranoZnizke = false;
  943.                     $.each(przesiadkiPola, function (key, elem) {
  944.                         if (parseInt($("#" + elem).val()) > 1) {
  945.                             isWybranoZnizke = true;
  946.                         }
  947.                     });
  948.  
  949.                     if (isWybranoZnizke) {
  950.                         //$("#tr_miejsce_wskazane").hide();
  951.                         $("#tr_rezerwacja_obok_miejsca_juz_zajetego_wagon_2").hide();
  952.                         $("#tr_rezerwacja_obok_miejsca_juz_zajetego_miejsce_2").hide();
  953.                         $("#rezerwacja_miejsca_wskazanego_2").prop("checked", false);
  954.                         $("#numer_wagonu_2").val('');
  955.                         $("#numer_miejsca_2").val('');
  956.                     } else {
  957.                         $("#tr_miejsce_wskazane").show();
  958.                     }
  959.  
  960.                 }
  961.                 //}
  962.  
  963.             }
  964.  
  965.             function obslugaZnizekDlaOdcinkow() {
  966.  
  967.                 var znizkiPierwszyOdcinek = ["#kod_znizki", "#kod_znizki_2", "#kod_znizki_3"];
  968.                 var znizkiDrugiOdcinek = {
  969.                     combo: ["#kod_znizki_2_1", "#kod_znizki_2_2", "#kod_znizki_2_3"],
  970.                     wrapper: ["#tr_kod_znizki", "#tr_kod_znizki_2", "#tr_kod_znizki_3"]
  971.                 };
  972.  
  973.                 var liczbaUlgArr = [
  974.                     ["liczba_u", "liczba_u_2_1"],
  975.                     ["liczba_u_2", "liczba_u_2_2"],
  976.                     ["liczba_u_3", "liczba_u_2_3"]
  977.                 ];
  978.  
  979.                 var iloscZaznaczonychZnizek = 0;
  980.                 var zaznaczoneZnizkiPierwszyOdcinek = [];
  981.                 var wybraneZnizkiDrugiOdcinek = [];
  982.                 var clearZnizkaDrugiOdcinek = [false, false, false];
  983.                 var brakujacaZnizkaDrugiOdcinek = {};
  984.  
  985.                 $.each(znizkiPierwszyOdcinek, function (key, elem) {
  986.  
  987.                     // pobieramy zaznaczona znizke dla pierwszego odcinka                      
  988.                     var zaznaczonaZnizkaOdcinekPierwszy = $(elem).find("option:selected");
  989.                     var znizkaKodPierwszyOdcinek = zaznaczonaZnizkaOdcinekPierwszy.val();
  990.                     var znizkaNazwaPierwszyOdcinek = zaznaczonaZnizkaOdcinekPierwszy.text();
  991.  
  992.                     zaznaczoneZnizkiPierwszyOdcinek.push({id: znizkaKodPierwszyOdcinek, nazwa: znizkaNazwaPierwszyOdcinek});
  993.  
  994.                     if (znizkaKodPierwszyOdcinek > 1) {
  995.                         iloscZaznaczonychZnizek++;
  996.                     }
  997.  
  998.                     var znizkiOpcjeDrugiOdcinek = znizkiDrugiOdcinek.combo[key];
  999.  
  1000.                     $(znizkiOpcjeDrugiOdcinek).find("option").each(function (key1, elem1) {
  1001.  
  1002.                         var znizkaDrugiOdcinek = $(elem1);
  1003.                         if (znizkaKodPierwszyOdcinek > 1) {                            
  1004.                            
  1005.                             if (/*(znizkaKodPierwszyOdcinek == znizkaDrugiOdcinek.val()) && */
  1006.                                     (znizkaNazwaPierwszyOdcinek.trim() == znizkaDrugiOdcinek.text().trim())) {
  1007.                                
  1008.                                
  1009.                                 clearZnizkaDrugiOdcinek[key] = true;
  1010.                                 wybraneZnizkiDrugiOdcinek.push({id: znizkaDrugiOdcinek.val(), nazwa: znizkaDrugiOdcinek.text()});
  1011.                             }
  1012.                         }
  1013.                     }); // end each                          
  1014.                 });   // end each    
  1015.  
  1016.  
  1017.                 var i = 0;
  1018.                 for (i; i < iloscZaznaczonychZnizek; i++) {
  1019.  
  1020.                     // sprawdzamy czy znizka nie wystepuje dla drugiego odcinka
  1021.  
  1022.                     if (clearZnizkaDrugiOdcinek[i] == false) {
  1023.                         brakujacaZnizkaDrugiOdcinek = zaznaczoneZnizkiPierwszyOdcinek[i];
  1024.                     }
  1025.  
  1026.                     // pokazujemy znizki dla drugiego odcinka
  1027.                     var znizkaWrapper = $(znizkiDrugiOdcinek.wrapper[i]);
  1028.                     //znizkaWrapper.removeClass("przesiadka_hide_elem");
  1029.                     znizkaWrapper.find(".znizki_wrapper_ulga_ilosc").addClass("przesiadka_hide_elem");
  1030.                     znizkaWrapper.find("#liczba_u" + (i > 0 ? "_" + (i + 1) : "")).addClass("przesiadka_hide_elem");
  1031.                     znizkaWrapper.find(".znizki_wrapper_ulga_nazwa").find("div").each(function (key, elem) {
  1032.  
  1033.                         if ($(elem).attr("class") != "znizki_przesiadki_wrapper") {
  1034.                             $(elem).addClass("przesiadka_hide_elem");
  1035.                         } else {
  1036.                             $(elem).show();
  1037.                         }
  1038.                     });
  1039.  
  1040.                     if (wybraneZnizkiDrugiOdcinek[i] != undefined) {
  1041.                         $(znizkiDrugiOdcinek.combo[i]).val(wybraneZnizkiDrugiOdcinek[i].id);
  1042.                     }
  1043.  
  1044.                 }
  1045.  
  1046.                 if (brakujacaZnizkaDrugiOdcinek.id != undefined) {
  1047.                    
  1048.                    var poc_kategoria_odc_1 = parseInt($("#train_category_1").val());
  1049.                    var poc_kategoria_odc_2 = parseInt($("#train_category_2").val());
  1050.                    var okz = ObslugaKlopotliwychZnizek();                  
  1051.                    
  1052.                    
  1053.                    if(okz.isPociagKat_EIP_EIC_AND_TLK_IC(poc_kategoria_odc_1, poc_kategoria_odc_2)
  1054.                            || okz.isPociagKat_TLK_IC_AND_EIP_EIC(poc_kategoria_odc_1, poc_kategoria_odc_2)) {
  1055.                      
  1056.                         var przesiadka_info_brak_znizki = $(".przesiadka_info_brak_znizki");
  1057.                         przesiadka_info_brak_znizki.show();
  1058.                         przesiadka_info_brak_znizki.find("span").empty().append("\"" + brakujacaZnizkaDrugiOdcinek.nazwa + "\"");
  1059.                    }  
  1060.                    
  1061.                     $("#kod_znizki_opis").addClass("przesiadka_hide_elem");
  1062.                     $("#tr_liczba_osob_n_2").show();
  1063.  
  1064.                     for (var i = 0; i < iloscZaznaczonychZnizek; i++) {
  1065.  
  1066.                         var znizkaWrapper = $(znizkiDrugiOdcinek.wrapper[i]);
  1067.                         znizkaWrapper.removeClass("przesiadka_hide_elem");
  1068.                         znizkaWrapper.find(".znizki_wrapper_ulga_ilosc").removeClass("przesiadka_hide_elem");
  1069.                         znizkaWrapper.find("#liczba_u_2_" + (i + 1)).show();
  1070.                     }                      
  1071.                    
  1072.  
  1073.                 } else {
  1074.                    
  1075.                     $("#liczba_n_2").val($("#liczba_n").val());
  1076.  
  1077.                     // ustwiamy liczbe osob ulgowych dla drugiego odcinka
  1078.                     $(liczbaUlgArr).each(function (key, elem) {
  1079.                         $("#" + elem[1]).val($("#" + elem[0]).val());
  1080.                     });
  1081.  
  1082.                     $(wybraneZnizkiDrugiOdcinek).each(function (key, elem) {
  1083.  
  1084.                         var znizkaDrugiOdcinekElement = $(elem);
  1085.                         var znizkiDrugiOdcinekCombo = znizkiDrugiOdcinek.combo[key];
  1086.  
  1087.                         $(znizkiDrugiOdcinekCombo).find("option").each(function (key1, elem1) {                          
  1088.                          
  1089.                             if (znizkaDrugiOdcinekElement[0].nazwa.trim() != $(elem1).text().trim()) {
  1090.                                 $(elem1).prop("disabled", "disabled");
  1091.                             } else {
  1092.                                 $(elem1).prop("selected", "selected");
  1093.                             }
  1094.                         });                        
  1095.  
  1096.                     });
  1097.  
  1098.                 }
  1099.  
  1100.             }
  1101.             ;
  1102.  
  1103.             function addMaskHtml() {
  1104.                 var html = "<div class=\"loadmask\"></div>";
  1105.                 return html;
  1106.             }
  1107.             ;
  1108.             function removeMaskHtml() {
  1109.                 $(".loadmask").remove();
  1110.             }
  1111.  
  1112.  
  1113.  
  1114.         };
  1115.  
  1116.         this.obslugaBiletRodzinny_DuzaRodzina = function () {
  1117.  
  1118.             var indexOdcinek = parseInt(this.getindexPrzesiadki());
  1119.  
  1120.             var KDR_BR_elementy = [
  1121.                 ["karta_duzej_rodziny", "tr_pokaz_karte_duzej_rodziny"],
  1122.                 ["bilet_rodzinny", "tr_pokaz_bilet_rodzinny"]
  1123.             ];
  1124.  
  1125.             for (var i = 0; i < KDR_BR_elementy.length; i++) {
  1126.  
  1127.                 if ($("#" + KDR_BR_elementy[i][0]).is(":checked")) {
  1128.  
  1129.                     var label_element = $("#" + KDR_BR_elementy[i][1]).find(".form_wrapper_input");
  1130.  
  1131.                     if (indexOdcinek == odcinek.PIERWSZY) {
  1132.                         label_element.removeClass("przesiadka_hide_elem");
  1133.                     } else if (indexOdcinek == odcinek.DRUGI) {
  1134.                         label_element.addClass("przesiadka_hide_elem");
  1135.                     }
  1136.  
  1137.                 }
  1138.  
  1139.             }
  1140.  
  1141.         };
  1142.  
  1143.  
  1144.         this.setIndexPrzesiadki = function (currentIndex) {
  1145.             this.indexPrzesiadki = currentIndex;
  1146.         };
  1147.  
  1148.         this.getindexPrzesiadki = function () {
  1149.             return this.indexPrzesiadki;
  1150.         };
  1151.  
  1152.         // private methods
  1153.         function _addInputKDFiBR(elem, value) {
  1154.             $("#zakup_biletu_form").append("<input class=\"opcja_biletu_rodzinny_mock display-hide\" type=\"checkbox\" name=\"" + elem.attr("name") + "\" value=\"" + value + "\" />");
  1155.         }
  1156.         ;
  1157.  
  1158.         function _removeInputKDRiBR() {
  1159.             $("#zakup_biletu_form").find(".opcja_biletu_rodzinny_mock").remove();
  1160.         }
  1161.         ;
  1162.  
  1163.         function _ustawMiejsceZajeteWskazaneMIejsce(ustawicPierwszyOdcinek) {
  1164.  
  1165.  
  1166.             var elementyAktywneIds = [
  1167.                 "rezerwacja_obok_miejsca_juz_zajetego",
  1168.                 "rezerwacja_miejsca_wskazanego",
  1169.                 "tr_rezerwacja_obok_miejsca_juz_zajetego_wagon",
  1170.                 "tr_rezerwacja_obok_miejsca_juz_zajetego_miejsce"
  1171.             ];
  1172.             var suffix_2 = "_2";
  1173.  
  1174.             var MIEJSCA = {
  1175.                 MIEJSCE_ZAJETE: "rezerwacja_obok_miejsca_juz_zajetego",
  1176.                 MIEJSCE_WSKAZANE: "rezerwacja_miejsca_wskazanego",
  1177.                 SEKCJA_WAGON: "tr_rezerwacja_obok_miejsca_juz_zajetego_wagon",
  1178.                 SEKCJA_MIEJSCE: "tr_rezerwacja_obok_miejsca_juz_zajetego_miejsce"
  1179.             };
  1180.  
  1181.             $.each(elementyAktywneIds, function (key, elem) {
  1182.  
  1183.                 var odcinek_1 = $("#" + elem);
  1184.                 var odcinek_2 = $("#" + elem + suffix_2);
  1185.  
  1186.                 if (ustawicPierwszyOdcinek) {
  1187.                     odcinek_1.show();
  1188.                     odcinek_2.hide();
  1189.                 } else {
  1190.                     odcinek_1.hide();
  1191.                     odcinek_2.show();
  1192.                 }
  1193.             });
  1194.  
  1195.             if (!ustawicPierwszyOdcinek) {
  1196.                 $("#" + MIEJSCA.SEKCJA_WAGON).addClass("display-hide-important");
  1197.                 $("#" + MIEJSCA.SEKCJA_MIEJSCE).addClass("display-hide-important");
  1198.             } else {
  1199.                 $("#" + MIEJSCA.SEKCJA_WAGON).removeClass("display-hide-important");
  1200.                 $("#" + MIEJSCA.SEKCJA_MIEJSCE).removeClass("display-hide-important");
  1201.             }
  1202.  
  1203.             var id_przesiadka = (!ustawicPierwszyOdcinek) ? suffix_2 : "";
  1204.  
  1205.             var miejsce_zajete = $("#" + MIEJSCA.MIEJSCE_ZAJETE + id_przesiadka);
  1206.             var miejsce_wskazane = $("#" + MIEJSCA.MIEJSCE_WSKAZANE + id_przesiadka);
  1207.             var sekcja_wagon = $("#" + MIEJSCA.SEKCJA_WAGON + id_przesiadka);
  1208.             var sekcja_miejsce = $("#" + MIEJSCA.SEKCJA_MIEJSCE + id_przesiadka);
  1209.  
  1210.             if (miejsce_zajete.is(":checked") || miejsce_wskazane.is(":checked")) {
  1211.  
  1212.                 sekcja_wagon.show();
  1213.                 sekcja_miejsce.show();
  1214.             } else {
  1215.                 sekcja_wagon.hide();
  1216.                 sekcja_miejsce.hide();
  1217.  
  1218.             }
  1219.  
  1220.         }
  1221.  
  1222.  
  1223.         function _pokazUkryjElementyDlaPrzesiadek(elementy, czyPokazac) {
  1224.  
  1225.             $.each(elementy, function (idx, element) {
  1226.                 $.each(element, function (idxSub, elemSub) {
  1227.                     var elem = (idx == "id") ? $("#" + elemSub) : $("." + elemSub);
  1228.                     if (czyPokazac) {
  1229.                         elem.removeClass("przesiadka_hide_elem");
  1230.                     } else {
  1231.                         elem.addClass("przesiadka_hide_elem");
  1232.                     }
  1233.                 });
  1234.             });
  1235.         }
  1236.  
  1237.  
  1238.     }
  1239.     ;
  1240.  
  1241.     function eventBlurMiejsceZajeteWskazane() {
  1242.  
  1243.         var elementy = ["numer_wagonu", "numer_miejsca", "numer_wagonu_2", "numer_miejsca_2"];
  1244.  
  1245.         $.each(elementy, function (idx, elem) {
  1246.  
  1247.             $("#" + elem).blur(function () {
  1248.  
  1249.                 var self = $(this);
  1250.                 var error = false;
  1251.  
  1252.                 if (self.val().length > 0) {
  1253.                     if (!self.val().match(/^\d+$/)) {
  1254.                         self.addClass("error_input").closest(".form_wrapper_input").find(".error_info_wskazane_zajete").removeClass("display-hide");
  1255.                     } else {
  1256.                         self.removeClass("error_input").closest(".form_wrapper_input").find(".error_info_wskazane_zajete").addClass("display-hide");
  1257.                     }
  1258.                 }
  1259.  
  1260.                 /*
  1261.                  $(".error_info_wskazane_zajete").each(function(idx, elem) {
  1262.                  if($(elem).is(":visible")) {
  1263.                  error = true;
  1264.                  }
  1265.                  });                    
  1266.                  
  1267.                  if(error) {                        
  1268.                  $(".dalej_button").addClass("disabled_button");  
  1269.                  }else {                        
  1270.                  $(".dalej_button").removeClass("disabled_button");                        
  1271.                  }
  1272.                  */
  1273.  
  1274.             });
  1275.         });
  1276.     }
  1277.  
  1278.     function BilDodatkoweService() {
  1279.        
  1280.         var piesTyp = {PIES:17, PIES_ASYSTENT:18, PIES_PRZEWODNIK:19};
  1281.  
  1282.         function czyZaznaczonoKuszetkeSypialne() {
  1283.             return (parseInt($(".rodzaj_miejsca:checked").val()) > 1);
  1284.         }
  1285.  
  1286.         function czyNieWybranoCalegoPrzedzialuDlaPsa() {
  1287.  
  1288.             var flag = false;
  1289.  
  1290.             if (czyZaznaczonoKuszetkeSypialne() && czyWybranoPsa()) {
  1291.  
  1292.                 var przedzial_ilosc = parseInt($("#przedzial").val());
  1293.                 var lLozek = $("#llozek");
  1294.  
  1295.                 var zbiorczaLiczbaOsob = getZbiorczaIloscOsob();
  1296.  
  1297.                 if (zbiorczaLiczbaOsob < przedzial_ilosc) {
  1298.                     flag = true;
  1299.  
  1300.                 } else if (lLozek.is(":visible") && (parseInt(lLozek.val()) < zbiorczaLiczbaOsob)) {
  1301.                     flag = true;
  1302.                 }
  1303.  
  1304.             }
  1305.  
  1306.             return flag;
  1307.         }
  1308.  
  1309.         function getZbiorczaIloscOsob() {
  1310.  
  1311.             var liczba_n = $("#liczba_n");
  1312.             var liczba_osob = 0;
  1313.  
  1314.             var liczba_u_arr = ["liczba_u", "liczba_u_2", "liczba_u_3"];
  1315.             var kod_znizki_arr = ["kod_znizki", "kod_znizki_2", "kod_znizki_3"];
  1316.  
  1317.             liczba_osob = parseInt(liczba_n.val());
  1318.  
  1319.             $.each(liczba_u_arr, function (idx, liczba_) {
  1320.                 liczba_osob += parseInt($("#" + liczba_).val());
  1321.             });
  1322.  
  1323.             return liczba_osob;
  1324.  
  1325.         }
  1326.  
  1327.         function czyWybranoPsa() {
  1328.  
  1329.             var czyWybranoPsa = false;
  1330.             var biletyDodatkowePsyRodzaje = [piesTyp.PIES, piesTyp.PIES_ASYSTENT, piesTyp.PIES_PRZEWODNIK];
  1331.  
  1332.             $(".bilet_dodatkowy").each(function (idx, elem) {
  1333.                 if (biletyDodatkowePsyRodzaje.indexOf(parseInt($(elem).val(), 10)) > -1) {
  1334.                     czyWybranoPsa = true;
  1335.                 }
  1336.             });
  1337.  
  1338.             return czyWybranoPsa;
  1339.         }
  1340.  
  1341.         return  {
  1342.             czyNieWybranoCalegoPrzedzialuDlaPsa: czyNieWybranoCalegoPrzedzialuDlaPsa
  1343.         }
  1344.  
  1345.     } // end BilDodatkoweService
  1346.  
  1347.  
  1348.     function OknoModalneService() {
  1349.  
  1350.         this.dalejModalAtention = function () {
  1351.             $("#dalej_modal_footer").show();
  1352.             $('#dalej_modal_pracownik_kolei').hide();
  1353.             $('#dalej_modal_kolejarz_przesiadka').show();
  1354.             $("#dalej_modal_inform").show();
  1355.             $("#dalej_modal_false").hide();
  1356.             $("#dalej_modal_ok").hide();
  1357.             $("#dalej_modal_header_informacja").hide();
  1358.             $("#dalej_modal_header_uwaga").show();
  1359.         }
  1360.  
  1361.         this.dalejModalBiletPiesCalyPrzedzial = function () {
  1362.  
  1363.             $("#dalej_modal_footer").show();
  1364.             $("#dalej_modal_pies_caly_przedzial").show();
  1365.             $("#dalej_modal_ok").val($("#dalej_modal_ok").attr("v4"));
  1366.             $("#dalej_modal_inform").hide();
  1367.             $("#dalej_modal_false").hide();
  1368.             $("#dalej_modal_ok").attr("type", "button");
  1369.             $("#dalej_modal_ok").addClass("js-modal-close");
  1370.             $("#dalej_modal_header_informacja").show();
  1371.             $("#dalej_modal_header_uwaga").hide();
  1372.  
  1373.         }
  1374.  
  1375.         this.dalejModalJednoLozkoDzieckoOpiekun = function () {
  1376.             ZakupBiletuUtil().showOkienkoModalne(this, "dalej_modal_wspolne_usytuowanie_lozko_dziecko_opiekun");
  1377.         }
  1378.  
  1379.  
  1380.         this.dalejModalFalse = function () {
  1381.  
  1382.             $("#dalej_modal_footer").show();
  1383.             $("#dalej_modal_inform").hide();
  1384.             $("#dalej_modal_false").show();
  1385.             $("#dalej_modal_ok").attr("type", "submit");
  1386.             $("#dalej_modal_ok").removeClass("js-modal-close");
  1387.             $("#dalej_modal_header_informacja").show();
  1388.             $("#dalej_modal_header_uwaga").hide();
  1389.         }
  1390.  
  1391.         this.dalejModalDefault = function () {
  1392.  
  1393.             $("#dalej_modal_inform").hide();
  1394.             $("#dalej_modal_false").hide();
  1395.             $("#dalej_modal_ok").attr("type", "button");
  1396.             $("#dalej_modal_ok").addClass("js-modal-close");
  1397.             $("#dalej_modal_header_informacja").show();
  1398.             $("#dalej_modal_header_uwaga").hide();
  1399.         }
  1400.        
  1401.         this.dalejModalMiedzynarodowyNiechronologiczneDaty = function() {
  1402.             ZakupBiletuUtil().showOkienkoModalne(this, "dalej_modal_wymiana_mm_niechronologiczne_daty");
  1403.         }
  1404.        this.dalejModalMiedzynarodowyDzieckoMetropol = function() {
  1405.             ZakupBiletuUtil().showOkienkoModalne(this, "dalej_modal_dziecko_metropol");
  1406.         }
  1407.        
  1408.         this.modalZnizkiDlaKolejarzaPolbus = function(obj) {
  1409.             ZakupBiletuUtil().showModalInfo(obj, "dalej_modal_kolejarz_przesiadka");
  1410.         }
  1411.  
  1412.     }
  1413.  
  1414.     function init() {
  1415.         eventBlurMiejsceZajeteWskazane();
  1416.     }
  1417.  
  1418.     return {
  1419.         init: init
  1420.     }
  1421. };
  1422.  
  1423.  function ZakupBiletuUtil() {
  1424.    
  1425.      var usluga = {DO_SIEDZENIA:1, KUSZETKA:2, SYPIALNE:4 };
  1426.      var znizkiKolejarza = {PRACOWNIK_KOLEI:40, EMERYT_RENCIST_KOLEI:41, RODZINA_PRACOWNIKA_KOLEI:42, PRACOWNIK_KOLEI_ZAPLECZE_TECHNICZNE:44};
  1427.    
  1428.     function odblokujZablokujWieleZnizekDlaWLBC() {
  1429.                
  1430.         var SIEDZACE = 1;
  1431.        
  1432.         var tr_kod_znizki_2 = $("#tr_kod_znizki_2");        
  1433.         var znizki_sekcja_wlbc = $(".znizki_sekcja_wlbc");
  1434.         var rodzaj_miejsca_val = $(".rodzaj_miejsca").filter(':checked').val();        
  1435.        
  1436.         if(tr_kod_znizki_2.hasClass("znizki_sekcja_wlbc")) {            
  1437.             if(rodzaj_miejsca_val > SIEDZACE) {                              
  1438.                 znizki_sekcja_wlbc.attr('style','display: none !important');
  1439.                 wyczyscPolaOsobUlgoweKodyZnizek();
  1440.             }else {                              
  1441.                 znizki_sekcja_wlbc.attr('style','display: table-row !important');
  1442.             }                        
  1443.         }
  1444.     }
  1445.    
  1446.     function wyczyscPolaOsobUlgoweKodyZnizek() {
  1447.        
  1448.         var setDefaultValue = function(elements) {            
  1449.             $.each(elements, function(idx, elem) {                
  1450.                 var select = $("#" + elem);
  1451.                 if(select.length > 0) {
  1452.                     select.val(select.find("option:first").val());
  1453.                 }                
  1454.             });            
  1455.         }
  1456.        
  1457.         var liczba_arr = ["liczba_u_2", "liczba_u_3", "liczba_u_2_2", "liczba_u_2_3"];        
  1458.         var kod_znizki_arr = ["kod_znizki_2", "kod_znizki_3", "kod_znizki_2_2", "kod_znizki_2_3"];
  1459.        
  1460.         setDefaultValue(liczba_arr);
  1461.         setDefaultValue(kod_znizki_arr);
  1462.        
  1463.     }
  1464.    
  1465.     function showOkienkoModalne(input_ref, modal_id) {
  1466.              
  1467.         $("#"+modal_id).show();
  1468.         $("#dalej_modal_footer").show();                        
  1469.         $("#dalej_modal_inform").hide();
  1470.         $("#dalej_modal_false").show();                        
  1471.         $("#dalej_modal_ok").attr("type","submit");                        
  1472.         $("#dalej_modal_ok").addClass("js-modal-close").click(function(event) {                        
  1473.             $(input_ref).okienkoModalne().close();                                
  1474.         });
  1475.  
  1476.         $(input_ref).okienkoModalne().open();                              
  1477.  
  1478.     }
  1479.    
  1480.     function showModalInfo(input_ref, modal_id) {
  1481.        
  1482.         $("#"+modal_id).show();
  1483.         $("#dalej_modal_ok").val("ok");
  1484.         $("#dalej_modal_footer").show();                        
  1485.         $("#dalej_modal_inform").hide();
  1486.         $("#dalej_modal_false").hide();                        
  1487.         $("#dalej_modal_ok").attr("type","button");                        
  1488.         $("#dalej_modal_ok").addClass("js-modal-close").click(function(event) {                        
  1489.             $(input_ref).okienkoModalne().close();                                
  1490.         });
  1491.  
  1492.         $(input_ref).okienkoModalne().open();                              
  1493.        
  1494.     }
  1495.    
  1496.     function ustawLiczbeNJesliNieWybranoZnizkiWymiana() {
  1497.        
  1498.         var BEZ_ZNIZKI = 1;
  1499.        
  1500.         var wymiana_container = $("#wymiana_container");
  1501.        
  1502.         var liczba_n = $("#liczba_n");
  1503.         var znizki_arr = ["kod_znizki", "kod_znizki_2", "kod_znizki_3"];
  1504.        
  1505.         var czyWybranoZnizke = false;
  1506.        
  1507.         if(wymiana_container.is(":visible")) {
  1508.          
  1509.             $.each(znizki_arr, function(idx, elem) {            
  1510.                 var znizka_val = parseInt($("#" + elem).val());
  1511.  
  1512.                 if(znizka_val > BEZ_ZNIZKI) {
  1513.                     czyWybranoZnizke = true;
  1514.                 }
  1515.  
  1516.             });
  1517.  
  1518.             if(parseInt(liczba_n.val()) == 0 && !czyWybranoZnizke) {
  1519.                 liczba_n.val(1);
  1520.             }            
  1521.         }
  1522.        
  1523.     }
  1524.    
  1525.     function ustawMaxLiczbeLozekDlaPrzedzialu() {
  1526.        
  1527.         var llozekSelect = $('#llozek');
  1528.        
  1529.         if(llozekSelect.is(":visible")) {
  1530.          
  1531.             var ilosc_osob_w_przedziale = getIloscOsobDlaPrzedzialu();
  1532.            
  1533.             // resetujemy combo
  1534.             llozekSelect.empty();
  1535.            
  1536.             llozekSelect.append($('<option>', {
  1537.                 value: 0,
  1538.                 text: Language.get('wybierz')
  1539.             }));
  1540.            
  1541.             for(var i=0; i < ilosc_osob_w_przedziale; i++ ) {                
  1542.                  llozekSelect.append($('<option>', {
  1543.                     value: i + 1,
  1544.                     text : i + 1
  1545.                 }));
  1546.             }
  1547.         }
  1548.        
  1549.         liczba_lozek();        
  1550.        
  1551.       }
  1552.      
  1553.       function getIloscOsobDlaPrzedzialu() {
  1554.          
  1555.            var getPrzedzialOsoby = function(przedzial_str) {
  1556.            
  1557.             var DEFAULT_VAL = 6;
  1558.            
  1559.             var ilosc = DEFAULT_VAL;           
  1560.             var regex = /[+-]?\d+(?:\.\d+)?/g;             
  1561.             var match;
  1562.             while (match = regex.exec(przedzial_str)) {
  1563.               ilosc = match[0];              
  1564.               break;
  1565.             }
  1566.            
  1567.             return ilosc;            
  1568.         }
  1569.        
  1570.         var zaznaczona_usluga = parseInt($(".rodzaj_miejsca").filter(':checked').val());
  1571.         var przedzial = (zaznaczona_usluga == usluga.KUSZETKA) ? $("#klasa_wagonu") : $("#przedzial");
  1572.         var comboText = przedzial.find("option:selected").text();
  1573.        
  1574.         return getPrzedzialOsoby(comboText);
  1575.          
  1576.       }
  1577.      
  1578.       function ustawKlasePrzedzial(przedzial) {
  1579.          
  1580.           var wybranaUsluga = parseInt($(".rodzaj_miejsca:checked").val());
  1581.          
  1582.           var ustawWybranaOpcje = function(comboList) {
  1583.              
  1584.               comboList.find("option").each(function(idx, elem) {
  1585.                  
  1586.                   if($(elem).text().toLowerCase().indexOf(przedzial.toLowerCase()) != -1) {                      
  1587.                      $(elem).attr('selected', 'selected');
  1588.                   }
  1589.               });
  1590.           }
  1591.          
  1592.           if(wybranaUsluga == usluga.KUSZETKA) {              
  1593.               ustawWybranaOpcje($("#klasa_wagonu"));
  1594.              
  1595.           }else if(wybranaUsluga == usluga.SYPIALNE) {
  1596.               ustawWybranaOpcje($("#przedzial"));
  1597.              
  1598.           }                    
  1599.       }
  1600.      
  1601.       function czyWybranoZnizkiKolejarzaPolbus() {
  1602.          
  1603.          var znalezionoZnizke = false;
  1604.          
  1605.         var znizkiDlaWszystkichOdcinkow = ["#kod_znizki", "#kod_znizki_2", "#kod_znizki_3","#kod_znizki_2_1", "#kod_znizki_2_2", "#kod_znizki_2_3"];
  1606.         var znizkiKolejarzKody = getValueFromObject(znizkiKolejarza);        
  1607.        
  1608.         if(ZakupBiletuUtil().isPolbus()) {            
  1609.            
  1610.             $.each(znizkiDlaWszystkichOdcinkow, function (idx, elem) {
  1611.            
  1612.                 var select = $(elem);
  1613.                 if(select.find("option").length > 0) {
  1614.                     var kod = parseInt(select.find("option:selected").val(), 10);
  1615.  
  1616.                     if($.inArray(kod, znizkiKolejarzKody) !== -1) {
  1617.                         znalezionoZnizke = true;
  1618.                     }
  1619.                 }
  1620.             });
  1621.            
  1622.         }
  1623.        
  1624.         return znalezionoZnizke;
  1625.          
  1626.       }
  1627.      
  1628.       function getValueFromObject(elemObj) {
  1629.          
  1630.          var values = [];                    
  1631.          var keys = Object.keys(elemObj);
  1632.  
  1633.         for (var i = 0; i < keys.length; i++) {
  1634.             var val = parseInt(elemObj[keys[i]], 10);
  1635.             values.push(val);                
  1636.         }          
  1637.          
  1638.         return values;
  1639.       }
  1640.      
  1641.       function isPolbus() {          
  1642.           return ($("#isPolbus").length > 0);
  1643.       }
  1644.    
  1645.     return {
  1646.         odblokujZablokujWieleZnizekDlaWLBC:odblokujZablokujWieleZnizekDlaWLBC,
  1647.         showOkienkoModalne:showOkienkoModalne,
  1648.         ustawLiczbeNJesliNieWybranoZnizkiWymiana:ustawLiczbeNJesliNieWybranoZnizkiWymiana,
  1649.         ustawMaxLiczbeLozekDlaPrzedzialu:ustawMaxLiczbeLozekDlaPrzedzialu,
  1650.         ustawKlasePrzedzial:ustawKlasePrzedzial,
  1651.         getIloscOsobDlaPrzedzialu:getIloscOsobDlaPrzedzialu,
  1652.         czyWybranoZnizkiKolejarzaPolbus:czyWybranoZnizkiKolejarzaPolbus,
  1653.         showModalInfo:showModalInfo,
  1654.         isPolbus:isPolbus
  1655.     }
  1656.    
  1657.    
  1658.    
  1659. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement