var unitRooms={setOffset:function(){},init:function(){this.checkAndSetDetailLink();if($('.unitrooms .offerbox a.moreoffers').length&&$('.unitrooms .offerbox div.element').length<2){$('.unitrooms .offerbox a.moreoffers').hide()}},postToPage:function(sFormID,sUrl,oPost){var oForm=$('#'+sFormID);oForm.get(0).setAttribute('action',sUrl);if(typeof(oPost)=='object'){$.each(oPost,function(key,value){$('#'+sFormID+' [name='+key+']').val(value)})}oForm[0].submit()},openClose:function(oThis,sId){if($('#'+sId).hasClass('closed')){$('#'+sId).removeClass('closed');$(oThis).removeClass('btnclose');$(oThis).addClass('btnopen');this.drawOpneCloseIcon(oThis.down('div.icon'),'open')}else{$('#'+sId).addClass('closed');$(oThis).removeClass('btnopen');$(oThis).addClass('btnclose');this.drawOpneCloseIcon(oThis.down('div.icon'),'close')}},scrollTo:function(sElement,sOpenId){var oElement=$('#'+sElement);if(oElement.length>0){if(sOpenId!=undefined){if($('#'+sOpenId).hasClass('closed')){this.openClose(oElement,sOpenId)}}var lOffset=this.setOffset(oElement);if(!$.isNumeric(lOffset)){lOffset=0}$('html, body').animate({scrollTop:oElement.offset().top+lOffset})}},pricebox:{init:function(options){this.options=$.extend({sPageKey:'DetailPrice',sUnitKey:'UnitRooms',sSharedKey:'',sAjaxUrl:'',lHotelID:'',lRoomID:''},options||{});this.oTable=$('#unitroomspricebox').find('div.table');RespHelper.one('resize:change',function(){unitRooms.pricebox.resetTypeFilter()},{lMaxWidth:770});RespHelper.one('resize:change',function(){unitRooms.pricebox.resetFilterResponsive();if($('#UnitRoomsPriceForm').find('div.selecttype select').length>0){unitRooms.pricebox.changeSelect($('#UnitRoomsPriceForm').find('div.selecttype select'))}},{lMinWidth:771})},changeSelect:function(oElement){this.options[$(oElement).attr('name')]=$(oElement).val();this.loadAjax()},loadAjax:function(oTable){if(oTable==undefined){oTable=this.oTable}oTable.addClass('loading');if(oTable.closest('.pricebox').find('input[name="sSeasonKey"]').length){this.options['sSeasonKey']=oTable.closest('.pricebox').find('input[name="sSeasonKey"]').val()}var ua=window.navigator.userAgent;var msie=ua.indexOf('MSIE ');var sAjaxCont=oTable;$.ajax(msie>0?encodeURI(this.options.sAjaxUrl):this.options.sAjaxUrl,{data:this.options,type:'POST',success:function(data){$(sAjaxCont).html(data);$(sAjaxCont).removeClass('loading');if(RespHelper.isValidRange(0,770)){unitRooms.pricebox.filterResponsive()}}})},resetTypeFilter:function(){var oElement=$('div.unitrooms.detail div.pricebox div.selecttype');if(!oElement.length){oElement=$('#UnitRoomsPriceForm').find('div.selecttype')}if(oElement.length>0){$(oElement).each($.proxy(function(i,o){if($(o).find('select').val()!='null'){this.options['sTypeSelect']='null';unitRooms.pricebox.loadAjax($(o).closest('div.pricebox').find('div.table'))}else{unitRooms.pricebox.filterResponsive()}},this))}else{unitRooms.pricebox.filterResponsive()}},filterResponsive:function(oElement){if($(oElement).length>0){var oElement=$(oElement).parents('div.selectresponsive')}else{var oElement=$('div.unitrooms.detail div.pricebox div.selectresponsive');if(!oElement.length){oElement=$('#UnitRoomsPriceForm').find('div.selectresponsive')}}if(oElement.length>0){$(oElement).each(function(){var sClass='cell'+$(this).find('select').val();$(this).parents('div.pricebox').find('.cell:not(.cell1)').each(function(i,o){if($(o).hasClass(sClass)){$(o).show();$(o).css('float','left')}else{$(o).hide();$(o).css('float','right')}})})}},resetFilterResponsive:function(){var oElement=$('div.unitrooms.detail div.pricebox div.selectresponsive');if(!oElement.length){oElement=$('#UnitRoomsPriceForm').find('div.selectresponsive')}if(oElement.length>0){$(oElement).each(function(){$('.cell:not(.cell1)',oElement.closest('div.pricebox')).each(function(lNumber,o){$(o).show()})})}}},checkAndSetDetailLink:function(){if($('.unitrooms .offerbox[data-unit-elementlinked=true]').length){$('.unitrooms .offerbox [data-unit-detaillink]:not([data-unit-detaillink=""])').each(function(lIndex,oElement){oElement=$(oElement);oElement.addClass('hover');oElement.click(function(){window.location.href=oElement.attr('data-unit-detaillink')})})}},showHideOffers:function(sTextShow,sTextHide){var oMoreOffersButton=$('.unitrooms .offerbox a.moreoffers');$('.unitrooms .offerbox div.element').each(function(lIndex,oElement){if(lIndex>1){$(oElement).slideToggle("slow",function(){if($(oElement).is(":visible")){oMoreOffersButton.html(sTextHide)}else{oMoreOffersButton.html(sTextShow)}})}})}};onScrMngrLoaded(function(){$(document).ready(function(){unitRooms.init()})});var unitOffers={oLastOpenClose:{},setOffset:function(){},lIconsVersion:1,init:function(){this.checkAndSetDetailLink()},postToPage:function(sUrl,oPost){var oForm=$('#unitoffersdataform');oForm.attr('action',sUrl);if(typeof(oPost)=='object'){$.each(oPost,function(key,value){$(oForm).find('input[name="'+key+'"]').val(value)})}oForm.first().submit()},oCalender:{calender:null,dtLastFrom:false,dtLastTo:false,bInit:false,bLoadAjax:false,init:function(oOptions){if(this.bInit){return}this.bInit=true},openClose:function(oElement,oOptions){oElement=$(oElement);unitOffers.openClose(oElement,'unitofferbookingbox');if(oElement.hasClass('btnclose')){this.RespHelperDesktop.stop();this.RespHelperMobile.stop()}else{unitOffers.oCalender.open('',oOptions)}},open:function(oElement,oOptions){if(oElement!=''&&$(oElement).length){unitOffers.open(oElement,'unitofferbookingbox');oOptions=$.extend({bScroll:true,},oOptions||{});if(oOptions.bScroll){unitOffers.scrollTo('unitofferbookingbox')}}this.init();this.RespHelperDesktop=RespHelper.one('resize:change',function(){this.calender=new Arrivaldeparturecalendar(this.getCalenderConfig({'lVisibleMonths':2}));this.calender.init()}.bind(this),{lMinWidth:650});this.RespHelperMobile=RespHelper.one('resize:change',function(){this.calender=new Arrivaldeparturecalendar(this.getCalenderConfig({'lVisibleMonths':1}));this.calender.init()}.bind(this),{lMaxWidth:649});var lWindowWidth=window.innerWidth||$(window).width();oOptions=$.extend({lVisibleMonths:2},oOptions||{});if(lWindowWidth<=649){oOptions.lVisibleMonths=1}this.calender=new Arrivaldeparturecalendar(this.getCalenderConfig(oOptions));this.calender.init();if(this.oOptions.bFixedPeriod){this.loadRoomList(this.oOptions.dtFrom,this.oOptions.dtTo,oOptions)}else if(this.dtLastFrom!=false){this.calender.resetdays()}},loadRoomList:function(arrivalday,departureday,oOptions){var oThat=this;oOptions=$.extend($.extend(true,{},this.oOptions),oOptions||{});$('#unitoffersroomlist').html('').hide();this.bLoadAjax=true;var ua=window.navigator.userAgent;var msie=ua.indexOf("MSIE ");$.ajax(msie>0?encodeURI(oOptions.sAjaxUrl):oOptions.sAjaxUrl,{data:{lHotelID:oOptions.lHotelID,lOfferID:oOptions.lOfferID,dtFrom:arrivalday,dtTo:departureday,sSharedKey:oOptions.sSharedKey,sPageKey:'Rooms',sUnitKey:'UnitOffers'},type:"POST",success:function(data){$("#unitoffersroomlist").html(data);oThat.dtLastFrom=arrivalday;oThat.dtLastTo=departureday;$('#unitoffersroomlist').show();$('#unitofferscalenderloading').hide();if(!oOptions.bFixedPeriod){unitOffers.scrollTo('unitoffersroomlist')}oLightbox.reloadImages();oThat.bLoadAjax=false}})},setCalenderOptions:function(oOptions){this.oOptions=$.extend({lVisibleMonths:2},oOptions||{})},getCalenderConfig:function(oOptions){var oThat=this;oOptions=$.extend($.extend(true,{},this.oOptions),oOptions||{});this.bLoadAjax=false;return{'hotelids':oOptions.lHotelID,'portalid':oOptions.lPortalID,'calendardiv':'calendercontent','monthbgclass':'bgbar','spanClass':'text','departurecalendardiv':false,'bResetDayInSpan':false,'arrivalday':function(){if(oOptions.bFixedPeriod&&oOptions.dtFrom!=''){return oOptions.dtFrom}return oThat.dtLastFrom}(),'departureday':function(){if(oOptions.bFixedPeriod&&oOptions.dtTo!=''){return oOptions.dtTo}return oThat.dtLastTo}(),'startmonat':function(){return document.getElementById("sel_month").value},'onremovearrivalday':function(){oThat.dtLastFrom=false;$('#unitoffersroomlist').html('').hide()},'onremovedepartureday':function(){oThat.dtLastTo=false;$('#unitoffersroomlist').html('').hide()},'onresetdays':function(){oThat.dtLastFrom=false;oThat.dtLastTo=false;$('#unitoffersroomlist').html('').hide()},'ondeparturedayselected':function(arrivalday,departureday){oThat.loadRoomList(arrivalday,departureday,oOptions)},'wievielemonate':oOptions.lVisibleMonths,'onbeforeload':function(){$('#unitofferscalenderloading').show()},'onafterload':function(){oThat.drawCalenderIcons();if(!oThat.bLoadAjax){$('#unitofferscalenderloading').hide()}},'serviceurl':oOptions.sServiceUrl,'offerids':oOptions.lOfferID,'autosubmit':false}},drawCalenderIcons:function(){$('#calendercontent table tr td a.resetdays').each(function(i,oElement){$(this).html('');$(this).createSvg('icon-cross-round-inv')})},back:function(){this.calender.monthback()},next:function(){this.calender.monthforward()},reset:function(bScrollTo){this.calender.resetdays();if(bScrollTo){unitOffers.scrollTo('unitofferbookinghead')}}},openClose:function(oThis,sId,sKey){if(this.oLastOpenClose[sKey]!=undefined&&sKey!=undefined){if(this.oLastOpenClose[sKey].element!=$('#'+sId)){this.oLastOpenClose[sKey].element.addClass('closed');this.oLastOpenClose[sKey].btn.removeClass('btnopen');this.oLastOpenClose[sKey].btn.addClass('btnclose')}}if($('#'+sId).hasClass('closed')){unitOffers.open(oThis,sId,sKey);var sSvgIcon=oThis.children('svg.icon');if(sSvgIcon.length>0){var sSvgIconUse=sSvgIcon.find('use');sSvgIcon.addClass("icon-up");sSvgIcon.removeClass("icon-down");sSvgIconUse.attr("xlink:href","#icon-up")}}else{$('#'+sId).addClass('closed');$(oThis).removeClass('btnopen');$(oThis).addClass('btnclose');this.oLastOpenClose[sKey]=undefined;var sSvgIcon=oThis.children('svg.icon');if(sSvgIcon.length>0){var sSvgIconUse=sSvgIcon.find('use');sSvgIcon.addClass("icon-down");sSvgIcon.removeClass("icon-up");sSvgIconUse.attr("xlink:href","#icon-down")}}},open:function(oThis,sId,sKey){$('#'+sId).removeClass('closed');$(oThis).removeClass('btnclose');$(oThis).addClass('btnopen');this.oLastOpenClose[sKey]={element:$('#'+sId),btn:$(oThis)};$(oThis).children('span.icon').addClass("icon-up");$(oThis).children('span.icon').removeClass("icon-down")},scrollTo:function(sElement){var oElement=$('#'+sElement);if(oElement!=undefined){var lOffset=this.setOffset(oElement);if(!$.isNumeric(lOffset)){lOffset=0}$('html, body').animate({scrollTop:oElement.offset().top+lOffset})}},scrollToOpenClose:function(sElement,sOpenClose){var oElement=$(sElement);if(oElement.hasClass('btnclose')){this.oCalender.openClose(oElement)}this.scrollTo(sElement)},addCssClass:function(aElements,sCssClass){if(!aElements instanceof Array){aElements=Array(aElements)}$.each(aElements,function(i,oElement){$(oElement).addClass(sCssClass)})},removeCssClass:function(aElements,sCssClass){if(!aElements instanceof Array){aElements=Array(aElements)}$.each(aElements,function(i,oElement){$(oElement).removeClass(sCssClass)})},setSelectedHotels:function(){var sHotelIDs="";$('div.hotels div.hotel form div.checkboxfield input').each(function(i,e){if($(e).prop("checked")){if(sHotelIDs!=''){sHotelIDs=sHotelIDs+','};sHotelIDs=sHotelIDs+$(e).val()}});$('#sHotelIDs').val(sHotelIDs)},setHoverClass:function(oElement){if(oElement==undefined){return}var oElementTextbox=$(oElement).children("div.textbox");if(oElementTextbox==undefined){return}$(oElementTextbox).addClass('hover')},removeHoverClass:function(oElement){if(oElement==undefined){return}var oElementTextbox=$(oElement).children("div.textbox");if(oElementTextbox==undefined){return}$(oElementTextbox).removeClass('hover')},checkAndSetDetailLink:function(){if($('.unitoffers.list[data-unit-elementlinked=true]').length){$('.unitoffers.list [data-unit-detaillink]:not([data-unit-detaillink=""])').each(function(lIndex,oElement){oElement=$(oElement);oElement.addClass('hover');oElement.on('click',function(){window.location.href=oElement.attr('data-unit-detaillink')})})}}};onScrMngrLoaded(function(){$(document).ready(function(){unitOffers.init()})});var oUnitCookies={lCookieExpires:365,init:function(){if(GetCookie('bCookieBarClosed')!='true'){if($('section.unitcookieonpage').attr('data-cookieexpires')>0){this.lCookieExpires=$('section.unitcookieonpage').attr('data-cookieexpires').toString()}$(window).on('click',$.proxy(function(oEvent){if(!$.contains($('#unitcookieonpageBar')[0],oEvent.target)){this.closeBarAndSetCookie()}},this))}},closeBarAndSetCookie:function(){$('#unitcookieonpageBar').hide();SetCookie('bCookieBarClosed','true',this.lCookieExpires)}};onScrMngrLoaded(function(){$(document).ready(function(){oUnitCookies.init()})});function renderDefaultIcons(sParent){sParent=sParent==undefined?'':sParent+' ';$(sParent+"*.icon1 ul li, "+sParent+"ul.icon1 li").each(function(){var oElement=$('> svg.icon-next bgicon',this);if(oElement.length){$(oElement).html('')}else{$(this).html('<svg class="icon icon-next bgicon"><use xlink:href="#icon-next"></use></svg>'+$(this).html());oElement=$('> svg.icon-next bgicon',this)}})}function positionBreadcrumb(){var oBreadcrumb=$('[itemprop="breadcrumb"]');if(!oBreadcrumb.length)return;var oContainer=$('[data-breadcrumb="true"]').first().find('[data-breadcrumb-container="true"]');if(!oContainer.length)return;else oBreadcrumb.show();oContainer.html(oBreadcrumb[0].outerHTML);oBreadcrumb.remove()}function initObjectFit(sType,oContext){oContext=oContext||document;var oObjects=$('[data-object-fit="'+sType+'"]',$(oContext));oObjects.each(function(i,o){var oPicture,oVideo,oImg;var oElement=$(o);var bUseCssObjectFit=oElement.attr('data-object-fit-css');if(bUseCssObjectFit=='true'){bUseCssObjectFit=true}else if(bUseCssObjectFit=='false'){bUseCssObjectFit=false}else{bUseCssObjectFit=undefined}if(oElement.is('img'))oElement=oElement.parent();if(oElement.data('bInitObjectFit')==true){oElement.objectFit(sType,bUseCssObjectFit)}else{oElement.data('bInitObjectFit',true);if(oElement.is('picture')||oElement.find('picture').length||oElement.is('video')||oElement.find('video').length){if(oElement.is('picture')){oPicture=oElement}else if(oElement.is('video')){oVideo=oElement}else{oPicture=oElement.find('picture');oVideo=oElement.find('video')}oPicture.each(function(){oImg=$(this).find('img');if(oImg.length){$('<img />').on('load',function(){oElement.objectFit(sType,bUseCssObjectFit)}).attr('src',oImg.attr('src'))}else{$(this).on('image:load',function(){$(this).closest('[data-object-fit="'+sType+'"]').objectFit(sType,bUseCssObjectFit)})}});oVideo.each(function(){if($(this).attr('bVideoConverted')=='true'){oElement.objectFit(sType,bUseCssObjectFit)}else{$(this).one('video:converted',$.proxy(function(){$(this).closest('[data-object-fit="'+sType+'"]').objectFit(sType,bUseCssObjectFit)},this))}})}else if(oElement.find('img').length){oElement.find('img').each(function(){$('<img />').on('load',function(){oElement.objectFit(sType,bUseCssObjectFit)}).attr('src',$(this).find('img').attr('src'))})}}})}function initAdaptHeight(oContext){oContext=oContext||document;$('[data-adapt-height="true"]',$(oContext)).each(function(i,o){var oElement=$(this);if(oElement.data('bInitAdaptHeight')!==true){oElement.data('bInitAdaptHeight',true);var lMinWidth=parseInt(oElement.attr('data-adapt-height-min-width'),10)||0;var lMinHeight=parseInt(oElement.attr('data-adapt-height-min-height'),10)||0;RespHelper.on('resize:change',$.proxy(function(){var oElem=$(this);var sSelector=oElement.attr('data-adapt-height-selector');var lHeight=$(window).height();var lLastHeight=oElem.data('lLastAdaptedHeight')||-1;var lMultiplier=parseInt(oElement.attr('data-adapt-height-multiplier'),10)||1;lHeight=lHeight*lMultiplier;if(sSelector!=undefined&&sSelector!=''){$(sSelector).each(function(){lHeight-=$(this).outerHeight()})}if(lHeight>$(window).width()&&lMinHeight>0){lHeight=lMinHeight}if(lLastHeight==lHeight&&oElement.hasClass('adapted-height'))return;oElem.data('lLastAdaptedHeight',lHeight);oElem.css('height',lHeight);oElem.addClass('adapted-height');initObjectFit('cover',oElem.parent())},this),{lMinWidth:lMinWidth+1,lMinHeight:lMinHeight+1,sOperator:'and'});if(lMinWidth>0||lMinHeight>0){RespHelper.on('resize:change',$.proxy(function(){var oElem=$(this);if(!oElem.hasClass('adapted-height'))return;oElem.css('height','');oElem.removeClass('adapted-height');initObjectFit('cover',oElem.parent())},this),{lMaxWidth:lMinWidth,lMaxHeight:lMinHeight})}}});RespHelper.fire('resize:change')}function detectCSSFeature(sFeatureName){var bFeature=false;var aDomPrefixes='Webkit Moz ms O'.split(' ');var oBody=document.body;var sFeatureNameCapital;sFeatureName=sFeatureName.toLowerCase();if(oBody.style[sFeatureName]!==undefined){bFeature=true}if(bFeature===false){sFeatureNameCapital=sFeatureName.charAt(0).toUpperCase()+sFeatureName.substr(1);for(var i=0;i<aDomPrefixes.length;i++){if(oBody.style[aDomPrefixes[i]+sFeatureNameCapital]!==undefined){bFeature=true;break}}}return bFeature}function setColorLuminance(sColor,fLum){if(sColor.substr(0,3)=='rgb'){eval('sColor = rgb2hex'+sColor.substr(3))}sColor=String(sColor).replace(/[^0-9a-f]/gi,'');if(sColor.length<6){sColor=sColor[0]+sColor[0]+sColor[1]+sColor[1]+sColor[2]+sColor[2]}fLum=fLum||0;var sRgb="#",c,i;for(i=0;i<3;i++){c=parseInt(sColor.substr(i*2,2),16);c=Math.round(Math.min(Math.max(0,c+(c*fLum)),255)).toString(16);sRgb+=("00"+c).substr(c.length)}return sRgb}function rgb2hex(r,g,b){return'#'+r.toString(16)+g.toString(16)+b.toString(16)}function initLinkedElements(){$('[data-elementlinked="True"]').each(function(){$(this).click(function(){var sLinkTarget=$(this).data('elementlinktarget');if(sLinkTarget==""){sLinkTarget="_self"}window.open($(this).data('elementlink'),sLinkTarget)})})}onScrMngrLoaded(function(){$(function(){initLinkedElements();positionBreadcrumb();initAdaptHeight();initObjectFit('cover');var oBreadcrumbContainer=$('div.breadcrumbmodulecontainer').first();if(oBreadcrumbContainer.length!=0){$('#BreadcrumbT1').show().appendTo(oBreadcrumbContainer);oBreadcrumbContainer.show()}var resizeTimer;$(window).resize(function(){clearTimeout(resizeTimer);resizeTimer=setTimeout(function(){$('[data-object-fit="cover"]').objectFit('cover')},200)});renderDefaultIcons();var aFeatures=['transition','transform'];var sPrefix;for(var i=0;i<aFeatures.length;i++){sPrefix='no';if(detectCSSFeature(aFeatures[i]))sPrefix='with';$(document.body).addClass(sPrefix+aFeatures[i])}})});onScrMngrLoaded(function(){$(function(){mobileTextSlide();var lLastWinSize=$(window).width();$(window).resize(function(){if($(window).width()>800&&lLastWinSize<=800||$(window).width()<=800&&lLastWinSize>800){mobileTextSlide()}lLastWinSize=$(window).width()})})});function mobileTextSlide(){$('[data-introtoggeling="true"]').each(function(){var oIntro=$(this).find('div.introduction');if(oIntro.length>0){oIntro.css({'height':'auto'});$('#introtoggle').hide();var lLineHeigt=parseInt(oIntro.css('line-height'),10);var lOriginHeight=oIntro.height();var lCountLines=lOriginHeight/lLineHeigt;oIntro.attr('data-originheight',lOriginHeight);if($(window).width()<=800){if(lCountLines>3){oIntro.height(2*lLineHeigt);$('#introtoggle').show()}}}})}function slideIntroText(oElement){oElement.prev().height(oElement.prev().data('originheight'));oElement.fadeOut(800)}var lMenuT1TimeOut;function toggleMenuT1(){$('body').toggleClass('menuopen')}function toggleMenuT1Item(oElement){if(window.matchMedia('(max-width: 1280px)').matches){if(!oElement.hasClass('open')){oElement.siblings().each(function(){if($(this).hasClass('open')){$(this).removeClass('open');$(this).find('div.submenucontainer').slideToggle(500)}});oElement.addClass('open');oElement.find('div.submenucontainer').slideToggle(500)}else{oElement.removeClass('open');oElement.find('div.submenucontainer').slideToggle(500)}}else{if(!oElement.hasClass('open')){oElement.siblings().each(function(){if($(this).hasClass('open')){$(this).removeClass('open');$(this).find('div.submenucontainer').slideToggle(500)}});oElement.addClass('open');oElement.find('div.submenucontainer').slideToggle(500)}}}function showMenuT1Item(oElement){if(window.matchMedia('(min-width: 1281px)').matches){lMenuT1TimeOut=setTimeout(function(){toggleMenuT1Item(oElement)},250)}}function clearMenuT1Timeout(){clearTimeout(lMenuT1TimeOut);lMenuT1TimeOut=undefined}onScrMngrLoaded(function(){$(function(){$('<div class="mobilemenucontainer bgmenu3" data-mobilemenucontainer="this"></div>').insertAfter($('body div.pagecontent > header.pageheader'));$('[data-mobilecontainerbuttons="this"]').clone().appendTo('[data-mobilemenucontainer="this"]')})});