var IBE = IBE || {};
IBE.datePickerConfig = function (op) {
    return {
        dateFormat : 'd.mm.yy',
        prevText : '',
        nextText : '',
        dayNamesMin : ['Nd', 'Pn', 'Wt', 'Sr', 'Cz', 'Pt', 'So'],
        monthNames : ['Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj', 'Czerwiec', 'Lipiec', 'Sierpień', 'Wrzesień', 'Październik', 'Listopad', 'Grudzień'],
        monthNamesShort: ['Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj', 'Czerwiec', 'Lipiec', 'Sierpień', 'Wrzesień', 'Październik', 'Listopad', 'Grudzień'],
        firstDay : 1,
        minDate : new Date(tt.getTerminMin() * 1000),
        maxDate : new Date(tt.getTerminMax() * 1000),
        beforeShow : function(input, inst) {
            input.value = input.value.slice(-10);
        },
        onSelect : function (dateText, inst) {
            var form = tt.doc.getElementById('bengine'),
                tmp = (Date.UTC(parseInt(dateText.split('.')[2], 10), parseInt(dateText.split('.')[1], 10) - 1, parseInt(dateText.split('.')[0], 10))) / 1000;
            if (op === 0) {
                var date1 = tt.doc.getElementById('date1');
                var dayDate1 = new Date(
                    parseInt(dateText.split('.')[2], 10), parseInt(dateText.split('.')[1], 10) - 1, parseInt(dateText.split('.')[0], 10)
                );
                date1.value = date1.value;
                form.termin.value = tmp;
            } else if (op === 1) {
                var date2 = tt.doc.getElementById('date2');
                var dayDate2 = new Date(
                    parseInt(dateText.split('.')[2], 10), parseInt(dateText.split('.')[1], 10) - 1, parseInt(dateText.split('.')[0], 10)
                );
                date2.value = date2.value;
                form.ruecktermin.value = tmp;
            }
        },
        onClose : function (dateText, inst) {
            if (tt.doc.getElementById('bengine').termin.value > tt.doc.getElementById('bengine').ruecktermin.value) {
                $('#date2').css('color','#cc0000');
                tt.doc.getElementById('bengine').ruecktermin.value = tt.getTerminMax();
            } else {
                $('#date2').css('color','#838383');
            }
        }
    };
};

function displayGuide(getRegId) {
  var getRegIdSplit = getRegId.split(';');
  window.open('http://content.traveltainment.pl/content_page_premium_v3/include/get_reg_facts_data_by_zk.php?KID=111027&zk='+getRegIdSplit[0]+'&fl='+getRegIdSplit[1]+'','guideWindow','left=0,top=0,width=733,height=700');
}



