/* Language preferences */ lang_fly = { children : "Bērni nevar ceļot bez pavadoņa!
", infants : "Zīdaiņu skaits nevar pārsniegt pieaugušo pasažieru skaitu!
", adults : "Lūdzu izvēlieties pasažieru tipu!
", passengers : "Pārsniegts maksimālais pasažieru skaits vienā rezervācijā!
", dep0 : "Izvēlieties no saraksta Jūsu izlidošanas pilsētu vai lidostu!
", dep1 : "Izvēlieties no saraksta Jūsu 2. izlidošanas pilsētu vai lidostu!
", arr0 : "Izvēlieties no saraksta Jūsu galamērķa pilsētu vai lidostu!
", arr1 : "Izvēlieties no saraksta Jūsu 2. galamērķa pilsētu vai lidostu!
", cal0 : "Lūdzu izvēlieties izlidošanas datumu!
", cal1 : "Lūdzu izvēlieties atgriešanās datumu!
" }; /* Functions */ function formatAirport(val, inList) { var dest = val.toString().split(";"); if(dest[dest.length-1] == '2') { var str = dest[1]; if (dest[2].length > 0) str+= ", " + dest[2]; if (dest[5].length > 0) str += ", " + dest[5]; str += " (" + dest[0] + ")"; return (inList) ? " " + str : str; } else if(dest[dest.length-1] == '1') { var str = dest[1] + ", " + dest[2] + " (" + dest[0] + ")"; return (inList) ? "" + str : str; } else { var str = dest[1] + ", " + dest[5] + " (" + dest[3] + ")"; return (inList) ? " " + str : str; } } function formatAirline( val, inList ) { var dest = val.toString().split(";"); var str = dest[1]; if (dest.length == 2) return (inList) ? dest[1] : str; } function avioPassengers() { var adults = parseInt($('select[name=adtcount]').val()); var children = parseInt($('select[name=chdcount]').val()); var infants = parseInt($('select[name=infcount]').val()); var youths = parseInt($('select[name=youths]').val()); adults = adults + youths; var passengers = adults + children + infants; if (!adults && children) { myAlert( lang_fly.children ); } else if (adults < infants) { myAlert( lang_fly.infants ); } else if (!adults) { myAlert( lang_fly.adults ); } else if (passengers > 9) { myAlert( lang_fly.passengers ); } else { return true; } return false; } function myAlert( msg ){ $('.alert-error').hide(); $('#error_message').html( msg ); $('.alert-error').show(); $('html, body').animate({scrollTop: $('.alert-error').offset().top - 120}, 200); } $(document).ready(function() { // avio $('#avioCont .journey_type input').click(function(){ $('#avioCont .journey_type label').removeClass('text-primary'); $(this).parent('label').addClass('text-primary'); $('#avioCont').removeClass('RT'); $('#avioCont').removeClass('OW'); $('#avioCont').removeClass('OJ'); $('#avioCont').addClass($(this).val()); }); $('#avioCont .addOptionShow .optionBtn').click(function(){ $('#avioCont .addOptionShow').addClass('hidden'); $('#avioCont .addOptionHide').removeClass('hidden'); return false; }); $('#avioCont .addOptionHide .optionBtn').click(function(){ $('#avioCont .addOptionHide').addClass('hidden'); $('#avioCont .addOptionShow').removeClass('hidden'); return false; }); var locale = 'en'; if($('#avioCont').data('lng')) locale = $('#avioCont').data('lng'); $('#datetimepicker1').datetimepicker({ format: 'DD.MM.YYYY', defaultDate: $('#datetimepicker1').data('mindate'), minDate: $('#datetimepicker1').data('mindate'), maxDate: $('#datetimepicker1').data('maxdate'), locale: locale }); $('#datetimepicker2').datetimepicker({ format: 'DD.MM.YYYY', defaultDate: $('#datetimepicker1').data('mindate'), minDate: $('#datetimepicker2').data('mindate'), maxDate: $('#datetimepicker1').data('maxdate'), locale: locale }); $("#datetimepicker1").on("dp.change",function (e) { $('#datetimepicker2').data("DateTimePicker").minDate(e.date); var one_day=1000*60*60*24; var date_1 = new Date($('#datetimepicker1').data("DateTimePicker").date()); var date_2 = new Date($('#datetimepicker2').data("DateTimePicker").date()); if(date_2 < date_1){ $('#datetimepicker2').data("DateTimePicker").date(new Date(parseInt(date_1.getTime())+parseInt(one_day))); } $('input[name=date_2]', $('#avioCont')).click(); }); $("#datetimepicker2").on("dp.change",function (e) { //$('#datetimepicker1').data("DateTimePicker").maxDate(e.date); $('select[name=adtcount]', $('#avioCont')).focus(); }); $('#datetimepicker1 input, #datetimepicker2 input').click(function(){ $(this).parent('div').children('span').click(); }); $('#datetimepicker1 input, #datetimepicker2 input').keyup(function(){ $(this).parent('div').children('span').click(); }); $(document).on('change', '.has-error', function() {$(this).removeClass('has-error');}); $(document).on('click', '.has-error', function() {$(this).removeClass('has-error');}); $('#avioCont .addAirportDep').click(function(){ if($('#avioCont .fromAdd_1').hasClass('hidden')){ $('#avioCont .deleteAirportDep').removeClass('hidden'); $('#avioCont .fromAdd_1').removeClass('hidden'); }else if($('#avioCont .fromAdd_2').hasClass('hidden')){ $('#avioCont .deleteAirportDep').removeClass('hidden'); $('#avioCont .fromAdd_2').removeClass('hidden'); $('#avioCont .addAirportDep').addClass('hidden'); } $('#avioCont .addAirportArr').addClass('hidden'); return false; }); $('#avioCont .deleteAirportDep').click(function(){ if(!$('#avioCont .fromAdd_2').hasClass('hidden')){ $('#avioCont .deleteAirportDep').removeClass('hidden'); $('#avioCont .fromAdd_2').addClass('hidden'); $('#avioCont .fromAdd_2 input').val(''); $('#avioCont .addAirportDep').removeClass('hidden'); }else if(!$('#avioCont .fromAdd_1').hasClass('hidden')){ $('#avioCont .deleteAirportDep').addClass('hidden'); $('#avioCont .fromAdd_1').addClass('hidden'); $('#avioCont .fromAdd_1 input').val(''); $('#avioCont .addAirportDep').removeClass('hidden'); $('#avioCont .addAirportArr').removeClass('hidden'); } return false; }); $('#avioCont .addAirportArr').click(function(){ if($('#avioCont .toAdd_1').hasClass('hidden')){ $('#avioCont .deleteAirportArr').removeClass('hidden'); $('#avioCont .toAdd_1').removeClass('hidden'); }else if($('#avioCont .toAdd_2').hasClass('hidden')){ $('#avioCont .deleteAirportArr').removeClass('hidden'); $('#avioCont .toAdd_2').removeClass('hidden'); $('#avioCont .addAirportArr').addClass('hidden'); } $('#avioCont .addAirportDep').addClass('hidden'); return false; }); $('#avioCont .deleteAirportArr').click(function(){ if(!$('#avioCont .toAdd_2').hasClass('hidden')){ $('#avioCont .deleteAirportArr').removeClass('hidden'); $('#avioCont .toAdd_2').addClass('hidden'); $('#avioCont .toAdd_2 input').val(''); $('#avioCont .addAirportArr').removeClass('hidden'); }else if(!$('#avioCont .toAdd_1').hasClass('hidden')){ $('#avioCont .deleteAirportArr').addClass('hidden'); $('#avioCont .toAdd_1').addClass('hidden'); $('#avioCont .toAdd_1 input').val(''); $('#avioCont .addAirportArr').removeClass('hidden'); $('#avioCont .addAirportDep').removeClass('hidden'); } return false; }); $('#avioCont form').submit(function(){ //has-error var error = false; var error_text = ''; if($('input[name=journey_type]:checked').val() == 'RT'){ var check = ["dep_0", "arr_0", "date_1", "date_2"]; }else if($('input[name=journey_type]:checked').val() == 'OW'){ var check = ["dep_0", "arr_0", "date_1"]; }else if($('input[name=journey_type]:checked').val() == 'OJ'){ var check = ["dep_0", "arr_0", "date_1", "date_2", "dep_1", "arr_1"]; } $('.has-error').removeClass('has-error'); for (index = 0; index < check.length; index++) { if($('#avioCont input[name='+check[index]+']').val().length < 2){ error = true; $('#avioCont input[name='+check[index]+']').parent('div').addClass('has-error'); if(check[index] == 'dep_0') error_text = error_text+lang_fly.dep0; else if(check[index] == 'arr_0') error_text = error_text+lang_fly.arr0; else if(check[index] == 'dep_1') error_text = error_text+lang_fly.dep1; else if(check[index] == 'arr_1') error_text = error_text+lang_fly.arr1; else if(check[index] == 'date_1') error_text = error_text+lang_fly.cal0; else if(check[index] == 'date_2') error_text = error_text+lang_fly.cal1; } } if(error){ myAlert( error_text ); return false; } return avioPassengers(); }); var lng=$("#avioCont").data("lng"); $(document).on('click', '.airport-select', function(e) { $('input[name='+$('#countryModal').data('to')+']').val($(this).html()); $('input[name='+$('#countryModal').data('to')+']').focus(); $('.close').click(); return false; }); //avioCont dep_0 $('#avioCont input[name=dep_0]').typeahead({source: function (query, process) { return $.getJSON('/flights_search_form/whisper_airport.php', { query: query, lng: lng }, function (data) { //myAlert(data); return process(data); }); }, autoSelect: true, highlighter: function(item){ return formatAirport(item, true); }, items: 20, afterSelect: function(item){ $("#avioCont input[name=dep_0]").val(formatAirport(item, false)); setTimeout(function(){$("#avioCont input[name=arr_0]").focus();}, 10); }, }); $('#avioCont input[name=dep_0_1]').typeahead({source: function (query, process) { return $.getJSON('/flights_search_form/whisper_airport.php', { query: query, lng: lng }, function (data) { //myAlert(data); return process(data); }); }, autoSelect: true, highlighter: function(item){ return formatAirport(item, true); }, items: 20, afterSelect: function(item){ $("#avioCont input[name=dep_0_1]").val(formatAirport(item, false)); setTimeout(function(){$("#avioCont input[name=arr_0]").focus();}, 10); }, }); $('#avioCont input[name=dep_0_2]').typeahead({source: function (query, process) { return $.getJSON('/flights_search_form/whisper_airport.php', { query: query, lng: lng }, function (data) { //myAlert(data); return process(data); }); }, autoSelect: true, highlighter: function(item){ return formatAirport(item, true); }, items: 20, afterSelect: function(item){ $("#avioCont input[name=dep_0_2]").val(formatAirport(item, false)); setTimeout(function(){$("#avioCont input[name=arr_0]").focus();}, 10); }, }); //avioCont arr_0 $('#avioCont input[name=arr_0]').click(function(){$(this).val('');}); $('#avioCont input[name=arr_0_1]').click(function(){$(this).val('');}); $('#avioCont input[name=arr_0_2]').click(function(){$(this).val('');}); $('#avioCont input[name=arr_0]').typeahead({source: function (query, process) { return $.getJSON('/flights_search_form/whisper_airport.php', { query: query, lng: lng }, function (data) { //myAlert(data); return process(data); }); }, autoSelect: true, highlighter: function(item){ return formatAirport(item, true); }, items: 20, afterSelect: function(item){ $("#avioCont input[name=arr_0]").val(formatAirport(item, false)); if($("input[name=journey_type]:checked").val() == 'OJ') setTimeout(function(){$("#avioCont input[name=dep_1]").focus();}, 10); else setTimeout(function(){$("#avioCont input[name=date_1]").click();}, 10); }, }); $('#avioCont input[name=arr_0_1]').typeahead({source: function (query, process) { return $.getJSON('/flights_search_form/whisper_airport.php', { query: query, lng: lng }, function (data) { //myAlert(data); return process(data); }); }, autoSelect: true, highlighter: function(item){ return formatAirport(item, true); }, items: 20, afterSelect: function(item){ $("#avioCont input[name=arr_0_1]").val(formatAirport(item, false)); setTimeout(function(){$("#avioCont input[name=date_1]").click();}, 10); }, }); $('#avioCont input[name=arr_0_2]').typeahead({source: function (query, process) { return $.getJSON('/flights_search_form/whisper_airport.php', { query: query, lng: lng }, function (data) { //myAlert(data); return process(data); }); }, autoSelect: true, highlighter: function(item){ return formatAirport(item, true); }, items: 20, afterSelect: function(item){ $("#avioCont input[name=arr_0_2]").val(formatAirport(item, false)); setTimeout(function(){$("#avioCont input[name=date_1]").click();}, 10); }, }); //avioCont dep_1 $('#avioCont input[name=dep_1]').click(function(){$(this).val('');}); $('#avioCont input[name=dep_1]').typeahead({source: function (query, process) { return $.getJSON('/flights_search_form/whisper_airport.php', { query: query, lng: lng }, function (data) { //myAlert(data); return process(data); }); }, autoSelect: true, highlighter: function(item){ return formatAirport(item, true); }, items: 20, afterSelect: function(item){ $("#avioCont input[name=dep_1]").val(formatAirport(item, false)); setTimeout(function(){$("#avioCont input[name=arr_1]").focus();}, 10); }, }); //avioCont arr_1 $('#avioCont input[name=arr_1]').click(function(){$(this).val('');}); $('#avioCont input[name=arr_1]').typeahead({source: function (query, process) { return $.getJSON('/flights_search_form/whisper_airport.php', { query: query, lng: lng }, function (data) { //myAlert(data); return process(data); }); }, autoSelect: true, highlighter: function(item){ return formatAirport(item, true); }, items: 20, afterSelect: function(item){ $("#avioCont input[name=arr_1]").val(formatAirport(item, false)); setTimeout(function(){$("#avioCont input[name=date_1]").click();}, 10); }, }); // $('.changePassengers').change(function(){return avioPassengers();}) });