var vacations={'Baden-W&uuml;rttemberg':[['23.12.2011','05.01.2011'],['02.04.2012','13.04.2012'],['29.05.2012','09.06.2012'],['26.07.2012','08.09.2012'],['29.10.2012','02.11.2012']],Bayern:[['27.12.2011','05.01.2012'],['20.02.2012','24.02.2012'],['02.04.2012','14.04.2012'],['29.05.2012','09.06.2012'],['01.08.2012','12.09.2012'],['29.10.2012','03.11.2012']],Berlin:[['23.12.2011','03.01.2012'],['02.04.2012','14.04.2012'],['30.04.2012'],['18.05.2012'],['21.06.2012','03.08.2012'],['01.10.2012','13.10.2012']],Brandenburg:[['23.12.2011','03.01.2012'],['30.01.2012','04.02.2012'],['04.04.2012','14.04.2012'],['30.04.2012'],['18.05.2012'],['21.06.2012','03.08.2012'],['01.10.2012','13.10.2012']],Bremen:[['23.12.2011','04.01.2012'],['30.01.2012','31.01.2012'],['26.03.2012','11.04.2012'],['29.05.2012'],['23.07.2012','31.08.2012'],['22.10.2012','03.11.2012']],Hamburg:[['27.12.2011','06.01.2012'],['30.01.2012'],['05.03.2012','16.03.2012'],['30.04.2012','04.05.2012'],['18.05.2012'],['21.06.2012','01.08.2012'],['01.10.2012','12.10.2012']],Hessen:[['21.12.2011','06.01.2012'],['02.04.2012','11.04.2012'],['02.07.2012','10.08.2012'],['15.10.2012','27.10.2012']],'Mecklenburg-Vorpommern':[['23.12.2011','03.01.2012'],['06.02.2012','17.02.2012'],['02.04.2012','11.04.2012'],['25.05.2012','29.05.2012'],['23.06.2012','04.08.2012'],['01.10.2012','05.10.2012']],Niedersachsen:[['23.12.2011','04.01.2012'],['30.01.2012','31.01.2012'],['26.03.2012','11.04.2012'],['30.04.2012'],['18.05.2012'],['29.05.2012'],['23.07.2012','31.08.2012'],['22.10.2012','03.11.2012']],'Nordrhein-Westfalen':[['23.12.2011','06.01.2012'],['02.04.2012','14.04.2012'],['29.05.2012'],['09.07.2012','21.08.2012'],['08.10.2012','20.10.2012']],'Rheinland-Pfalz':[['22.12.2011','06.01.2012'],['29.03.2012','13.04.2012'],['18.05.2012'],['08.06.2012'],['02.07.2012','10.08.2012'],['01.10.2012','12.10.2012']],Saarland:[['23.12.2011','04.01.2012'],['20.02.2012','25.02.2012'],['02.04.2012','14.04.2012'],['02.07.2012','14.08.2012'],['22.10.2012','03.11.2012']],Sachsen:[['21.12.2011','02.01.2012'],['13.02.2012','25.02.2012'],['06.04.2012','14.04.2012'],['18.05.2012'],['23.07.2012','31.08.2012'],['22.10.2012','02.11.2012']],'Sachsen-Anhalt':[['22.12.2011','07.01.2012'],['04.02.2012','11.02.2012'],['02.04.2012','07.04.2012'],['21.05.2012','26.05.2012'],['23.07.2012','05.09.2012'],['29.10.2012','02.11.2012']],'Schleswig-Holstein':[['23.12.2011','06.01.2012'],['30.03.2012','13.04.2012'],['18.05.2012'],['25.06.2012','04.08.2012'],['04.10.2012','19.10.2012']],'Th&uuml;ringen':[['23.12.2011','31.12.2011'],['06.02.2012','11.02.2012'],['02.04.2012','13.04.2012'],['25.05.2012','29.05.2012'],['23.07.2012','31.08.2012'],['22.10.2012','03.11.2012']]},holidays={global:[['10.04.2009'],['12.04.2009','13.04.2009'],['01.05.2009'],['21.05.2009'],['31.05.2009','01.06.2009'],['03.10.2009'],['25.12.2009','26.12.2009'],['01.01.2010'],['02.04.2010'],['04.04.2010','05.04.2010'],['01.05.2010'],['13.05.2010'],['23.05.2010','24.05.2010'],['03.10.2010'],['25.12.2010','26.12.2010'],['01.01.2011'],['22.04.2011'],['24.04.2011','25.04.2011'],['01.05.2011'],['02.06.2011'],['12.06.2011','13.06.2011'],['03.10.2011'],['25.12.2011','26.12.2011'],['01.01.2012'],['06.04.2012'],['08.04.2012','09.04.2012'],['01.05.2012'],['17.05.2012'],['27.05.2012','28.05.2012'],['03.10.2012'],['25.12.2012','26.12.2012'],['01.01.2013'],['29.03.2013'],['31.04.2013','01.04.2013'],['01.05.2013'],['09.05.2013'],['19.05.2013','20.05.2013'],['03.10.2013'],['25.12.2013','26.12.2013'],['01.01.2014'],['18.04.2013'],['20.04.2013','21.04.2013'],['01.05.2014'],['29.05.2014'],['08.06.2014','09.06.2014'],['03.10.2014'],['25.12.2014','26.12.2014'],['01.01.2015'],['03.04.2015'],['05.04.2015','06.04.2015'],['01.05.2015'],['14.05.2015'],['24.05.2015','25.05.2015'],['03.10.2015'],['25.12.2015','26.12.2015'],['01.01.2016'],['25.03.2016'],['27.03.2016','28.03.2016'],['01.05.2016'],['05.05.2016'],['15.05.2016','16.05.2016'],['03.10.2016'],['25.12.2016','26.12.2016'],['01.01.2017'],['14.04.2017'],['16.04.2017','17.04.2017'],['01.05.2017'],['25.05.2017'],['04.06.2017','05.06.2017'],['03.10.2017'],['25.12.2017','26.12.2017'],['01.01.2018'],['30.03.2018'],['01.04.2018','02.04.2018'],['01.05.2018'],['10.05.2018'],['20.05.2018','21.05.2018'],['03.10.2018'],['25.12.2018','26.12.2018'],['01.01.2019'],['19.04.2019'],['21.04.2019','22.04.2019'],['01.05.2019'],['30.05.2019'],['09.06.2019','10.06.2019'],['03.10.2019']['25.12.2019','26.12.2019']]},dpSelectedArea='',selectionBaseModifyRunning=false,searchDefaultValues={};jQuery(document).ready(searchInit)
function searchInit(){var ret=true,mainContainer=jQuery('.tx-tuisearch-pi1');delete selectionCompBkp;delete selectionBaseBkp;selectBuild(mainContainer);helpBuild(mainContainer);sliderBuild(mainContainer);sliderDoubleBuild(mainContainer);raterBuild(mainContainer);if(typeof (dpBuildPreCallback)=='function'){dpBuildPreCallback()}else dpBuild(mainContainer);udfCountries(mainContainer);setTimeout(function(){mainContainer.find('select').change()},10);setBookingCode();if(typeof (searchInitCallback)=='function')ret=searchInitCallback();jQuery('input, select, textarea',mainContainer).each(function(){if(jQuery.inArray(jQuery(this).attr('type'),new Array('radio','checkbox'))==-1||jQuery(this).is(':checked'))searchDefaultValues[jQuery(this).attr('name')]=jQuery(this).val()});jQuery('input[type=reset]',mainContainer).click(function(){mainContainer=jQuery(this).parents('.tx-tuisearch-pi1');jQuery('input[type!=submit][type!=button], select, textarea',mainContainer).each(function(){if(jQuery(this).attr('type')=='checkbox')jQuery(this).removeAttr('checked');if(jQuery.inArray(jQuery(this).attr('type'),new Array('radio','checkbox'))!=-1){var elm=jQuery('[name='+jQuery(this).attr('name')+'][value='+searchDefaultValues[jQuery(this).attr('name')]+']',mainContainer);if(!elm.is(':checked'))elm.attr('checked','checked').trigger('click')}else jQuery(this).val(searchDefaultValues[jQuery(this).attr('name')])});jQuery('.sliderSlide',mainContainer).each(function(){for(var i=0;i<jQuery(this).data('elmArr').length;i++)if(jQuery(this).data('elmArr')[i].value==jQuery(this).nextAll('input:first').val()){jQuery(this).slider('value',i);break}});jQuery('.raterRate',mainContainer).each(function(){for(var i=0;i<jQuery(this).data('elmArr').length;i++)if(jQuery(this).data('elmArr')[i].value==jQuery(this).nextAll('input:first').val()){jQuery(this).next('.raterLabel').text(jQuery(this).data('elmArr')[i].name);jQuery(this).children('ul').css({backgroundPosition:'0 0'});break}});jQuery('.childrenselect').nextAll().hide();return false});return ret}
function searchLoad(id,elm,event){var container=elm?jQuery(elm).parents('.tx-tuisearch-pi1'):jQuery('.tx-tuisearch-pi1'),loader=buildLoader(container);jQuery.get('/specials/ajaxifier/ajax.xml',{'tx_neustatabs_pi2[ce]':id},function(data){loader.remove();container.prev('h2').remove();container.replaceWith(data);searchInit();if(typeof (searchLoadCallback)=='function')searchLoadCallback(container,event)})}
function searchSubmit(form){var ageCounter=0;if(jQuery('#alter'.length>0)){ageCounter+=(jQuery('#alter1 :selected',form).val()==-1)?0:1;ageCounter+=(jQuery('#alter2 :selected',form).val()==-1)?0:1;ageCounter+=(jQuery('#alter3 :selected',form).val()==-1)?0:1;if(parseInt(jQuery('#alter :selected',form).val())>ageCounter){alert('Bitte geben sie für jedes ausgewählte Kind ein Alter an.','Eingaben vervollständigen');return false}};if(jQuery('#shotel').length){jQuery('.extendedSearch',form).hide();var shotel=escape(jQuery('#shotel').val());jQuery('#shotel').val(shotel)};fixDate();fixFormAction(form);if(typeof (searchSubmitCallback)=='function')return searchSubmitCallback(form);return true}
function fixFormAction(form){var mainParts=jQuery(form).attr('action').split('?');if(mainParts.length>1){var subParts=mainParts[1].split('&');for(i=0;i<subParts.length;i++){var subSubParts=subParts[i].split('=');if(jQuery(form).find('input[type=hidden][name='+subSubParts[0]+']').length){jQuery(form).find('input[type=hidden][name='+subSubParts[0]+']').val(subSubParts[1])}else jQuery(form).append('<input type="hidden" name="'+subSubParts[0]+'" value="'+subSubParts[1]+'" />')};jQuery(form).attr('action',mainParts[0])}}
function fixDate(){jQuery('.datepicker').each(function(){var dpDate=new Array(),dateObj=new Date(),newDate=new Date();if(!jQuery('#conQSStartdateInput').val()){newDate=new Date(new Date().getTime()+(1000*60*60*24*2));jQuery('#conQSStartdateInput').val(jQuery.datepicker.formatDate('dd.mm.yy',newDate))};if(!jQuery('#conQSEnddateInput').val()){newDate=new Date(new Date().getTime()+(1000*60*60*24*35));jQuery('#conQSEnddateInput').val(jQuery.datepicker.formatDate('dd.mm.yy',newDate))};if(jQuery(this).val().match(/\D+/g)){dpDate=jQuery(this).val().replace(/\D+/g,".").split('.')}else if(jQuery(this).val().length==8){dpDate=new Array(jQuery(this).val().substr(0,2),jQuery(this).val().substr(2,2),jQuery(this).val().substr(4,4))}else if(jQuery(this).val().length==7){if(jQuery(this).val().substr(0,2)<=31){dpDate=new Array(jQuery(this).val().substr(0,2),jQuery(this).val().substr(2,1),jQuery(this).val().substr(3,4))}else if(jQuery(this).val().substr(1,2)<=12)dpDate=new Array(jQuery(this).val().substr(0,1),jQuery(this).val().substr(1,2),jQuery(this).val().substr(3,4))}else if(jQuery(this).val().length==6){if(jQuery(this).val().substr(2,2)<=12){dpDate=new Array(jQuery(this).val().substr(0,2),jQuery(this).val().substr(2,2),jQuery(this).val().substr(4,2))}else dpDate=new Array(jQuery(this).val().substr(0,1),jQuery(this).val().substr(1,1),jQuery(this).val().substr(2,4))}else if(jQuery(this).val().length==4)dpDate=new Array(jQuery(this).val().substr(0,2),jQuery(this).val().substr(2,2),dateObj.getFullYear());if(dpDate.length==3){if(dpDate[2].length<4)if(dpDate[2].length==0){dpDate[2]=dateObj.getFullYear()}else dpDate[2]=dpDate[2]*1+2000;newDate=new Date(dpDate[2],dpDate[1]-1,dpDate[0])}else if(dpDate.length==2)newDate=new Date(dateObj.getFullYear(),dpDate[1]-1,dpDate[0]);if(newDate.getTime()<dateObj.getTime())if(newDate.getMonth()<dateObj.getMonth()||(newDate.getMonth()==dateObj.getMonth()&&newDate.getDate()<dateObj.getDate())){newDate.setYear(dateObj.getFullYear()+1)}else newDate.setYear(dateObj.getFullYear());jQuery(this).val(jQuery.datepicker.formatDate('dd.mm.yy',newDate))})}
function selectBuild(mainContainer){if(!jQuery(mainContainer).find('.tourWide').length)mainContainer.find('select').each(function(){jQuery(this).find('option').each(function(){var jsCodeArr=jQuery(this).val().match(/javascript\:(.*?)$/);jsCodeArr&&jsCodeArr[1]?jQuery(this).data('js',jsCodeArr[1]):'';jQuery(this).val(jQuery(this).val().replace(/javascript\:(.*?)$/,''))});jQuery(this).change(function(){eval(jQuery(this).find('option:selected').data('js'))})})}
function helpBuild(mainContainer){mainContainer.find('.helpopen').click(function(){jQuery(this).next('.help').toggle(100);jQuery(this).next('.help').css({top:jQuery(this).position().top,left:jQuery(this).position().left+jQuery(this).width()+5});if(typeof (searchHelpToggleCallback)=='function')searchHelpToggleCallback(jQuery(this).next('.help'))}).each(function(){jQuery(this).next('.help').bgiframe()});jQuery(mainContainer.find('input[type=checkbox]')).each(function(){var label=jQuery(this).next('label[title]');if(label.attr('title')){label.data('title',label.attr('title')).removeAttr('title');jQuery([jQuery(this),label]).each(function(i){jQuery(this).mousemove(function(e){jQuery(this).next('.help').css({left:e.pageX-jQuery(this).offset().left+jQuery(this).position().left+10,top:e.pageY-jQuery(this).offset().top+jQuery(this).position().top+10}).show()}).mouseout(function(){jQuery(this).next('.help').hide()}).after('<div>').next().addClass('help').hide().append('<div>').children().addClass('helpcontent').html(label.data('title'))})}})}
function sliderBuild(mainContainer){mainContainer.find('.slider').each(function(){var selIndex=0,elmArr=new Array();jQuery(this).find('option').each(function(i){elmArr.push({name:jQuery(this).text(),value:jQuery(this).val()});if(jQuery(this).attr('selected'))selIndex=i});jQuery(this).after('<div class="sliderSlide"></div><div class="sliderLabel">'+elmArr[selIndex].name+'</div><input type="hidden" name="'+jQuery(this).attr('name')+'" />');jQuery(this).next('.sliderSlide').data('elmArr',elmArr).slider({max:elmArr.length-1,steps:elmArr.length-1,value:selIndex,orientation:'horizontal',animate:true,change:function(e,ui){jQuery(this).next('.sliderLabel').text(jQuery(this).data('elmArr')[ui.value].name);jQuery(this).next('.sliderLabel').next('input[type=hidden]').val(jQuery(this).data('elmArr')[ui.value].value)}});jQuery(this).remove()})}
function sliderDoubleBuild(mainContainer){mainContainer.find('.sliderdouble').each(function(){var elmArr=new Array(),selArr=new Array(),min=10000;jQuery(this).find('option').each(function(i){elmArr.push({name:jQuery(this).text(),value:jQuery(this).val()});if(jQuery(this).attr('selected')&&selArr.length<2)selArr.push(i);min=jQuery(this).val()<min&&jQuery(this).val()>=0?jQuery(this).val():min});selArr=selArr.length<2?[0,elmArr.length-1]:selArr;var html='<div class="sliderSlideDouble"></div>';html+='<div class="sliderLabel">'+elmArr[selArr[0]].name+' - '+elmArr[selArr[1]].name+'</div>';html+='<input type="hidden" value="'+elmArr[selArr[0]].value+'" name="'+jQuery(this).attr('name').split('[]')[0]+'Min" />';html+='<input type="hidden" value="'+elmArr[selArr[1]].value+'" name="'+jQuery(this).attr('name').split('[]')[0]+'Max" />';jQuery(this).after('<div class="sliderCell">'+html+'</div>');jQuery(this).next('.sliderCell').find('.sliderSlideDouble').slider({min:min==10000?0:min-1,max:elmArr.length-1,values:selArr,animate:true,range:'min',slide:function(e,ui){sliderDoubleBGPos(jQuery(this));jQuery(this).nextAll('.sliderLabel').text(elmArr[selArr[0]].name+' - '+elmArr[selArr[1]].name);jQuery(this).nextAll('input[type=hidden]:first').val(elmArr[ui.values[0]].value);jQuery(this).nextAll('input[type=hidden]:last').val(elmArr[ui.values[1]].value)}});sliderDoubleBGPos(jQuery(this).next('.sliderCell').find('.sliderSlideDouble'));jQuery(this).next('.sliderCell').find('.sliderSlideDouble .ui-slider-handle:first').addClass('first-handle');jQuery(this).next('.sliderCell').find('.sliderSlideDouble .ui-slider-handle:last').addClass('last-handle');jQuery(this).remove()})}
function sliderDoubleBGPos(self){setTimeout(function(){var firstSlider=self.find('.ui-slider-handle:first'),lastSlider=self.find('.ui-slider-handle:last'),bgWidth=lastSlider.position().left-firstSlider.position().left-(parseInt(firstSlider.css('width'))/2)+(parseInt(lastSlider.css('width'))/2),bgLeft=firstSlider.position().left+(firstSlider.width()/2);self.find('.ui-widget-header').css({width:bgWidth,left:bgLeft})},10)}
function raterBuild(mainContainer){mainContainer.find('.rater').each(function(){var elmArr=new Array(),lis='';jQuery(this).find('option').each(function(i){elmArr.push({name:jQuery(this).text(),value:jQuery(this).val()});if(jQuery(this).attr('selected'))selIndex=i;if(jQuery(this).val()&&jQuery(this).val()!=-1)lis+='<li></li>'});jQuery(this).after('<div class="raterRate"><ul>'+lis+'</ul></div><div class="raterLabel">'+(elmArr[selIndex]?elmArr[selIndex].name:'')+'</div><input type="hidden" name="'+jQuery(this).attr('name')+'" value="'+(elmArr[selIndex]?elmArr[selIndex].value:'')+'" />');jQuery(this).next('.raterRate').data('elmArr',elmArr);jQuery(this).next('.raterRate').data('selIndex',selIndex);jQuery(this).next('.raterRate').find('li').each(function(i){jQuery(this).click(function(){jQuery(this).parent().parent().next('.raterLabel').text(elmArr[i+1].name);jQuery(this).parent().parent().next('.raterLabel').next('input[type=hidden]').val(elmArr[i+1].value);jQuery(this).parent().parent().data('selIndex',i+1)}).mouseover(function(){jQuery(this).parent().parent().next('.raterLabel').text(elmArr[i+1].name);jQuery(this).parent().css('backgroundPosition','0 '+(-(parseInt(jQuery(this).css('height'))*(i+1)))+'px')}).mouseout(function(){jQuery(this).parent().parent().next('.raterLabel').text(jQuery(this).parent().parent().data('elmArr')[jQuery(this).parent().parent().data('selIndex')].name);jQuery(this).parent().css('backgroundPosition','0 '+(-(parseInt(jQuery(this).css('height'))*jQuery(this).parent().parent().data('selIndex')))+'px')});jQuery(this).mouseout()});jQuery(this).remove()})}
function dependentSelectChange(localSelect,foreignSelect,noCallback){if(typeof (altDependentSelectChangeCallback)=='function'){altDependentSelectChangeCallback(localSelect,foreignSelect)}else{var selectionBase=foreignSelect,selectionComp=localSelect;localSelect.find('option').each(function(){if(jQuery(this).val().indexOf('|')!=-1){selectionBase=localSelect;selectionComp=foreignSelect;selectionBase.find('option:selected').val()!=-1?selectionComp.find('option[value='+(selectionBase.find('option:selected').val().split('|')[1]?selectionBase.find('option:selected').val().split('|')[1]:-1)+']').attr('selected','selected'):'';return false}});selectionCompBkp=typeof (selectionCompBkp)=='undefined'?selectionComp.clone(true):selectionCompBkp;selectionBaseBkp=typeof (selectionBaseBkp)=='undefined'?selectionBase.clone(true):selectionBaseBkp;if(!selectionBaseModifyRunning)setTimeout(function(){selectionBaseModifyRunning=true;selectionBaseModify=selectionBaseBkp.clone(true);selectionBaseModify.find('option[value='+selectionBase.find('option:selected').val()+']').attr('selected','selected');selectionBaseModify.find('option').each(function(){if(!new RegExp('\\|'+selectionComp.find('option:selected').val()+'$').exec(jQuery(this).val())&&selectionComp.find('option:selected').val()!=-1&&jQuery(this).val()!=-1)jQuery(this).remove()});selectionBase.replaceWith(selectionBaseModify);selectionBaseModifyRunning=false;if(typeof (afterDependentSelectChangeCallback)=='function'&&!noCallback)afterDependentSelectChangeCallback(selectionBase,selectionComp)},jQuery.browser.msie?200:0)}}
function childrenCountChange(elm,date){childSel=parseInt(elm.find(':selected').val());childSel==-1?elm.nextAll('select').val(''):jQuery('.childsel'+childSel).nextAll('select').val('');jQuery('.childsel').hide();jQuery('.childsel:lt('+childSel+')').show();childSel!=-1?elm.nextAll('.posttext').show():elm.nextAll('.posttext').hide();if(date){jQuery('.childsel select').find('option:first').attr('selected','selected');jQuery('.childsel select').trigger('change');jQuery('.childsel select').change(function(){var birth=new Date(jQuery(this).parent().find('.childselyear').val(),jQuery(this).parent().find('.childselmonth').val()-1,jQuery(this).parent().find('.childselday').val()),age=new Date(new Date().getTime()-birth.getTime()).getFullYear()-1970;jQuery('.childselage:lt('+childSel+')').val(age);jQuery('.childselbirth:lt('+childSel+')').val(jQuery(this).parent().find('.childselyear').val()+'-'+jQuery(this).parent().find('.childselmonth').val()+'-'+jQuery(this).parent().find('.childselday').val());jQuery('.childselage:gt('+(childSel-1)+'), .childselbirth:gt('+(childSel-1)+')').val('')})}else jQuery('.childsel').find('option:first').attr('selected','selected')}
function changeDisplayState(elm,triggerPath,hideLabel,showLabel,stay,effect){toggleElm=eval('elm.parents(\'.tx-tuisearch-pi1\').find(\'form\').contents().filter(\'.elm:eq('+triggerPath.split('-').join(')\').contents().filter(\'.elm:eq(')+')\')');if(typeof (searchContToggleCallback)=='function')searchContToggleCallback(toggleElm);if(!parseInt(stay)||toggleElm.is(':hidden')){toggleElm[effect?effect:'toggle'](function(){jQuery('.trigger').each(function(){var elements=RegExp(/changeDisplayState\((.*),(.*),(.*),(.*),(.*),(.*)\)/).exec(jQuery(this).attr('onclick').toString());if((elements)&&(eval(elements[2])==triggerPath))jQuery(this).val(toggleElm.is(':hidden')?eval(elements[4]):eval(elements[3]))})});if(typeof (afterSearchContToggleCallback)=='function')afterSearchContToggleCallback(toggleElm)}}
function dpBuild(mainContainer){if(mainContainer.find('.datepicker').length&&!mainContainer.find('.dplayer').length){var selectOptions='';for(var area in vacations)selectOptions+='<option value="'+area+'">'+area+'</option>';mainContainer.find('.datepicker').parents('.tx-tuisearch-pi1').prepend('<div class="dplayer" style="display:none;"><div class="dplayerInner"><div class="dpclose">Fenster schliessen</div><iframe class="dplayeriframe" frameborder="0"></iframe><div class="dpfrom" id="dpfrom"></div><div class="dpto" id="dpto"></div><div class="schoolHolidays"><label style="width:75px; padding:5px 0 2px 5px;">Schulferien:</label><select class="dpvac"><option value="">Kanton w&auml;hlen</option>'+selectOptions+'</select><input type="button" class="dpsubmit" value="&Uuml;bernehmen" /></div></div></div>')};mainContainer.find('.datepicker').each(function(i){if(i%2){var dpTo=jQuery(this),dpToBtn=dpTo.nextAll('.datepickeropen:first');dpTo.addClass('dpToInput');jQuery([dpFrom,dpTo]).each(function(i){var dpParts=jQuery(this).attr('alt').split('|'),dpMax=dpParts[0]?dpParts[0].split('.'):[31,12,new Date().getFullYear()+1],dpMin=dpParts[1]?dpParts[1].split('.'):[new Date().getDate(),new Date().getMonth()+1,new Date().getFullYear()];jQuery(this).data('maxDate',new Date(dpMax[2],dpMax[1]-1,dpMax[0]));jQuery(this).data('minDate',new Date(dpMin[2],dpMin[1]-1,dpMin[0]));jQuery(this).bind("blur",function(){fixDate();jQuery(this).removeClass('datepicker');jQuery('.'+jQuery(this).attr('class'),'.tx-tuisearch-pi1').val(jQuery(this).val());jQuery(this).addClass('datepicker')})});dpFromBtn.data('dp',{from:dpFrom,to:dpTo});dpToBtn.data('dp',{from:dpFrom,to:dpTo});dpFromBtn.click(function(){dpShow(jQuery(this).data('dp').from,jQuery(this).data('dp').to)});dpToBtn.click(function(){dpShow(jQuery(this).data('dp').from,jQuery(this).data('dp').to)})}else{dpFrom=jQuery(this);dpFrom.addClass('dpFromInput');dpFromBtn=dpFrom.nextAll('.datepickeropen:first')}})}
function dpShow(dpFrom,dpTo){dpLayer=jQuery('.tx-tuisearch-pi1 .dplayer');dpLayer.find('.dpfrom').data('maxDate',dpFrom.data('maxDate'));dpLayer.find('.dpfrom').data('minDate',dpFrom.data('minDate'));dpLayer.find('.dpfrom').data('elm',dpFrom);dpLayer.find('.dpto').data('maxDate',dpTo.data('maxDate'));dpLayer.find('.dpto').data('minDate',dpTo.data('minDate'));dpLayer.find('.dpto').data('elm',dpTo);jQuery('.dpvac option[value='+dpSelectedArea+']').attr('selected','selected');dpLayer.find('.dpfrom').datepicker('destroy');dpLayer.find('.dpto').datepicker('destroy');dpLayer.find('.dpfrom').datepicker(dpGetConf(0));dpLayer.find('.dpto').datepicker(dpGetConf(1));if(dpFrom.val()){var dpDate=dpFrom.val().split('.');if(dpDate.length==3)dpLayer.find('.dpfrom').datepicker('setDate',new Date(dpDate[2],dpDate[1]-1,dpDate[0]))};if(dpTo.val()){var dpDate=dpTo.val().split('.');if(dpDate.length==3)dpLayer.find('.dpto').datepicker('setDate',new Date(dpDate[2],dpDate[1]-1,dpDate[0]))};dpLayer.find('.dpvac').change(function(){dpSelectedArea=jQuery('.dpvac').find('[selected]').attr('value').replace('ü','&uuml;');var dpOldFromMonthYear=jQuery('#dpfrom .monthyearcombo select option:selected').val(),dpOldToMonthYear=jQuery('#dpto .monthyearcombo select option:selected').val();dpInit();jQuery('#dpfrom .monthyearcombo select option[value='+dpOldFromMonthYear+']').attr('selected','selected');jQuery('#dpto .monthyearcombo select option[value='+dpOldToMonthYear+']').attr('selected','selected');dpChangeMonthYear('#dpfrom');dpChangeMonthYear('#dpto')});dpLayer.find('.dpclose, .dpsubmit').click(function(){dpLayer.hide()});dpLayer.find('.dpsubmit').click(function(){jQuery('.dpFromInput').val(jQuery.datepicker.formatDate('dd.mm.yy',dpLayer.find('.dpfrom').datepicker('getDate')));jQuery('.dpToInput').val(jQuery.datepicker.formatDate('dd.mm.yy',dpLayer.find('.dpto').datepicker('getDate')))});dpInit();dpLayer.css({left:dpFrom.offset().left,top:dpFrom.position().top});dpLayer.show();if(typeof (dpShowCallback)=='function')dpShowCallback(dpLayer);if(dpTo.parent(':hidden').length){dpLayer.find('.dpto').prepend('<div id="dptoOverlay"></div>');if(jQuery.browser.msie)dpLayer.find('.dpto select').css('visibility','hidden')};dpLayer.find('.dplayeriframe').css({width:dpLayer.outerWidth(),height:dpLayer.outerHeight()})}
function dpInit(){var dpFrom=jQuery('.dpfrom').datepicker('getDate');jQuery('.dpfrom').datepicker('change',dpGetConf(0));if(dpFrom)jQuery('.dpfrom').datepicker('setDate',dpFrom);dpBuildMonthYear(0,'#dpfrom','Hinreise');var dpTo=jQuery('.dpto').datepicker('getDate');jQuery('.dpto').datepicker('change',dpGetConf(1));if(dpTo)jQuery('.dpto').datepicker('setDate',dpTo);dpBuildMonthYear(1,'#dpto','R\xFCckreise')}
function dpGetConf(section){if(!section){return{beforeShowDay:singleDayCheck,onSelect:dpInit,minDate:jQuery('.dpfrom').data('minDate'),maxDate:jQuery('.dpfrom').data('maxDate'),changeMonth:true,changeYear:true}}else return{beforeShowDay:singleDayCheck,minDate:jQuery('.dpfrom').datepicker('getDate').addDays(+1),maxDate:jQuery('.dpto').data('maxDate'),changeMonth:true,changeYear:true}}
function singleDayCheck(dateElm){var defaultCheck=dpMarkVac(dateElm);if(typeof (singleDayCheckCallback)=='function')return singleDayCheckCallback(jQuery(this),dateElm,defaultCheck);return defaultCheck}
function dpBuildMonthYear(section,preSel,label){var maxDate=jQuery(section?'.dpto':'.dpfrom').data('maxDate'),minDate=dpGetConf(section)['minDate'],selYear=jQuery(preSel+' .ui-datepicker-new-year').length?jQuery(preSel+' .ui-datepicker-new-year option:selected').val():jQuery(preSel+' select.ui-datepicker-year option:selected').val(),selMonth=jQuery(preSel+' .ui-datepicker-new-month').length?jQuery(preSel+' .ui-datepicker-new-month option:selected').val():jQuery(preSel+' select.ui-datepicker-month option:selected').val(),monthYearCombo='<div class="monthyearcombo"><div class="monthYearComboLabel">'+label+'</div><div class="prevmonth">&laquo;</div><select onchange="dpChangeMonthYear(\''+preSel+'\')">';for(var year=minDate.getFullYear();year<=maxDate.getFullYear();year++){var monthsArr=new Array('Januar','Februar','M&auml;rz','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'),monthOffset=0;if(year==minDate.getFullYear()){monthOffset=minDate.getMonth();monthsArr=monthsArr.slice(monthOffset,12)};monthsArr=year==maxDate.getFullYear()?monthsArr.slice(0,monthsArr.length-(11-maxDate.getMonth())):monthsArr;for(var i=0;i<monthsArr.length;i++)monthYearCombo+='<option value="'+year+'_'+(i+monthOffset)+'"'+(selYear==year&&selMonth==(i+monthOffset)?' selected="selected"':'')+'>'+monthsArr[i]+' '+year+'</option>'};monthYearCombo+='</select><div class="nextmonth">&raquo;</div></div>';jQuery(preSel+' .monthyearcombo').remove();jQuery(preSel).prepend(monthYearCombo);dpCheckArrows(jQuery(preSel+' .monthyearcombo select'));jQuery(preSel+' .monthyearcombo .prevmonth').click(function(){jQuery(this).next('select').find('option:eq('+(jQuery(this).next('select').get(0).selectedIndex-1)+')').attr('selected','selected');jQuery(this).next('select').change();dpCheckArrows(jQuery(this).next('select'))});jQuery(preSel+' .monthyearcombo .nextmonth').click(function(){jQuery(this).prev('select').find('option:eq('+(jQuery(this).prev('select').get(0).selectedIndex+1)+')').attr('selected','selected');jQuery(this).prev('select').change();dpCheckArrows(jQuery(this).prev('select'))})}
function dpChangeMonthYear(preSel){var monthYear=jQuery(preSel+' .monthyearcombo option:selected').val().split('_'),hiddenYearSelect=jQuery(preSel+' .ui-datepicker-new-year').length?jQuery(preSel+' .ui-datepicker-new-year'):jQuery(preSel+' select.ui-datepicker-year');jQuery('option[value='+monthYear[0]+']',hiddenYearSelect).attr('selected','selected');jQuery.datepicker._selectMonthYear(preSel,document.getElementById(preSel.split('#')[1]).getElementsByTagName('select')[2],'Y');var hiddenMonthSelect=jQuery(preSel+' .ui-datepicker-new-month').length?jQuery(preSel+' .ui-datepicker-new-month'):jQuery(preSel+' select.ui-datepicker-month');jQuery('option[value='+monthYear[1]+']',hiddenMonthSelect).attr('selected','selected');jQuery.datepicker._selectMonthYear(preSel,document.getElementById(preSel.split('#')[1]).getElementsByTagName('select')[1],'M');dpCheckArrows(jQuery(preSel+' .monthyearcombo select'))}
function dpCheckArrows(elm){elm.prev('.prevmonth').css('visibility','visible');elm.next('.nextmonth').css('visibility','visible');if(!elm.get(0).selectedIndex)elm.prev('.prevmonth').css('visibility','hidden');if(elm.get(0).selectedIndex==elm.find('option').length-1)elm.next('.nextmonth').css('visibility','hidden')}
function dpMarkVac(dateElm){if(dpSelectedArea)if(vacations[dpSelectedArea].length)return showDays(vacations[dpSelectedArea].concat(holidays.global),dateElm,'ui-datepicker-vacation');if(holidays)return showDays(holidays.global,dateElm,'ui-datepicker-vacation');return[true,'']}
function showDays(markedDays,dateElm,dateClass){for(i=0;i<markedDays.length-1;i++){var dpFromParts=markedDays[i][0].split('.'),dpFrom=new Date(dpFromParts[2],dpFromParts[1]-1,dpFromParts[0]).getTime();if(markedDays[i].length==2){var dpToParts=markedDays[i][1].split('.'),dpTo=new Date(dpToParts[2],dpToParts[1]-1,dpToParts[0]).getTime();if(dateElm.getTime()>=dpFrom&&dateElm.getTime()<=dpTo)return[true,dateClass]};if(dateElm.getTime()==dpFrom)return[true,dateClass]};return[true,'']}
function setBookingCode(){var bookingsequence=get('bookingsequence');if(bookingsequence){tmp=jQuery('#input_crs').parent();jQuery('#input_crs').val(bookingsequence);jQuery('#input_crs').removeAttr('onclick');jQuery('#input_crs').attr({id:'input_crs_set',readonly:'readonly',name:'input_crs_full'});tmp.append('<input name="input_crs" id="input_crs" type="hidden" value="'+bookingsequence.substr(0,8)+'" />');tmp.append('<input name="sleistung" id="sleistung" type="hidden" value=";'+bookingsequence.substr(8,2)+';'+bookingsequence.substr(10,3)+'" />')}}
function addSelectOption(elementSelect,selectText,selectValue){var optNew=document.createElement('option');optNew.text=selectText;optNew.value=selectValue;try{elementSelect.add(optNew,null)}catch(exeption){elementSelect.add(optNew)}}
function onRegionChange(){jQuery('#detail','.tx-tuisearch-pi1').val(parseInt(jQuery('#udfRegion option:selected','.tx-tuisearch-pi1').val())>=0?'hotel':'zielgebiet')}
function onSelectCountryChange(){jQuery('#udfRegion','.tx-tuisearch-pi1').children().remove();var selected=jQuery("#udf option:selected");regionSelect=document.getElementById('udfRegion');addSelectOption(regionSelect,'Alle Regionen','-1');if(selected.val()!='-1')jQuery.getScript(udfBaseUrl+'regions_'+((selected)&&(selected.val()!='-1')?selected.val():'0')+'.js',function(){eval('var regions=ttUdfRegions_'+ttPort+'_'+((selected.val()!='-1')?selected.val():'0'));var regionArray=new Array(regions.length);jQuery.each(regions,function(index,value){regionArray[index]=value.titleJS+'$'+selected.val()+'|'+value.topRegion});regionArray.sort();jQuery.each(regionArray,function(index,value){addSelectOption(regionSelect,value.split('$')[0],value.split('$')[1])});var udfRegion=null,locationSearch=decodeURIComponent(window.location.search);if(udfRegion=locationSearch.match(/udfRegion=(?:-1|(\d+\|\d+))/))udfRegion=udfRegion[0].split('=')[1];udfRegion=udfRegion?udfRegion:jQuery('.tx-tuisearch-pi1 input[name=udfRegionPreset]').val();udfRegionOption=jQuery('#udfRegion option[value='+udfRegion+']').attr('selected','selected')})};var udfBaseUrl=''
function stringComparison(a,b){a=a.split('|')[0];a=a.toLowerCase();a=a.replace(/ä/g,"a");a=a.replace(/ö/g,"o");a=a.replace(/ü/g,"u");a=a.replace(/ß/g,"s");b=b.split('|')[0];b=b.toLowerCase();b=b.replace(/ä/g,"a");b=b.replace(/ö/g,"o");b=b.replace(/ü/g,"u");b=b.replace(/ß/g,"s");return(a==b)?0:(a>b)?1:-1};ttPort=654
function udfCountries(mainContainer){mainContainer.find('#udf').each(function(){jQuery(this).find('option').remove();jQuery('#udfRegion').find('option').remove();ttPort=(mainContainer.find('.udfpackage').length>0)?654:653;udfBaseUrl='http://www.tui.com/fileadmin/common/templates/js/udf/'+ttPort+'/';jQuery.getScript(udfBaseUrl+'destinations.js',function(){jQuery(this).children().remove();addSelect=document.getElementById('udf');addSelectOption(addSelect,'Alle Reiseziele','-1');addSelectOption(addSelect,'Ihre Lieblingsreiseziele','0');eval('var ttUdfDestinations=ttUdfDestinations_'+ttPort);var countryArray=new Array(ttUdfDestinations.length);jQuery.each(ttUdfDestinations,function(index,value){countryArray[index]=value.titleJS+'|'+value.id});countryArray.sort(stringComparison);jQuery.each(countryArray,function(index,value){var country=countryArray[index].split('|')[0],countryID=countryArray[index].split('|')[1];if(countryID!=0)addSelectOption(addSelect,country,countryID)});jQuery('#udf').change(onSelectCountryChange);addSelectOption(addSelect=document.getElementById('udfRegion'),'Alle Regionen','-1');jQuery('#udfRegion','.tx-tuisearch-pi1').change(onRegionChange);udfPreset(mainContainer)})})}
function udfPreset(mainContainer){var udfVvalue=null;if(udfVvalue=window.location.search.match(/udf=\d+/))udfVvalue=udfVvalue[0].split('=')[1];udfOption=mainContainer.find('#udf option[value='+(udfVvalue?udfVvalue:mainContainer.find('input[name=udfPreset]').val())+']');if(udfOption.length)udfOption.attr('selected','selected').parent('select').change()}
function triggerExtendedSearch(element,targetUrl){jQuery(element).parents('form').each(function(index){var thisForm=jQuery(this),formValues=[];jQuery(thisForm).find('select, input[type=text], input[type=hidden], input[type=radio]:checked, input[type=checkbox]:checked, hidden').each(function(){formValues.push(jQuery(this).attr('name')+'='+jQuery(this).val())});formValues.push('no_cache=1');if(targetUrl.match(/pauschalreisen/)){if(window.location.href.match(/last-minute/))targetUrl=targetUrl.replace('pauschalreisen','last-minute');if(window.location.href.match(/staedtereisen/))targetUrl=targetUrl.replace('pauschalreisen','staedtereisen');if(window.location.href.match(/luxusreisen/))targetUrl=targetUrl.replace('pauschalreisen','luxusreisen');if(window.location.href.match(/familienreisen/))targetUrl=targetUrl.replace('pauschalreisen','familienreisen')}else if(targetUrl.match(/sport-wellness-reisen/))if(window.location.href.match(/unsere-marken\/tui/)){targetUrl=targetUrl.replace('/sport-wellness-reisen/erweiterte-suche/','/unsere-marken/tui/erweiterte-suche/')}else if(window.location.href.match(/unsere-marken\/1-2-fly/)){targetUrl=targetUrl.replace('/sport-wellness-reisen/erweiterte-suche/','/unsere-marken/1-2-fly/erweiterte-suche/')}else if(window.location.href.match(/unsere-marken\/club-magic-life/)){targetUrl=targetUrl.replace('/sport-wellness-reisen/erweiterte-suche/','/unsere-marken/club-magic-life/erweiterte-suche/')}else if(window.location.href.match(/unsere-marken\/robinson-clubs/)){targetUrl=targetUrl.replace('/sport-wellness-reisen/erweiterte-suche/','/unsere-marken/robinson-clubs/erweiterte-suche/')}else if(window.location.href.match(/unsere-marken\/fox-tours/)){targetUrl=targetUrl.replace('/sport-wellness-reisen/erweiterte-suche/','/unsere-marken/fox-tours/erweiterte-suche/')}else if(window.location.href.match(/sport-wellness-reisen\/wintersport-reisen/)){targetUrl=targetUrl.replace('/sport-wellness-reisen/erweiterte-suche/','/sport-wellness-reisen/wintersport-reisen/erweiterte-suche/')}else if(window.location.href.match(/sport-wellness-reisen\/golf-reisen/)){targetUrl=targetUrl.replace('/sport-wellness-reisen/erweiterte-suche/','/sport-wellness-reisen/golf-reisen/erweiterte-suche/')}else if(window.location.href.match(/sport-wellness-reisen\/wellness-reisen/)){targetUrl=targetUrl.replace('/sport-wellness-reisen/erweiterte-suche/','/sport-wellness-reisen/wellness-reisen/erweiterte-suche/')}else if(window.location.href.match(/familienreisen/)){targetUrl=targetUrl.replace('/sport-wellness-reisen/','/familienreisen/')}else if(window.location.href.match(/fernreisen/)){targetUrl=targetUrl.replace('/sport-wellness-reisen/','/fernreisen/')}else if(window.location.href.match(/pauschalreisen/)){targetUrl=targetUrl.replace('/sport-wellness-reisen/','/pauschalreisen/')}else if(window.location.href.match(/staedtereisen/)){targetUrl=targetUrl.replace('/sport-wellness-reisen/','/staedtereisen/')}else if(window.location.href.match(/luxusreisen/))targetUrl=targetUrl.replace('/sport-wellness-reisen/','/luxusreisen/');var formActionParts=targetUrl.split('?'),extendedSearchUrl=formActionParts[0]+((formActionParts[0].substr(-1)=='/')?'':'/')+'?'+(formActionParts[1]?formActionParts[1]:'')+formValues.join('&');window.location.href=extendedSearchUrl})};