$('document').ready(function () {
    tt.loadCacheFile(IBE.KID, IBE.port, function () {
    
        if ($('#marke').length) {
            (function () {
                var markeArr = window['arrMarke_' + IBE.port],
                    html = '<option value="-1">dowolny</option>';
                for (var a in markeArr) {
                    html += '<option value="' + markeArr[a].split(';')[1] + '">' + markeArr[a].split(';')[0] + '</option>';
                }
                $('#marke').append(html);
            })();
        }
        
        
        if ($('#date1').length) {
            (function () {
                var date = new Date(tt.getTerminMin() * 1000);
                $('#bengine input[name="termin"]').val(tt.getTerminMin());
                $('#date1').datepicker(IBE.datePickerConfig(0));
                $('#date1').click(function () {
                    if ($('#ui-datepicker-div').css('display') === 'block') {
                        $('#ui-datepicker-div').hide();
                    } else {
                        $('#ui-datepicker-div').show();
                    }
                });
                $('#date1').val(date.getDate() + '.' + ((date.getMonth() + 1) < 10 ? '0' + (date.getMonth() + 1) : (date.getMonth() + 1)) + '.' + date.getFullYear())
            })();
        }
        
        
        if ($('#date2').length) {
            (function () {
                //var date = new Date(tt.getTerminMax() * 1000);
                // $('#bengine input[name="ruecktermin"]').val(tt.getTerminMax());
                var date = new Date((tt.getTerminMin() * 1000)+(31*24*60*60*1000));
                $('#bengine input[name="ruecktermin"]').val(tt.getTerminMin()+(31*24*60*60));
                $('#date2').datepicker(IBE.datePickerConfig(1));
                $('#date2').click(function () {
                    if ($('#ui-datepicker-div').css('display') === 'block') {
                        $('#ui-datepicker-div').hide();
                    } else {
                        $('#ui-datepicker-div').show();
                    }
                });
                $('#date2').val(date.getDate() + '.' + ((date.getMonth() + 1) < 10 ? '0' + (date.getMonth() + 1) : (date.getMonth() + 1)) + '.' + date.getFullYear())
            })();
        }
        
        
        
        if ($('#udfListRegionen').length) {
            (function () {
                var allRegions = window['TTREGS_' + IBE.port],
                    html = '<option value="-1">dowolony</option>', regionObj = {};
                for (var d in allRegions) {
                    regionObj[allRegions[d].split('|')[3]] = allRegions[d].split('|')[0];
                }
                for (var a in UDF) {
                    var tmp = UDF[a].join(',');
                    html += '<option value="' + a + '|' + tmp + '">' + a + '</option>'; 
                    for (var b in UDF[a]) {
                        if (regionObj[UDF[a][b]]) {
                            html += '<option value="' + a + '|' + tmp + '|' + UDF[a][b]  + '"> - ' + regionObj[UDF[a][b]]  + '</option>';
                        }
                    }
                }
                $('#udfListRegionen').append(html);
            })();
            
            $('#udfListRegionen').change(function () {
                var tmp = $(this).val().split('|'),
                    form = tt.doc.getElementById('bengine');
                if (tmp.length === 1) {
                    form.udfregionen.value = '-1';
                    form.topRegion.value = '';
                    form.detail.value = 'zielgebiet';
                } else if (tmp.length === 2) {
                    form.udfregionen.value = tmp[0] + '|' + tmp[1];
                    form.topRegion.value = '';
                    form.detail.value = 'zielgebiet';
                } else if (tmp.length === 3) {
                    form.udfregionen.value = tmp[0] + '|' + tmp[1];
                    form.topRegion.value = tmp[2];
                    form.detail.value = 'hotel';
                }
            });
        }
        
        
        if ($('#scale').length) {
            $('#scale').slider({
                min: 0,
                max: 10000,
                value : 0,
                slide : function (event, ui) {
                    var elPreis = $('#bengine input[name="preis"]');
                    elPreis.val('8_' + parseInt(ui.value / 3.9756, 10));
                    $('#cloud').css('left', $('.ui-slider-handle').css('left')).html(ui.value + 'zł');
                    if (ui.value === 0) {
                        $('#cloud').html('dowolna');
                        elPreis.val('-1');
                    }
                }
            });
        }

        if ($('#zimmer2').length) {
            $('#zimmer2').change(function () {
                $('#opZimmer').attr('checked', 'checked');
            });
            $('.opZimmer').change(function () {
                $('#zimmer2 option[value="-1"]').attr('selected', 'selected');
            });
        }
        
        
        if ($('#sport').length) {
            $('#sport').change(function () {
                if ($(this).attr('checked')) {
                    $('#sportangebot option[value="10"]').attr('selected','selected');
                } else {
                    $('#sportangebot option[value="-1"]').attr('selected','selected');
                }   
            });
            $('#sportangebot').change(function () {
                if ($('#sportangebot option[value="-1"]').attr('selected')) {
                    $('#sport').removeAttr('checked');
                }
            });
        }
        
        if ($('#regions').length) {
            (function () {
                var sortedRegions = [], regions = window['TTREGS_' + IBE.port], html = '';
                for (var n in regions) {
                    parts=regions[n].split('|');
                    if (parts[1]>9999) {
                        sortedRegions[parts[2]]=Array()
                        sortedRegions[parts[2]][0]=parts[0];
                        sortedRegions[parts[2]]['regId']=parts[3];
                    }
                }		
                for (var n in regions) {
                    parts=regions[n].split('|');
                    if (parts[1]<10000) {
                        sortedRegions[parts[2]][parts[3]]='&nbsp;-&nbsp;'+parts[0];
                    }
                }		
                sortedRegions.sort();
                for(var a in sortedRegions){
                    html += '<optgroup label="'+sortedRegions[a][0]+'">';
                    for(var b in sortedRegions[a]){
                        if(b>0){
                            html += '<option value="'+b+';'+sortedRegions[a]['regId']+'">'+sortedRegions[a][b]+'</option>';
                        }
                    }
                    html += '</optgroup>';
                }
                $('#regions').append(html);
            })();
        }
        
    });
});

