vendor: 6,761 bytes, lines 1-6
1/*! jQuery UI - v1.12.1 - 2017-02-07 2* http://jqueryui.com 3* Includes: keycode.js, widgets/datepicker.js 4* Copyright jQuery Foundation and other contributors; Licensed MIT */ 5 6(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)})(function(t){function e(t){for(var e,i;t.length&&t[0]!==document;){if(e=t.css("position"),("absolute"===e||"relative"===e||"fixed"===e)&&(i=parseInt(t.css("zIndex"),10),!isNaN(i)&&0!==i))return i;t=t.parent()}return 0}function i(){this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},t.extend(this._defaults,this.regional[""]),this.regional.en=t.extend(!0,{},this.regional[""]),this.regional["en-US"]=t.extend(!0,{},this.regional.en),this.dpDiv=s(t("<div id='"+this._mainDivId+"' class='ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>"))}function s(e){var i="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return e.on("mouseout",i,function(){t(this).removeClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&t(this).removeClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&t(this).removeClass("ui-datepicker-next-hover")}).on("mouseover",i,n)}function n(){t.datepicker._isDisabledDatepicker(a.inline?a.dpDiv.parent()[0]:a.input[0])||(t(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),t(this).addClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&t(this).addClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&t(this).addClass("ui-datepicker-next-hover"))}function o(e,i){t.extend(e,i);for(var s in i)null==i[s]&&(e[s]=i[s]);return e}t.ui=t.ui||{},t.ui.version="1.12.1",t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.extend(t.ui,{datepicker:{version:"1.12.1"}});var a;t.extend(i.prototype,{markerClassName:"hasDatepicker",maxRows:4,_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(t){return o(this._defaults,t||{}),this},_attachDatepicker:function(e,i){var s,n,o;s=e.nodeName.toLowerCase(),n="div"===s||"span"===s,e.id||(this.uuid+=1,e.id="dp"+this.uuid),o=this._newInst(t(e),n),o.settings=t.extend({},i||{}),"input"===s?this._connectDatepicker(e,o):n&&this._inlineDatepicker(e,o)},_newInst:function(e,i){var n=e[0].id.replace(/([^A-Za-z0-9_\-])/g,"\\\\$1");return{id:n,input:e,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:i,dpDiv:i?s(t("<div class='"+this._inlineClass+" ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>")):this.dpDiv}},_connectDatepicker:function(e,i){var s=t(e);i.append=t([]),i.trigger=t([]),s.hasClass(this.markerClassName)||(this._attachments(s,i),s.addClass(this.markerClassName).on("keydown",this._doKeyDown).on("keypress",this._doKeyPress).on("keyup",this._doKeyUp),this._autoSize(i),t.data(e,"datepicker",i),i.settings.disabled&&this._disableDatepicker(e))},_attachments:function(e,i){var s,n,o,a=this._get(i,"appendText"),r=this._get(i,"isRTL");i.append&&i.append.remove(),a&&(i.append=t("<span class='"+this._appendClass+"'>"+a+"</span>"),e[r?"before":"after"](i.append)),e.off("focus",this._showDatepicker),i.trigger&&i.trigger.remove(),s=this._get(i,"showOn"),("focus"===s||"both"===s)&&e.on("focus",this._showDatepicker),("button"===s||"both"===s)&&(n=this._get(i,"buttonText"),o=this._get(i,"buttonImage"),i.trigger=t(this._get(i,"buttonImageOnly")?t("<img/>").addClass(this._triggerClass).attr({src:o,alt:n,title:n}):t("<button type='button'></button>").addClass(this._triggerClass).html(o?t("<img/>").attr({src:o,alt:n,title:n}):n)),e[r?"before":"after"](i.trigger),i.trigger.on("click",function(){return t.datepicker._datepickerShowing&&t.datepicker._lastInput===e[0]?t.datepicker._hideDatepicker():t.datepicker._datepickerShowing&&t.datepicker._lastInput!==e[0]?(t.datepicker._hideDatepicker(),t.datepicker._showDatepicker(e[0])):t.datepicker._showDatepicker(e[0]),!1}))},_autoSize:function(t){if(this._get(t,"autoSize")&&!t.inline){var e,i,s,n,o=new Date(2009,11,20),a=this._get(t,"dateFormat");a.match(/[DM]/)&&(e=function(t){for(i=0,s=0,n=0;t.length>n;n++)t[n].length>i&&(i=t[n].length,s=n);return s},o.setMonth(e(this._get(t,a.match(/MM/)?"monthNames":"monthNamesShort"))),o.setDate(e(this._get(t,a.match(/DD/)?"dayNames":"dayNamesShort"))+20-o.getDay())),t.input.attr("size",this._formatDate(t,o).length)}},_inlineDatepicker:function(e,i){var s=t(e);s.hasClass(this.markerClassName)||(s.addClass(this.markerClassName).append(i.dpDiv),t.data(e,"datepicker",i),this._setDate(i,this._getDefaultDate(i),!0),this._updateDatepicker(i),this._updateAlternate(i),i.settings.disabled&&this._disableDatepicker(e),i.dpDiv.css("display","block"))},_dialogDatepicker:function(e,i,s,n,a){var r,l,h,c,u,d=this._dialogInst;return d||(this.uuid+=1,r="dp"+this.uuid,this._dialogInput=t("<input type='text' id='"+r+"' style='position: absolute; top: -100px; width: 0px;'/>
6"),this._dialogInput.on("keydown",this._doKeyDown),t("body").append(this._dialogInput),d=this._dialogInst=this._newInst(this._dialogInput,!1),d.settings={},t.data(this._dialogInput[0],"datepicker",d)),o(d.settings,n||{}),i=i&&i.constructor===Date?this._formatDate(d,i):i,this._dialogInput.val(i),this._pos=a?a.length?a:[a.pageX,a.pageY]:null,this._pos||(l=document.documentElement.clientWidth,h=document.documentElement.clientHeight,c=document.documentElement.scrollLeft||document.body.scrollLeft,u=document.documentElement.scrollTop||document.body.scrollTop,this._pos=[l/2-100+c,h/2-150+u]),this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),d.settings.onSelect=s,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),t.blockUI&&t.blockUI(this.dpDiv),t.data(this._dialogInput[0],"datepicker",d),this},_destroyDatepicker:function(e){var i,s=t(e),n=t.data(e,"datepicker");s.hasClass(this.markerClassName)&&(i=e.nodeName.toLowerCase(),t.removeData(e,"datepicker"),"input"===i?(n.append.remove(),n.trigger.remove(),s.removeClass(this.markerClassName).off("focus",this._showDatepicker).off("keydown",this._doKeyDown).off("keypress",this._doKeyPress).off("keyup",this._doKeyUp)):("div"===i||"span"===i)&&s.removeClass(this.markerClassName).empty(),a===n&&(a=null))},_enableDatepicker:function(e){var i,s,n=t(e),o=t.data(e,"datepicker");n.hasClass(this.markerClassName)&&(i=e.nodeName.toLowerCase(),"input"===i?(e.disabled=!1,o.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""})):("div"===i||"span"===i)&&(s=n.children("."+this._inlineClass),s.children().removeClass("ui-state-disabled"),s.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!1)),this._disabledInputs=t.map(this._disabledInputs,function(t){return t===e?null:t}))},_disableDatepicker:function(e){var i,s,n=t(e),o=t.data(e,"datepicker");n.hasClass(this.markerClassName)&&(i=e.nodeName.toLowerCase(),"input"===i?(e.disabled=!0,o.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"})):("div"===i||"span"===i)&&(s=n.children("."+this._inlineClass),s.children().addClass("ui-state-disabled"),s.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!0)),this._disabledInputs=t.map(this._disabledInputs,function(t){return t===e?null:t}),this._disabledInputs[this._disabledInputs.length]=e)},_isDisabledDatepicker:function(t){if(!t)return!1;for(var e=0;this._disabledInputs.length>e;e++)if(this._disabledInputs[e]===t)return!0;return!1},_getInst:function(e){try{return t.data(e,"datepicker")}catch(i){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(e,i,s){var n,a,r,l,h=this._getInst(e);return 2===arguments.length&&"string"==typeof i?"defaults"===i?t.extend({},t.datepicker._defaults):h?"all"===i?t.extend({},h.settings):this._get(h,i):null:(n=i||{},"string"==typeof i&&(n={},n[i]=s),h&&(this._curInst===h&&this._hideDatepicker(),a=this._getDateDatepicker(e,!0),r=this._getMinMaxDate(h,"min"),l=this._getMinMaxDate(h,"max"),o(h.settings,n),null!==r&&void 0!==n.dateFormat&&void 0===n.minDate&&(h.settings.minDate=this._formatDate(h,r)),null!==l&&void 0!==n.dateFormat&&void 0===n.maxDate&&(h.settings.maxDate=this._formatDate(h,l)),"disabled"in n&&(n.disabled?this._disableDatepicker(e):this._enableDatepicker(e)),this._attachments(t(e),h),this._autoSize(h),this._setDate(h,a),this._updateAlternate(h),this._updateDatepicker(h)),void 0)},_changeDatepicker:function(t,e,i){this._optionDatepicker(t,e,i)},_refreshDatepicker:function(t){var e=this._getInst(t);e&&this._updateDatepicker(e)},_setDateDatepicker:function(t,e){var i=this._getInst(t);i&&(this._setDate(i,e),this._updateDatepicker(i),this._updateAlternate(i))},_getDateDatepicker:function(t,e){var i=this._getInst(t);return i&&!i.inline&&this._setDateFromField(i,e),i?this._getDate(i):null},_doKeyDown:function(e){var i,s,n,o=t.datepicker._getInst(e.target),a=!0,r=o.dpDiv.is(".ui-datepicker-rtl");if(o._keyEvent=!0,t.datepicker._datepickerShowing)switch(e.keyCode){case 9:t.datepicker._hideDatepicker(),a=!1;break;case 13:return n=t("td."+t.datepicker._dayOverClass+":not(."+t.datepicker._currentClass+")",o.dpDiv),n[0]&&t.datepicker._selectDay(e.target,o.selectedMonth,o.selectedYear,n[0]),i=t.datepicker._get(o,"onSelect"),i?(s=t.datepicker._formatDate(o),i.apply(o.input?o.input[0]:null,[s,o])):t.datepicker._hideDatepicker(),!1;case 27:t.datepicker._hideDatepicker();break;case 33:t.datepicker._adjustDate(e.target,e.ctrlKey?-t.datepicker._get(o,"stepBigMonths"):-t.datepicker._get(o,"stepMonths"),"M");break;case 34:t.datepicker._adjustDate(e.target,e.ctrlKey?+t.datepicker._get(o,"stepBigMonths"):+t.datepicker._get(o,"stepMonths"),"M");break;case 35:(e.ctrlKey||e.metaKey)&&t.datepicker._clearDate(e.target),a=e.ctrlKey||e.metaKey;break;case 36:(e.ctrlKey||e.metaKey)&&t.datepicker._gotoToday(e.target),a=e.ctrlKey||e.metaKey;break;case 37:(e.ctrlKey||e.metaKey)&&t.datepicker._adjustDate(e.target,r?1:-1,"D"),a=e.ctrlKey||e.metaKey,e.originalEvent.altKey&&t.datepicker._adjustDate(e.target,e.ctrlKey?-t.datepicker._get(o,"stepBigMonths"):-t.datepicker._get(o,"stepMonths"),"M");break;case 38:(e.ctrlKey||e.metaKey)&&t.datepicker._adjustDate(e.target,-7,"D"),a=e.ctrlKey||e.metaKey;break;case 39:(e.ctrlKey||e.metaKey)&&t.datepicker._adjustDate(e.target,r?-1:1,"D"),a=e.ctrlKey||e.metaKey,e.originalEvent.altKey&&t.datepicker._adjustDate(e.target,e.ctrlKey?+t.datepicker._get(o,"stepBigMonths"):+t.datepicker._get(o,"stepMonths"),"M");break;case 40:(e.ctrlKey||e.metaKey)&&t.datepicker._adjustDate(e.target,7,"D"),a=e.ctrlKey||e.metaKey;break;default:a=!1}else 36===e.keyCode&&e.ctrlKey?t.datepicker._showDatepicker(this):a=!1;a&&(e.preventDefault(),e.stopPropagation())},_doKeyPress:function(e){var i,s,n=t.datepicker._getInst(e.target);return t.datepicker._get(n,"constrainInput")?(i=t.datepicker._possibleChars(t.datepicker._get(n,"dateFormat")),s=String.fromCharCode(null==e.charCode?e.keyCode:e.charCode),e.ctrlKey||e.metaKey||" ">s||!i||i.indexOf(s)>-1):void 0},_doKeyUp:function(e){var i,s=t.datepicker._getInst(e.target);if(s.input.val()!==s.lastVal)try{i=t.datepicker.parseDate(t.datepicker._get(s,"dateFormat"),s.input?s.input.val():null,t.datepicker._getFormatConfig(s)),i&&(t.datepicker._setDateFromField(s),t.datepicker._updateAlternate(s),t.datepicker._updateDatepicker(s))}catch(n){}return!0},_showDatepicker:function(i){if(i=i.target||i,"input"!==i.nodeName.toLowerCase()&&(i=t("input",i.parentNode)[0]),!t.datepicker._isDisabledDatepicker(i)&&t.datepicker._lastInput!==i){var s,n,a,r,l,h,c;s=t.datepicker._getInst(i),t.datepicker._curInst&&t.datepicker._curInst!==s&&(t.datepicker._curInst.dpDiv.stop(!0,!0),s&&t.datepicker._datepickerShowing&&t.datepicker._hideDatepicker(t.datepicker._curInst.input[0])),n=t.datepicker._get(s,"beforeShow"),a=n?
vendor: 11,729 bytes, line 6
6n.apply(i,[i,s]):{},a!==!1&&(o(s.settings,a),s.lastVal=null,t.datepicker._lastInput=i,t.datepicker._setDateFromField(s),t.datepicker._inDialog&&(i.value=""),t.datepicker._pos||(t.datepicker._pos=t.datepicker._findPos(i),t.datepicker._pos[1]+=i.offsetHeight),r=!1,t(i).parents().each(function(){return r|="fixed"===t(this).css("position"),!r}),l={left:t.datepicker._pos[0],top:t.datepicker._pos[1]},t.datepicker._pos=null,s.dpDiv.empty(),s.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),t.datepicker._updateDatepicker(s),l=t.datepicker._checkOffset(s,l,r),s.dpDiv.css({position:t.datepicker._inDialog&&t.blockUI?"static":r?"fixed":"absolute",display:"none",left:l.left+"px",top:l.top+"px"}),s.inline||(h=t.datepicker._get(s,"showAnim"),c=t.datepicker._get(s,"duration"),s.dpDiv.css("z-index",e(t(i))+1),t.datepicker._datepickerShowing=!0,t.effects&&t.effects.effect[h]?s.dpDiv.show(h,t.datepicker._get(s,"showOptions"),c):s.dpDiv[h||"show"](h?c:null),t.datepicker._shouldFocusInput(s)&&s.input.trigger("focus"),t.datepicker._curInst=s))}},_updateDatepicker:function(e){this.maxRows=4,a=e,e.dpDiv.empty().append(this._generateHTML(e)),this._attachHandlers(e);var i,s=this._getNumberOfMonths(e),o=s[1],r=17,l=e.dpDiv.find("."+this._dayOverClass+" a");l.length>0&&n.apply(l.get(0)),e.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),o>1&&e.dpDiv.addClass("ui-datepicker-multi-"+o).css("width",r*o+"em"),e.dpDiv[(1!==s[0]||1!==s[1]?"add":"remove")+"Class"]("ui-datepicker-multi"),e.dpDiv[(this._get(e,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),e===t.datepicker._curInst&&t.datepicker._datepickerShowing&&t.datepicker._shouldFocusInput(e)&&e.input.trigger("focus"),e.yearshtml&&(i=e.yearshtml,setTimeout(function(){i===e.yearshtml&&e.yearshtml&&e.dpDiv.find("select.ui-datepicker-year:first").replaceWith(e.yearshtml),i=e.yearshtml=null},0))},_shouldFocusInput:function(t){return t.input&&t.input.is(":visible")&&!t.input.is(":disabled")&&!t.input.is(":focus")},_checkOffset:function(e,i,s){var n=e.dpDiv.outerWidth(),o=e.dpDiv.outerHeight(),a=e.input?e.input.outerWidth():0,r=e.input?e.input.outerHeight():0,l=document.documentElement.clientWidth+(s?0:t(document).scrollLeft()),h=document.documentElement.clientHeight+(s?0:t(document).scrollTop());return i.left-=this._get(e,"isRTL")?n-a:0,i.left-=s&&i.left===e.input.offset().left?t(document).scrollLeft():0,i.top-=s&&i.top===e.input.offset().top+r?t(document).scrollTop():0,i.left-=Math.min(i.left,i.left+n>l&&l>n?Math.abs(i.left+n-l):0),i.top-=Math.min(i.top,i.top+o>h&&h>o?Math.abs(o+r):0),i},_findPos:function(e){for(var i,s=this._getInst(e),n=this._get(s,"isRTL");e&&("hidden"===e.type||1!==e.nodeType||t.expr.filters.hidden(e));)e=e[n?"previousSibling":"nextSibling"];return i=t(e).offset(),[i.left,i.top]},_hideDatepicker:function(e){var i,s,n,o,a=this._curInst;!a||e&&a!==t.data(e,"datepicker")||this._datepickerShowing&&(i=this._get(a,"showAnim"),s=this._get(a,"duration"),n=function(){t.datepicker._tidyDialog(a)},t.effects&&(t.effects.effect[i]||t.effects[i])?a.dpDiv.hide(i,t.datepicker._get(a,"showOptions"),s,n):a.dpDiv["slideDown"===i?"slideUp":"fadeIn"===i?"fadeOut":"hide"](i?s:null,n),i||n(),this._datepickerShowing=!1,o=this._get(a,"onClose"),o&&o.apply(a.input?a.input[0]:null,[a.input?a.input.val():"",a]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),t.blockUI&&(t.unblockUI(),t("body").append(this.dpDiv))),this._inDialog=!1)},_tidyDialog:function(t){t.dpDiv.removeClass(this._dialogClass).off(".ui-datepicker-calendar")},_checkExternalClick:function(e){if(t.datepicker._curInst){var i=t(e.target),s=t.datepicker._getInst(i[0]);(i[0].id!==t.datepicker._mainDivId&&0===i.parents("#"+t.datepicker._mainDivId).length&&!i.hasClass(t.datepicker.markerClassName)&&!i.closest("."+t.datepicker._triggerClass).length&&t.datepicker._datepickerShowing&&(!t.datepicker._inDialog||!t.blockUI)||i.hasClass(t.datepicker.markerClassName)&&t.datepicker._curInst!==s)&&t.datepicker._hideDatepicker()}},_adjustDate:function(e,i,s){var n=t(e),o=this._getInst(n[0]);this._isDisabledDatepicker(n[0])||(this._adjustInstDate(o,i+("M"===s?this._get(o,"showCurrentAtPos"):0),s),this._updateDatepicker(o))},_gotoToday:function(e){var i,s=t(e),n=this._getInst(s[0]);this._get(n,"gotoCurrent")&&n.currentDay?(n.selectedDay=n.currentDay,n.drawMonth=n.selectedMonth=n.currentMonth,n.drawYear=n.selectedYear=n.currentYear):(i=new Date,n.selectedDay=i.getDate(),n.drawMonth=n.selectedMonth=i.getMonth(),n.drawYear=n.selectedYear=i.getFullYear()),this._notifyChange(n),this._adjustDate(s)},_selectMonthYear:function(e,i,s){var n=t(e),o=this._getInst(n[0]);o["selected"+("M"===s?"Month":"Year")]=o["draw"+("M"===s?"Month":"Year")]=parseInt(i.options[i.selectedIndex].value,10),this._notifyChange(o),this._adjustDate(n)},_selectDay:function(e,i,s,n){var o,a=t(e);t(n).hasClass(this._unselectableClass)||this._isDisabledDatepicker(a[0])||(o=this._getInst(a[0]),o.selectedDay=o.currentDay=t("a",n).html(),o.selectedMonth=o.currentMonth=i,o.selectedYear=o.currentYear=s,this._selectDate(e,this._formatDate(o,o.currentDay,o.currentMonth,o.currentYear)))},_clearDate:function(e){var i=t(e);this._selectDate(i,"")},_selectDate:function(e,i){var s,n=t(e),o=this._getInst(n[0]);i=null!=i?i:this._formatDate(o),o.input&&o.input.val(i),this._updateAlternate(o),s=this._get(o,"onSelect"),s?s.apply(o.input?o.input[0]:null,[i,o]):o.input&&o.input.trigger("change"),o.inline?this._updateDatepicker(o):(this._hideDatepicker(),this._lastInput=o.input[0],"object"!=typeof o.input[0]&&o.input.trigger("focus"),this._lastInput=null)},_updateAlternate:function(e){var i,s,n,o=this._get(e,"altField");o&&(i=this._get(e,"altFormat")||this._get(e,"dateFormat"),s=this._getDate(e),n=this.formatDate(i,s,this._getFormatConfig(e)),t(o).val(n))},noWeekends:function(t){var e=t.getDay();return[e>0&&6>e,""]},iso8601Week:function(t){var e,i=new Date(t.getTime());return i.setDate(i.getDate()+4-(i.getDay()||7)),e=i.getTime(),i.setMonth(0),i.setDate(1),Math.floor(Math.round((e-i)/864e5)/7)+1},parseDate:function(e,i,s){if(null==e||null==i)throw"Invalid arguments";if(i="object"==typeof i?""+i:i+"",""===i)return null;var n,o,a,r,l=0,h=(s?s.shortYearCutoff:null)||this._defaults.shortYearCutoff,c="string"!=typeof h?h:(new Date).getFullYear()%100+parseInt(h,10),u=(s?s.dayNamesShort:null)||this._defaults.dayNamesShort,d=(s?s.dayNames:null)||this._defaults.dayNames,p=(s?s.monthNamesShort:null)||this._defaults.monthNamesShort,f=(s?s.monthNames:null)||this._defaults.monthNames,g=-1,m=-1,_=-1,v=-1,b=!1,y=function(t){var i=e.length>n+1&&e.charAt(n+1)===t;return i&&n++,i},w=function(t){var e=y(t),s="@"===t?14:"!"===t?20:"y"===t&&e?4:"o"===t?3:2,n="y"===t?s:1,o=RegExp("^\\d{"+n+","+s+"}"),a=i.substring(l).match(o);if(!a)throw"Missing number at position "+l;return l+=a[0].length,parseInt(a[0],10)},k=function(e,s,n){var o=-1,a=t.map(y(e)?n:s,function(t,e){return[[e,t]]}).sort(function(t,e){return-(t[1].length-e[1].length)});if(t.each(a,function(t,e){var s=e[1];return i.substr(l,s.length).toLowerCase()===s.toLowerCase()?(o=e[0],l+=s.length,!1):void 0}),-1!==o)return o+1;throw"Unknown name at position "+l},x=function(){if(i.charAt(l)!==e.charAt(n))throw"Unexpected literal at position "+l;l++};for(n=0;e.length>n;n++)if(b)"'"!==e.charAt(n)||y("'")?x():b=!1;else switch(e.charAt(n)){case"d":_=w("d");break;case"D":k("D",u,d);break;case"o":v=w("o");break;case"m":m=w("m");break;case"M":m=k("M",p,f);break;case"y":g=w("y");break;case"@":r=new Date(w("@")),g=r.getFullYear(),m=r.getMonth()+1,_=r.getDate();break;case"!":r=new Date((w("!")-this._ticksTo1970)/1e4),g=r.getFullYear(),m=r.getMonth()+1,_=r.getDate();break;case"'":y("'")?x():b=!0;break;default:x()}if(i.length>l&&(a=i.substr(l),!/^\s+/.test(a)))throw"Extra/unparsed characters found in date: "+a;if(-1===g?g=(new Date).getFullYear():100>g&&(g+=(new Date).getFullYear()-(new Date).getFullYear()%100+(c>=g?0:-100)),v>-1)for(m=1,_=v;;){if(o=this._getDaysInMonth(g,m-1),o>=_)break;m++,_-=o}if(r=this._daylightSavingAdjust(new Date(g,m-1,_)),r.getFullYear()!==g||r.getMonth()+1!==m||r.getDate()!==_)throw"Invalid date";return r},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:1e7*60*60*24*(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925)),formatDate:function(t,e,i){if(!e)return"";var s,n=(i?i.dayNamesShort:null)||this._defaults.dayNamesShort,o=(i?i.dayNames:null)||this._defaults.dayNames,a=(i?i.monthNamesShort:null)||this._defaults.monthNamesShort,r=(i?i.monthNames:null)||this._defaults.monthNames,l=function(e){var i=t.length>s+1&&t.charAt(s+1)===e;return i&&s++,i},h=function(t,e,i){var s=""+e;if(l(t))for(;i>s.length;)s="0"+s;return s},c=function(t,e,i,s){return l(t)?s[e]:i[e]},u="",d=!1;if(e)for(s=0;t.length>s;s++)if(d)"'"!==t.charAt(s)||l("'")?u+=t.charAt(s):d=!1;else switch(t.charAt(s)){case"d":u+=h("d",e.getDate(),2);break;case"D":u+=c("D",e.getDay(),n,o);break;case"o":u+=h("o",Math.round((new Date(e.getFullYear(),e.getMonth(),e.getDate()).getTime()-new Date(e.getFullYear(),0,0).getTime())/864e5),3);break;case"m":u+=h("m",e.getMonth()+1,2);break;case"M":u+=c("M",e.getMonth(),a,r);break;case"y":u+=l("y")?e.getFullYear():(10>e.getFullYear()%100?"0":"")+e.getFullYear()%100;break;case"@":u+=e.getTime();break;case"!":u+=1e4*e.getTime()+this._ticksTo1970;break;case"'":l("'")?u+="'":d=!0;break;default:u+=t.charAt(s)}return u},_possibleChars:function(t){var e,i="",s=!1,n=function(i){var s=t.length>e+1&&t.charAt(e+1)===i;return s&&e++,s};for(e=0;t.length>e;e++)if(s)"'"!==t.charAt(e)||n("'")?i+=t.charAt(e):s=!1;else switch(t.charAt(e)){case"d":case"m":case"y":case"@":i+="0123456789";break;case"D":case"M":return null;case"'":n("'")?i+="'":s=!0;break;default:i+=t.charAt(e)}return i},_get:function(t,e){return void 0!==t.settings[e]?t.settings[e]:this._defaults[e]},_setDateFromField:function(t,e){if(t.input.val()!==t.lastVal){var i=this._get(t,"dateFormat"),s=t.lastVal=t.input?t.input.val():null,n=this._getDefaultDate(t),o=n,a=this._getFormatConfig(t);try{o=this.parseDate(i,s,a)||n}catch(r){s=e?"":s}t.selectedDay=o.getDate(),t.drawMonth=t.selectedMonth=o.getMonth(),t.drawYear=t.selectedYear=o.getFullYear(),t.currentDay=s?o.getDate():0,t.currentMonth=s?o.getMonth():0,t.currentYear=s?o.getFullYear():0,this._adjustInstDate(t)}},_getDefaultDate:function(t){return this._restrictMinMax(t,this._determineDate(t,this._get(t,"defaultDate"),new Date))},_determineDate:function(e,i,s){var n=function(t){var e=new Date;return e.setDate(e.getDate()+t),e},o=function(i){try{return t.datepicker.parseDate(t.datepicker._get(e,"dateFormat"),i,t.datepicker._getFormatConfig(e))}catch(s){}for(var n=(i.toLowerCase().match(/^c/)?t.datepicker._getDate(e):null)||new Date,o=n.getFullYear(),a=n.getMonth(),r=n.getDate(),l=/([+\-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,h=l.exec(i);h;){switch(h[2]||"d"){case"d":case"D":r+=parseInt(h[1],10);break;case"w":case"W":r+=7*parseInt(h[1],10);break;case"m":case"M":a+=parseInt(h[1],10),r=Math.min(r,t.datepicker._getDaysInMonth(o,a));break;case"y":case"Y":o+=parseInt(h[1],10),r=Math.min(r,t.datepicker._getDaysInMonth(o,a))}h=l.exec(i)}return new Date(o,a,r)},a=null==i||""===i?s:"string"==typeof i?o(i):"number"==typeof i?isNaN(i)?s:n(i):new Date(i.getTime());return a=a&&"Invalid Date"==""+a?s:a,a&&(a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0)),this._daylightSavingAdjust(a)},_daylightSavingAdjust:function(t){return t?(t.setHours(t.getHours()>12?t.getHours()+2:0),t):null}
vendor: 6,672 bytes, line 6
6,_setDate:function(t,e,i){var s=!e,n=t.selectedMonth,o=t.selectedYear,a=this._restrictMinMax(t,this._determineDate(t,e,new Date));t.selectedDay=t.currentDay=a.getDate(),t.drawMonth=t.selectedMonth=t.currentMonth=a.getMonth(),t.drawYear=t.selectedYear=t.currentYear=a.getFullYear(),n===t.selectedMonth&&o===t.selectedYear||i||this._notifyChange(t),this._adjustInstDate(t),t.input&&t.input.val(s?"":this._formatDate(t))},_getDate:function(t){var e=!t.currentYear||t.input&&""===t.input.val()?null:this._daylightSavingAdjust(new Date(t.currentYear,t.currentMonth,t.currentDay));return e},_attachHandlers:function(e){var i=this._get(e,"stepMonths"),s="#"+e.id.replace(/\\\\/g,"\\");e.dpDiv.find("[data-handler]").map(function(){var e={prev:function(){t.datepicker._adjustDate(s,-i,"M")},next:function(){t.datepicker._adjustDate(s,+i,"M")},hide:function(){t.datepicker._hideDatepicker()},today:function(){t.datepicker._gotoToday(s)},selectDay:function(){return t.datepicker._selectDay(s,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this),!1},selectMonth:function(){return t.datepicker._selectMonthYear(s,this,"M"),!1},selectYear:function(){return t.datepicker._selectMonthYear(s,this,"Y"),!1}};t(this).on(this.getAttribute("data-event"),e[this.getAttribute("data-handler")])})},_generateHTML:function(t){var e,i,s,n,o,a,r,l,h,c,u,d,p,f,g,m,_,v,b,y,w,k,x,C,D,T,I,P,M,S,N,H,z,A,O,E,W,F,L,R=new Date,Y=this._daylightSavingAdjust(new Date(R.getFullYear(),R.getMonth(),R.getDate())),B=this._get(t,"isRTL"),j=this._get(t,"showButtonPanel"),q=this._get(t,"hideIfNoPrevNext"),K=this._get(t,"navigationAsDateFormat"),U=this._getNumberOfMonths(t),V=this._get(t,"showCurrentAtPos"),X=this._get(t,"stepMonths"),$=1!==U[0]||1!==U[1],G=this._daylightSavingAdjust(t.currentDay?new Date(t.currentYear,t.currentMonth,t.currentDay):new Date(9999,9,9)),J=this._getMinMaxDate(t,"min"),Q=this._getMinMaxDate(t,"max"),Z=t.drawMonth-V,te=t.drawYear;if(0>Z&&(Z+=12,te--),Q)for(e=this._daylightSavingAdjust(new Date(Q.getFullYear(),Q.getMonth()-U[0]*U[1]+1,Q.getDate())),e=J&&J>e?J:e;this._daylightSavingAdjust(new Date(te,Z,1))>e;)Z--,0>Z&&(Z=11,te--);for(t.drawMonth=Z,t.drawYear=te,i=this._get(t,"prevText"),i=K?this.formatDate(i,this._daylightSavingAdjust(new Date(te,Z-X,1)),this._getFormatConfig(t)):i,s=this._canAdjustMonth(t,-1,te,Z)?"<a class='ui-datepicker-prev ui-corner-all' data-handler='prev' data-event='click' title='"+i+"'><span class='ui-icon ui-icon-circle-triangle-"+(B?"e":"w")+"'>"+i+"</span></a>":q?"":"<a class='ui-datepicker-prev ui-corner-all ui-state-disabled' title='"+i+"'><span class='ui-icon ui-icon-circle-triangle-"+(B?"e":"w")+"'>"+i+"</span></a>",n=this._get(t,"nextText"),n=K?this.formatDate(n,this._daylightSavingAdjust(new Date(te,Z+X,1)),this._getFormatConfig(t)):n,o=this._canAdjustMonth(t,1,te,Z)?"<a class='ui-datepicker-next ui-corner-all' data-handler='next' data-event='click' title='"+n+"'><span class='ui-icon ui-icon-circle-triangle-"+(B?"w":"e")+"'>"+n+"</span></a>":q?"":"<a class='ui-datepicker-next ui-corner-all ui-state-disabled' title='"+n+"'><span class='ui-icon ui-icon-circle-triangle-"+(B?"w":"e")+"'>"+n+"</span></a>",a=this._get(t,"currentText"),r=this._get(t,"gotoCurrent")&&t.currentDay?G:Y,a=K?this.formatDate(a,r,this._getFormatConfig(t)):a,l=t.inline?"":"<button type='button' class='ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all' data-handler='hide' data-event='click'>"+this._get(t,"closeText")+"</button>",h=j?"<div class='ui-datepicker-buttonpane ui-widget-content'>"+(B?l:"")+(this._isInRange(t,r)?"<button type='button' class='ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all' data-handler='today' data-event='click'>"+a+"</button>":"")+(B?"":l)+"</div>":"",c=parseInt(this._get(t,"firstDay"),10),c=isNaN(c)?0:c,u=this._get(t,"showWeek"),d=this._get(t,"dayNames"),p=this._get(t,"dayNamesMin"),f=this._get(t,"monthNames"),g=this._get(t,"monthNamesShort"),m=this._get(t,"beforeShowDay"),_=this._get(t,"showOtherMonths"),v=this._get(t,"selectOtherMonths"),b=this._getDefaultDate(t),y="",k=0;U[0]>k;k++){for(x="",this.maxRows=4,C=0;U[1]>C;C++){if(D=this._daylightSavingAdjust(new Date(te,Z,t.selectedDay)),T=" ui-corner-all",I="",$){if(I+="<div class='ui-datepicker-group",U[1]>1)switch(C){case 0:I+=" ui-datepicker-group-first",T=" ui-corner-"+(B?"right":"left");break;case U[1]-1:I+=" ui-datepicker-group-last",T=" ui-corner-"+(B?"left":"right");break;default:I+=" ui-datepicker-group-middle",T=""}I+="'>"}for(I+="<div class='ui-datepicker-header ui-widget-header ui-helper-clearfix"+T+"'>"+(/all|left/.test(T)&&0===k?B?o:s:"")+(/all|right/.test(T)&&0===k?B?s:o:"")+this._generateMonthYearHeader(t,Z,te,J,Q,k>0||C>0,f,g)+"</div><table class='ui-datepicker-calendar'><thead>"+"<tr>",P=u?"<th class='ui-datepicker-week-col'>"+this._get(t,"weekHeader")+"</th>":"",w=0;7>w;w++)M=(w+c)%7,P+="<th scope='col'"+((w+c+6)%7>=5?" class='ui-datepicker-week-end'":"")+">"+"<span title='"+d[M]+"'>"+p[M]+"</span></th>";for(I+=P+"</tr></thead><tbody>",S=this._getDaysInMonth(te,Z),te===t.selectedYear&&Z===t.selectedMonth&&(t.selectedDay=Math.min(t.selectedDay,S)),N=(this._getFirstDayOfMonth(te,Z)-c+7)%7,H=Math.ceil((N+S)/7),z=$?this.maxRows>H?this.maxRows:H:H,this.maxRows=z,A=this._daylightSavingAdjust(new Date(te,Z,1-N)),O=0;z>O;O++){for(I+="<tr>",E=u?"<td class='ui-datepicker-week-col'>"+this._get(t,"calculateWeek")(A)+"</td>":"",w=0;7>w;w++)W=m?m.apply(t.input?t.input[0]:null,[A]):[!0,""],F=A.getMonth()!==Z,L=F&&!v||!W[0]||J&&J>A||Q&&A>Q,E+="<td class='"+((w+c+6)%7>=5?" ui-datepicker-week-end":"")+(F?" ui-datepicker-other-month":"")+(A.getTime()===D.getTime()&&Z===t.selectedMonth&&t._keyEvent||b.getTime()===A.getTime()&&b.getTime()===D.getTime()?" "+this._dayOverClass:"")+(L?" "+this._unselectableClass+" ui-state-disabled":"")+(F&&!_?"":" "+W[1]+(A.getTime()===G.getTime()?" "+this._currentClass:"")+(A.getTime()===Y.getTime()?" ui-datepicker-today":""))+"'"+(F&&!_||!W[2]?"":" title='"+W[2].replace(/'/g,"'")+"'")+(L?"":" data-handler='selectDay' data-event='click' data-month='"+A.getMonth()+"' data-year='"+A.getFullYear()+"'")+">"+(F&&!_?" ":L?"<span class='ui-state-default'>"+A.getDate()+"</span>":"<a class='ui-state-default"+(A.getTime()===Y.getTime()?" ui-state-highlight":"")+(A.getTime()===G.getTime()?" ui-state-active":"")+(F?" ui-priority-secondary":"")+"' href='#'>"+A.getDate()+"</a>")+"</td>",A.setDate(A.getDate()+1),A=this._daylightSavingAdjust(A);I+=E+"</tr>"}Z++,Z>11&&(Z=0,te++),I+="</tbody></table>"+($?"</div>"+(U[0]>0&&C===U[1]-1?"<div class='ui-datepicker-row-break'></div>":""):""),x+=I}y+=x}return y+=h,t._keyEvent=!1,y}
6,_generateMonthYearHeader:function(t,e,i,s,n,o,a,r){var l,h,c,u,d,p,f,g,m=this._get(t,"changeMonth"),_=this._get(t,"changeYear"),v=this._get(t,"showMonthAfterYear"),b="<div class='ui-datepicker-title'>",y=""; 7if(o||!m)y+="<span class='ui-datepicker-month'>"+a[e]+"</span>";else{for(l=s&&s.getFullYear()===i,h=n&&n.getFullYear()===i,y+="<select class='ui-datepicker-month' data-handler='selectMonth' data-event='change'>",c=0;12>c;c++)(!l||c>=s.getMonth())&&(!h||n.getMonth()>=c)&&(y+="<option value='"+c+"'"+(c===e?" selected='selected'":"")+">"+r[c]+"</option>");y+="</select>"}if(v||(b+=y+(!o&&m&&_?"":" ")),!t.yearshtml)if(t.yearshtml="",o||!_)b+="<span class='ui-datepicker-year'>"+i+"</span>";else{for(u=this._get(t,"yearRange").split(":"),d=(new Date).getFullYear(),p=function(t){var e=t.match(/c[+\-].*/)?i+parseInt(t.substring(1),10):t.match(/[+\-].*/)?d+parseInt(t,10):parseInt(t,10);return isNaN(e)?d:e},f=p(u[0]),g=Math.max(f,p(u[1]||"")),f=s?Math.max(f,s.getFullYear()):f,g=n?Math.min(g,n.getFullYear()):g,t.yearshtml+="<select class='ui-datepicker-year' data-handler='selectYear' data-event='change'>";g>=f;f++)t.yearshtml+="<option value='"+f+"'"+(f===i?" selected='selected'":"")+">"+f+"</option>";t.yearshtml+="</select>",b+=t.yearshtml,t.yearshtml=null}return b+=this._get(t,"yearSuffix"),v&&(b+=(!o&&m&&_?"":" ")+y),b+="</div>"},_adjustInstDate:function(t,e,i){var s=t.selectedYear+("Y"===i?e:0),n=t.selectedMonth+("M"===i?e:0),o=Math.min(t.selectedDay,this._getDaysInMonth(s,n))+("D"===i?e:0),a=this._restrictMinMax(t,this._daylightSavingAdjust(new Date(s,n,o)));t.selectedDay=a.getDate(),t.drawMonth=t.selectedMonth=a.getMonth(),t.drawYear=t.selectedYear=a.getFullYear(),("M"===i||"Y"===i)&&this._notifyChange(t)},_restrictMinMax:function(t,e){var i=this._getMinMaxDate(t,"min"),s=this._getMinMaxDate(t,"max"),n=i&&i>e?i:e;return s&&n>s?s:n},_notifyChange:function(t){var e=this._get(t,"onChangeMonthYear");e&&e.apply(t.input?t.input[0]:null,[t.selectedYear,t.selectedMonth+1,t])},_getNumberOfMonths:function(t){var e=this._get(t,"numberOfMonths");return null==e?[1,1]:"number"==typeof e?[1,e]:e},_getMinMaxDate:function(t,e){return this._determineDate(t,this._get(t,e+"Date"),null)},_getDaysInMonth:function(t,e){return 32-this._daylightSavingAdjust(new Date(t,e,32)).getDate()},_getFirstDayOfMonth:function(t,e){return new Date(t,e,1).getDay()},_canAdjustMonth:function(t,e,i,s){var n=this._getNumberOfMonths(t),o=this._daylightSavingAdjust(new Date(i,s+(0>e?e:n[0]*n[1]),1));return 0>e&&o.setDate(this._getDaysInMonth(o.getFullYear(),o.getMonth())),this._isInRange(t,o)},_isInRange:function(t,e){var i,s,n=this._getMinMaxDate(t,"min"),o=this._getMinMaxDate(t,"max"),a=null,r=null,l=this._get(t,"yearRange");return l&&(i=l.split(":"),s=(new Date).getFullYear(),a=parseInt(i[0],10),r=parseInt(i[1],10),i[0].match(/[+\-].*/)&&(a+=s),i[1].match(/[+\-].*/)&&(r+=s)),(!n||e.getTime()>=n.getTime())&&(!o||e.getTime()<=o.getTime())&&(!a||e.getFullYear()>=a)&&(!r||r>=e.getFullYear())},_getFormatConfig:function(t){var e=this._get(t,"shortYearCutoff");return e="string"!=typeof e?e:(new Date).getFullYear()%100+parseInt(e,10),{shortYearCutoff:e,dayNamesShort:this._get(t,"dayNamesShort"),dayNames:this._get(t,"dayNames"),monthNamesShort:this._get(t,"monthNamesShort"),monthNames:this._get(t,"monthNames")}},_formatDate:function(t,e,i,s){e||(t.currentDay=t.selectedDay,t.currentMonth=t.selectedMonth,t.currentYear=t.selectedYear);var n=e?"object"==typeof e?e:this._daylightSavingAdjust(new Date(s,i,e)):this._daylightSavingAdjust(new Date(t.currentYear,t.currentMonth,t.currentDay));return this.formatDate(this._get(t,"dateFormat"),n,this._getFormatConfig(t))}}),t.fn.datepicker=function(e){if(!this.length)return this;t.datepicker.initialized||(t(document).on("mousedown",t.datepicker._checkExternalClick),t.datepicker.initialized=!0),0===t("#"+t.datepicker._mainDivId).length&&t("body").append(t.datepicker.dpDiv);var i=Array.prototype.slice.call(arguments,1);return"string"!=typeof e||"isDisabled"!==e&&"getDate"!==e&&"widget"!==e?"option"===e&&2===arguments.length&&"string"==typeof arguments[1]?t.datepicker["_"+e+"Datepicker"].apply(t.datepicker,[this[0]].concat(i)):this.each(function(){"string"==typeof e?t.datepicker["_"+e+"Datepicker"].apply(t.datepicker,[this].concat(i)):t.datepicker._attachDatepicker(this,e)}):t.datepicker["_"+e+"Datepicker"].apply(t.datepicker,[this[0]].concat(i))},t.datepicker=new i,t.datepicker.initialized=!1,t.datepicker.uuid=(new Date).getTime(),t.datepicker.version="1.12.1",t.datepicker}); 8 9/*! jQuery Mobile v1.5.0-alpha.1 | Copyright jQuery Foundation, Inc. | jquery.org/license */ 10 11(function(e,t,n){typeof define=="function"&&define.amd?define(["jquery"],function(r){return n(r,e,t),r.mobile}):n(e.jQuery,e,t)})(this,document,function(e,t,n,r){(function(t){typeof define=="function"&&define.amd?define("vmouse",["jquery"],t):t(e)})(function(e){function T(e){while(e&&typeof e.originalEvent!="undefined")e=e.originalEvent;return e}function N(t,n){var i=t.type,o,a,l,c,h,p,d,v,m;t=e.Event(t),t.type=n,o=t.originalEvent,a=u,i.search(/^(mouse|click)/)>-1&&(a=f);if(o)for(d=a.length;d;)c=a[--d],t[c]=o[c];i.search(/mouse(down|up)|click/)>-1&&!t.which&&(t.which=1);if(i.search(/^touch/)!==-1){l=T(o),i=l.touches,h=l.changedTouches,p=i&&i.length?i[0]:h&&h.length?h[0]:r;if(p)for(v=0,m=s.length;v<m;v++)c=s[v],t[c]=p[c]}return t}function C(n){var r={},i,s;while(n){i=e.data(n,t);for(s in i)i[s]&&(r[s]=r.hasVirtualBinding=!0);n=n.parentNode}return r}function k(n,r){var i;while(n){i=e.data(n,t);if(i&&(!r||i[r]))return n;n=n.parentNode}return null}function L(){g=!1}function A(){g=!0}function O(){E=0,v.length=0,m=!1,A()}function M(){L()}function _(){c&&(clearTimeout(c),c=0)}function D(){_(),c=setTimeout(function(){c=0,O()},e.vmouse.resetTimerDuration)}function P(t,n,r){var i;if(r&&r[t]||!r&&k(n.target,t))i=N(n,t),e(n.target).trigger(i);return i}
vendor: 7,115 bytes, lines 11-12
11function H(t){var n=e.data(t.target,i),r;t.type==="click"&&e.data(t.target,"lastTouchType")==="touchstart"&&setTimeout(function(){e.data(t.target,"lastTouchType")==="touchstart"&&(O(),delete e.data(t.target).lastTouchType,H(t))},e.vmouse.maximumTimeBetweenTouches),!m&&(!E||E!==n)&&(r=P("v"+t.type,t),r&&(r.isDefaultPrevented()&&t.preventDefault(),r.isPropagationStopped()&&t.stopPropagation(),r.isImmediatePropagationStopped()&&t.stopImmediatePropagation()))}function B(t){var n=T(t).touches,r,s,o;n&&n.length===1&&(r=t.target,s=C(r),e.data(t.target,"lastTouchType",t.type),s.hasVirtualBinding&&(E=w++,e.data(r,i,E),_(),M(),d=!1,o=T(t).touches[0],h=o.pageX,p=o.pageY,P("vmouseover",t,s),P("vmousedown",t,s)))}function j(t){if(g)return;d||P("vmousecancel",t,C(t.target)),e.data(t.target,"lastTouchType",t.type),d=!0,D()}function F(t){if(g)return;var n=T(t).touches[0],r=d,i=e.vmouse.moveDistanceThreshold,s=C(t.target);e.data(t.target,"lastTouchType",t.type),d=d||Math.abs(n.pageX-h)>i||Math.abs(n.pageY-p)>i,d&&!r&&P("vmousecancel",t,s),P("vmousemove",t,s),D()}function I(t){if(g||e.data(t.target,"lastTouchType")===r)return;A(),delete e.data(t.target).lastTouchType;var n=C(t.target),i,s;P("vmouseup",t,n),d||(i=P("vclick",t,n),i&&i.isDefaultPrevented()&&(s=T(t).changedTouches[0],v.push({touchID:E,x:s.clientX,y:s.clientY}),m=!0)),P("vmouseout",t,n),d=!1,D()}function q(n){var r=e.data(n,t),i;if(r)for(i in r)if(r[i])return!0;return!1}function R(){}function U(n){var r=n.substr(1);return{setup:function(){q(this)||e.data(this,t,{});var i=e.data(this,t);i[n]=!0,l[n]=(l[n]||0)+1,l[n]===1&&b.bind(r,H),e(this).bind(r,R),y&&(l.touchstart=(l.touchstart||0)+1,l.touchstart===1&&b.bind("touchstart",B).bind("touchend",I).bind("touchmove",F).bind("scroll",j))},teardown:function(){--l[n],l[n]||b.unbind(r,H),y&&(--l.touchstart,l.touchstart||b.unbind("touchstart",B).unbind("touchmove",F).unbind("touchend",I).unbind("scroll",j));var i=e(this),s=e.data(this,t);s&&(s[n]=!1),i.unbind(r,R),q(this)||i.removeData(t)}}}var t="virtualMouseBindings",i="virtualTouchID",s="clientX clientY pageX pageY screenX screenY".split(" "),o="vmouseover vmousedown vmousemove vmouseup vclick vmouseout vmousecancel".split(" "),u="altKey bubbles cancelable ctrlKey currentTarget detail eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),a=e.event.mouseHooks?e.event.mouseHooks.props:[],f=u.concat(a),l={},c=0,h=0,p=0,d=!1,v=[],m=!1,g=!1,y="addEventListener"in n,b=e(n),w=1,E=0,S,x;e.vmouse={moveDistanceThreshold:10,clickDistanceThreshold:10,resetTimerDuration:1500,maximumTimeBetweenTouches:100};for(x=0;x<o.length;x++)e.event.special[o[x]]=U(o[x]);y&&n.addEventListener("click",function(t){var n=v.length,r=t.target,s,o,u,a,f,l;if(n){s=t.clientX,o=t.clientY,S=e.vmouse.clickDistanceThreshold,u=r;while(u){for(a=0;a<n;a++){f=v[a],l=0;if(u===r&&Math.abs(f.x-s)<S&&Math.abs(f.y-o)<S||e.data(u,i)===f.touchID){t.preventDefault(),t.stopPropagation();return}}u=u.parentNode}}},!0)}),function(t){typeof define=="function"&&define.amd?define("ns",["jquery"],t):t(e)}(function(e){return e.mobile={version:"@VERSION"},e.mobile}),function(t){typeof define=="function"&&define.amd?define("support/touch",["jquery","../ns"],t):t(e)}(function(e){var t={touch:"ontouchend"in n};return e.mobile.support=e.mobile.support||{},e.extend(e.support,t),e.extend(e.mobile.support,t),e.support}),function(t){typeof define=="function"&&define.amd?define("events/touch",["jquery","../vmouse","../support/touch"],t):t(e)}(function(e){function f(t,n,i,s){var o=i.type;i.type=n,s?e.event.trigger(i,r,t):e.event.dispatch.call(t,i),i.type=o}var i=e(n),s=e.mobile.support.touch,o=s?"touchstart":"mousedown",u=s?"touchend":"mouseup",a=s?"touchmove":"mousemove";return e.each("touchstart touchmove touchend tap taphold swipe swipeleft swiperight".split(" "),function(t,n){e.fn[n]=function(e){return e?this.bind(n,e):this.trigger(n)},e.attrFn&&(e.attrFn[n]=!0)}),e.event.special.tap={tapholdThreshold:750,emitTapOnTaphold:!0,setup:function(){var t=this,n=e(t),r=!1;n.bind("vmousedown",function(s){function l(){u&&(n.bind("vclick",a),clearTimeout(u))}function c(){l(),n.unbind("vclick",a).unbind("vmouseup",l),i.unbind("vmousecancel",c)}r=!1;if(s.which&&s.which!==1)return!0;var o=s.target,u,a;a=function(e){c(),!r&&o===e.target?f(t,"tap",e):r&&e.preventDefault()},n.bind("vmouseup",l),i.bind("vmousecancel",c),u=setTimeout(function(){e.event.special.tap.emitTapOnTaphold||(r=!0),u=0,f(t,"taphold",e.Event("taphold",{target:o}))},e.event.special.tap.tapholdThreshold)})},teardown:function(){e(this).unbind("vmousedown").unbind("vclick").unbind("vmouseup"),i.unbind("vmousecancel")}},e.event.special.swipe={scrollSupressionThreshold:30,durationThreshold:1e3,horizontalDistanceThreshold:t.devicePixelRatio>=2?15:30,verticalDistanceThreshold:t.devicePixelRatio>=2?15:30,getLocation:function(e){var n=t.pageXOffset,r=t.pageYOffset,i=e.clientX,s=e.clientY;if(e.pageY===0&&Math.floor(s)>Math.floor(e.pageY)||e.pageX===0&&Math.floor(i)>Math.floor(e.pageX))i-=n,s-=r;else if(s<e.pageY-r||i<e.pageX-n)i=e.pageX-n,s=e.pageY-r;return{x:i,y:s}},start:function(t){var n=t.originalEvent.touches?t.originalEvent.touches[0]:t,r=e.event.special.swipe.getLocation(n);return{time:(new Date).getTime(),coords:[r.x,r.y],origin:e(t.target)}},stop:function(t){var n=t.originalEvent.touches?t.originalEvent.touches[0]:t,r=e.event.special.swipe.getLocation(n);return{time:(new Date).getTime(),coords:[r.x,r.y]}},handleSwipe:function(t,n,r,i){if(n.time-t.time<e.event.special.swipe.durationThreshold&&Math.abs(t.coords[0]-n.coords[0])>e.event.special.swipe.horizontalDistanceThreshold&&Math.abs(t.coords[1]-n.coords[1])<e.event.special.swipe.verticalDistanceThreshold){var s=t.coords[0]>n.coords[0]?"swipeleft":"swiperight";return f(r,"swipe",e.Event("swipe",{target:i,swipestart:t,swipestop:n}),!0),f(r,s,e.Event(s,{target:i,swipestart:t,swipestop:n}),!0),!0}return!1},eventInProgress:!1,setup:function(){var t,n=this,r=e(n),s={};t=e.data(this,"mobile-events"),t||(t={length:0},e.data(this,"mobile-events",t)),t.length++,t.swipe=s,s.start=function(t){if(e.event.special.swipe.eventInProgress)return;e.event.special.swipe.eventInProgress=!0;var r,o=e.event.special.swipe.start(t),f=t.target,l=!1;s.move=function(t){if(!o||t.isDefaultPrevented())return;r=e.event.special.swipe.stop(t),l||(l=e.event.special.swipe.handleSwipe(o,r,n,f),l&&(e.event.special.swipe.eventInProgress=!1)),Math.abs(o.coords[0]-r.coords[0])>e.event.special.swipe.scrollSupressionThreshold&&t.preventDefault()},s.stop=function(){l=!0,e.event.special.swipe.eventInProgress=!1,i.off(a,s.move),s.move=null},i.on(a,s.move).one(u,s.stop)},r.on(o,s.start)},teardown:function(){var t,n;t=e.data(this,"mobile-events"),t&&(n=t.swipe,delete t.swipe,t.length--,t.length===0&&e.removeData(this,"mobile-events")),n&&(n.start&&e(this).off(o,n.start),n.move&&i.off(a,n.move),n.stop&&i.off(u,n.stop))}},e.each({taphold:"tap",swipeleft:"swipe.left",swiperight:"swipe.right"},function(t,n){e.event.special[t]={setup:function(){e(this).bind(n,e.noop)},teardown:function(){e(this).unbind(n)}}}),e.event.special})}); 12
vendor: 37,045 bytes, lines 13-19
13/*! 14 * Bootstrap v3.3.7 (http://getbootstrap.com) 15 * Copyright 2011-2016 Twitter, Inc. 16 * Licensed under the MIT license 17 */ 18if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(a){"use strict";var b=a.fn.jquery.split(" ")[0].split(".");if(b[0]<2&&b[1]<9||1==b[0]&&9==b[1]&&b[2]<1||b[0]>3)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4")}(jQuery),+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one("bsTransitionEnd",function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b(),a.support.transition&&(a.event.special.bsTransitionEnd={bindType:a.support.transition.end,delegateType:a.support.transition.end,handle:function(b){if(a(b.target).is(this))return b.handleObj.handler.apply(this,arguments)}})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var c=a(this),e=c.data("bs.alert");e||c.data("bs.alert",e=new d(this)),"string"==typeof b&&e[b].call(c)})}var c='[data-dismiss="alert"]',d=function(b){a(b).on("click",c,this.close)};d.VERSION="3.3.7",d.TRANSITION_DURATION=150,d.prototype.close=function(b){function c(){g.detach().trigger("closed.bs.alert").remove()}var e=a(this),f=e.attr("data-target");f||(f=e.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,""));var g=a("#"===f?[]:f);b&&b.preventDefault(),g.length||(g=e.closest(".alert")),g.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(g.removeClass("in"),a.support.transition&&g.hasClass("fade")?g.one("bsTransitionEnd",c).emulateTransitionEnd(d.TRANSITION_DURATION):c())};var e=a.fn.alert;a.fn.alert=b,a.fn.alert.Constructor=d,a.fn.alert.noConflict=function(){return a.fn.alert=e,this},a(document).on("click.bs.alert.data-api",c,d.prototype.close)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof b&&b;e||d.data("bs.button",e=new c(this,f)),"toggle"==b?e.toggle():b&&e.setState(b)})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.isLoading=!1};c.VERSION="3.3.7",c.DEFAULTS={loadingText:"loading..."},c.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",null==f.resetText&&d.data("resetText",d[e]()),setTimeout(a.proxy(function(){d[e](null==f[b]?this.options[b]:f[b]),"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c).prop(c,!0)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c).prop(c,!1))},this),0)},c.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")?(c.prop("checked")&&(a=!1),b.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==c.prop("type")&&(c.prop("checked")!==this.$element.hasClass("active")&&(a=!1),this.$element.toggleClass("active")),c.prop("checked",this.$element.hasClass("active")),a&&c.trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active")};var d=a.fn.button;a.fn.button=b,a.fn.button.Constructor=c,a.fn.button.noConflict=function(){return a.fn.button=d,this},a(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(c){var d=a(c.target).closest(".btn");b.call(d,"toggle"),a(c.target).is('input[type="radio"], input[type="checkbox"]')||(c.preventDefault(),d.is("input,button")?d.trigger("focus"):d.find("input:visible,button:visible").first().trigger("focus"))}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(b){a(b.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(b.type))})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},c.DEFAULTS,d.data(),"object"==typeof b&&b),g="string"==typeof b?b:f.slide;e||d.data("bs.carousel",e=new c(this,f)),"number"==typeof b?e.to(b):g?e[g]():f.interval&&e.pause().cycle()})}var c=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",a.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",a.proxy(this.pause,this)).on("mouseleave.bs.carousel",a.proxy(this.cycle,this))};c.VERSION="3.3.7",c.TRANSITION_DURATION=600,c.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},c.prototype.keydown=function(a){if(!/input|textarea/i.test(a.target.tagName)){switch(a.which){case 37:this.prev();break;case 39:this.next();break;default:return}a.preventDefault()}},c.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},c.prototype.getItemIndex=function(a){return this.$items=a.parent().children(".item"),this.$items.index(a||this.$active)},c.prototype.getItemForDirection=function(a,b){var c=this.getItemIndex(b),d="prev"==a&&0===c||"next"==a&&c==this.$items.length-1;if(d&&!this.options.wrap)return b;var e="prev"==a?-1:1,f=(c+e)%this.$items.length;return this.$items.eq(f)},c.prototype.to=function(a){var b=this,c=this.getItemIndex(this.$active=this.$element.find(".item.active"));if(!(a>this.$items.length-1||a<0))return this.sliding?this.$element.one("slid.bs.carousel",function(){b.to(a)}):c==a?this.pause().cycle():this.slide(a>c?"next":"prev",this.$items.eq(a))},c.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},c.prototype.next=function(){if(!this.sliding)return this.slide("next")},c.prototype.prev=function(){if(!this.sliding)return this.slide("prev")},c.prototype.slide=function(b,d){var e=this.$element.find(".item.active"),f=d||this.getItemForDirection(b,e),g=this.interval,h="next"==b?"left":"right",i=this;if(f.hasClass("active"))return this.sliding=!1;var j=f[0],k=a.Event("slide.bs.carousel",{relatedTarget:j,direction:h});if(this.$element.trigger(k),!k.isDefaultPrevented()){if(this.sliding=!0,g&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var l=a(this.$indicators.children()[this.getItemIndex(f)]);l&&l.addClass("active")}var m=a.Event("slid.bs.carousel",{relatedTarget:j,direction:h});return a.support.transition&&this.$element.hasClass("slide")?(f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),e.one("bsTransitionEnd",function(){f.removeClass([b,h].join(" ")).addClass("active"),e.removeClass(["active",h].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger(m)},0)}).emulateTransitionEnd(c.TRANSITION_DURATION)):(e.removeClass("active"),f.addClass("active"),this.sliding=!1,this.$element.trigger(m)),g&&this.cycle(),this}};var d=a.fn.carousel;a.fn.carousel=b,a.fn.carousel.Constructor=c,a.fn.carousel.noConflict=function(){return a.fn.carousel=d,this};var e=function(c){var d,e=a(this),f=a(e.attr("data-target")||(d=e.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""));if(f.hasClass("carousel")){var g=a.extend({},f.data(),e.data()),h=e.attr("data-slide-to");h&&(g.interval=!1),b.call(f,g),h&&f.data("bs.carousel").to(h),c.preventDefault()}};a(document).on("click.bs.carousel.data-api","[data-slide]",e).on("click.bs.carousel.data-api","[data-slide-to]",e),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var c=a(this);b.call(c,c.data())})})}(jQuery),+function(a){"use strict";function b(b){var c,d=b.attr("data-target")||(c=b.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"");return a(d)}function c(b){return this.each(function(){var c=a(this),e=c.data("bs.collapse"),f=a.extend({},d.DEFAULTS,c.data(),"object"==typeof b&&b);!e&&f.toggle&&/show|hide/.test(b)&&(f.toggle=!1),e||c.data("bs.collapse",e=new d(this,f)),"string"==typeof b&&e[b]()})}var d=function(b,c){this.$element=a(b),this.options=a.extend({},d.DEFAULTS,c),this.$trigger=a('[data-toggle="collapse"][href="#'+b.id+'"],[data-toggle="collapse"][data-target="#'+b.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};d.VERSION="3.3.7",d.TRANSITION_DURATION=350,d.DEFAULTS={toggle:!0},d.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},d.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b,e=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(e&&e.length&&(b=e.data("bs.collapse"),b&&b.transitioning))){var f=a.Event("show.bs.collapse");if(this.$element.trigger(f),!f.isDefaultPrevented()){e&&e.length&&(c.call(e,"hide"),b||e.data("bs.collapse",null));var g=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[g](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var h=function(){this.$element.removeClass("collapsing").addClass("collapse in")[g](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return h.call(this);var i=a.camelCase(["scroll",g].join("-"));this.$element.one("bsTransitionEnd",a.proxy(h,this)).emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])}}}},d.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var e=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return a.support.transition?void this.$element[c](0).one("bsTransitionEnd",a.proxy(e,this)).emulateTransitionEnd(d.TRANSITION_DURATION):e.call(this)}}},d.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},d.prototype.getParent=function(){return a(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(a.proxy(function(c,d){var e=a(d);this.addAriaAndCollapsedClass(b(e),e)},this)).end()},d.prototype.addAriaAndCollapsedClass=function(a,b){var c=a.hasClass("in");a.attr("aria-expanded",c),b.toggleClass("collapsed",!c).attr("aria-expanded",c)};var e=a.fn.collapse;a.fn.collapse=c,a.fn.collapse.Constructor=d,a.fn.collapse.noConflict=function(){return a.fn.collapse=e,this},a(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(d){var e=a(this);e.attr("data-target")||d.preventDefault();var f=b(e),g=f.data("bs.collapse"),h=g?"toggle":e.data();c.call(f,h)})}(jQuery),+function(a){"use strict";function b(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}function c(c){c&&3===c.which||(a(e).remove(),a(f).each(function(){var d=a(this),e=b(d),f={relatedTarget:this};e.hasClass("open")&&(c&&"click"==c.type&&/input|textarea/i.test(c.target.tagName)&&a.contains(e[0],c.target)||(e.trigger(c=a.Event("hide.bs.dropdown",f)),c.isDefaultPrevented()||(d.attr("aria-expanded","false"),e.removeClass("open").trigger(a.Event("hidden.bs.dropdown",f)))))}))}function d(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new g(this)),"string"==typeof b&&d[b].call(c)})}var e=".dropdown-backdrop",f='[data-toggle="dropdown"]',g=function(b){a(b).on("click.bs.dropdown",this.toggle)};g.VERSION="3.3.7",g.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=b(e),g=f.hasClass("open");if(c(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(a(this)).on("click",c);var h={relatedTarget:this};if(f.trigger(d=a.Event("show.bs.dropdown",h)),d.isDefaultPrevented())return;e.trigger("focus").attr("aria-expanded","true"),f.toggleClass("open").trigger(a.Event("shown.bs.dropdown",h))}return!1}},g.prototype.keydown=function(c){if(/(38|40|27|32)/.test(c.which)&&!/input|textarea/i.test(c.target.tagName)){var d=a(this);if(c.preventDefault(),c.stopPropagation(),!d.is(".disabled, :disabled")){var e=b(d),g=e.hasClass("open");if(!g&&27!=c.which||g&&27==c.which)return 27==c.which&&e.find(f).trigger("focus"),d.trigger("click");var h=" li:not(.disabled):visible a",i=e.find(".dropdown-menu"+h);if(i.length){var j=i.index(c.target);38==c.which&&j>0&&j--,40==c.which&&j<i.length-1&&j++,~j||(j=0),i.eq(j).trigger("focus")}}}};var h=a.fn.dropdown;a.fn.dropdown=d,a.fn.dropdown.Constructor=g,a.fn.dropdown.noConflict=function(){return a.fn.dropdown=h,this},a(document).on("click.bs.dropdown.data-api",c).on("click.bs.dropdown.data-api",".dropdown form",function(a){a.stopPropagation()}).on("click.bs.dropdown.data-api",f,g.prototype.toggle).on("keydown.bs.dropdown.data-api",f,g.prototype.keydown).on("keydown.bs.dropdown.data-api",".dropdown-menu",g.prototype.keydown)}(jQuery),+function(a){"use strict";function b(b,d){return this.each(function(){var e=a(this),f=e.data("bs.modal"),g=a.extend({},c.DEFAULTS,e.data(),"object"==typeof b&&b);f||e.data("bs.modal",f=new c(this,g)),"string"==typeof b?f[b](d):g.show&&f.show(d)})}var c=function(b,c){this.options=c,this.$body=a(document.body),this.$element=a(b),this.$dialog=this.$element.find(".modal-dialog"),this.$backdrop=null,this.isShown=null,this.originalBodyPad=null,this.scrollbarWidth=0,this.ignoreBackdropClick=!1,this.options.remote&&this.$element.find(".modal-content").load(this.options.remote,a.proxy(function(){this.$element.trigger("loaded.bs.modal")},this))};c.VERSION="3.3.7",c.TRANSITION_DURATION=300,c.BACKDROP_TRANSITION_DURATION=150,c.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},c.prototype.toggle=function(a){return this.isShown?this.hide():this.show(a)},c.prototype.show=function(b){var d=this,e=a.Event("show.bs.modal",{relatedTarget:b});this.$element.trigger(e),this.isShown||e.isDefaultPrevented()||(this.isShown=!0,this.checkScrollbar(),this.setScrollbar(),this.$body.addClass("modal-open"),this.escape(),this.resize(),this.$element.on("click.dismiss.bs.modal",'[data-dismiss="modal"]',a.proxy(this.hide,this)),this.$dialog.on("mousedown.dismiss.bs.modal",function(){d.$element.one("mouseup.dismiss.bs.modal",function(b){a(b.target).is(d.$element)&&(d.ignoreBackdropClick=!0)})}),this.backdrop(function(){var e=a.support.transition&&d.$element.hasClass("fade");d.$element.parent().length||d.$element.appendTo(d.$body),d.$element.show().scrollTop(0),d.adjustDialog(),e&&d.$element[0].offsetWidth,d.$element.addClass("in"),d.enforceFocus();var f=a.Event("shown.bs.modal",{relatedTarget:b});e?d.$dialog.one("bsTransitionEnd",function(){d.$element.trigger("focus").trigger(f)}).emulateTransitionEnd(c.TRANSITION_DURATION):d.$element.trigger("focus").trigger(f)}))},c.prototype.hide=function(b){b&&b.preventDefault(),b=a.Event("hide.bs.modal"),this.$element.trigger(b),this.isShown&&!b.isDefaultPrevented()&&(this.isShown=!1,this.escape(),this.resize(),a(document).off("focusin.bs.modal"),this.$element.removeClass("in").off("click.dismiss.bs.modal").off("mouseup.dismiss.bs.modal"),this.$dialog.off("mousedown.dismiss.bs.modal"),a.support.transition&&this.$element.hasClass("fade")?this.$element.one("bsTransitionEnd",a.proxy(this.hideModal,this)).emulateTransitionEnd(c.TRANSITION_DURATION):this.hideModal())},c.prototype.enforceFocus=function(){a(document).off("focusin.bs.modal").on("focusin.bs.modal",a.proxy(function(a){document===a.target||this.$element[0]===a.target||this.$element.has(a.target).length||this.$element.trigger("focus")},this))},c.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keydown.dismiss.bs.modal",a.proxy(function(a){27==a.which&&this.hide()},this)):this.isShown||this.$element.off("keydown.dismiss.bs.modal")},c.prototype.resize=function(){this.isShown?a(window).on("resize.bs.modal",a.proxy(this.handleUpdate,this)):a(window).off("resize.bs.modal")},c.prototype.hideModal=function(){var a=this;this.$element.hide(),this.backdrop(function(){a.$body.removeClass("modal-open"),a.resetAdjustments(),a.resetScrollbar(),a.$element.trigger("hidden.bs.modal")})},c.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},c.prototype.backdrop=function(b){var d=this,e=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var f=a.support.transition&&e;if(this.$backdrop=a(document.createElement("div")).addClass("modal-backdrop "+e).appendTo(this.$body),this.$element.on("click.dismiss.bs.modal",a.proxy(function(a){return this.ignoreBackdropClick?void(this.ignoreBackdropClick=!1):void(a.target===a.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus():this.hide()))},this)),f&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!b)return;f?this.$backdrop.one("bsTransitionEnd",b).emulateTransitionEnd(c.BACKDROP_TRANSITION_DURATION):b()}else if(!this.isShown&&this.$backdrop){this.$backdrop.removeClass("in");var g=function(){d.removeBackdrop(),b&&b()};a.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one("bsTransitionEnd",g).emulateTransitionEnd(c.BACKDROP_TRANSITION_DURATION):g()}else b&&b()},c.prototype.handleUpdate=function(){this.adjustDialog()},c.prototype.adjustDialog=function(){var a=this.$element[0].scrollHeight>document.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&a?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!a?this.scrollbarWidth:""})},c.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},c.prototype.checkScrollbar=function(){var a=window.innerWidth;if(!a){var b=document.documentElement.getBoundingClientRect();a=b.right-Math.abs(b.left)}this.bodyIsOverflowing=document.body.clientWidth<a,this.scrollbarWidth=this.measureScrollbar()},c.prototype.setScrollbar=function(){var a=parseInt(this.$body.css("padding-right")||0,10);this.originalBodyPad=document.body.style.paddingRight||"",this.bodyIsOverflowing&&this.$body.css("padding-right",a+this.scrollbarWidth)},c.prototype.resetScrollbar=function(){this.$body.css("padding-right",this.originalBodyPad)},c.prototype.measureScrollbar=function(){var a=document.createElement("div");a.className="modal-scrollbar-measure",this.$body.append(a);var b=a.offsetWidth-a.clientWidth;return this.$body[0].removeChild(a),b};var d=a.fn.modal;a.fn.modal=b,a.fn.modal.Constructor=c,a.fn.modal.noConflict=function(){return a.fn.modal=d,this},a(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(c){var d=a(this),e=d.attr("href"),f=a(d.attr("data-target")||e&&e.replace(/.*(?=#[^\s]+$)/,"")),g=f.data("bs.modal")?"toggle":a.extend({remote:!/#/.test(e)&&e},f.data(),d.data());d.is("a")&&c.preventDefault(),f.one("show.bs.modal",function(a){a.isDefaultPrevented()||f.one("hidden.bs.modal",function(){d.is(":visible")&&d.trigger("focus")})}),b.call(f,g,this)})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.tooltip"),f="object"==typeof b&&b;!e&&/destroy|hide/.test(b)||(e||d.data("bs.tooltip",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.type=null,this.options=null,this.enabled=null,this.timeout=null,this.hoverState=null,this.$element=null,this.inState=null,this.init("tooltip",a,b)};c.VERSION="3.3.7",c.TRANSITION_DURATION=150,c.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},c.prototype.init=function(b,c,d){if(this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.$viewport=this.options.viewport&&a(a.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focusin",i="hover"==g?"mouseleave":"focusout";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},c.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},c.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusin"==b.type?"focus":"hover"]=!0),c.tip().hasClass("in")||"in"==c.hoverState?void(c.hoverState="in"):(clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show())},c.prototype.isInStateTrue=function(){for(var a in this.inState)if(this.inState[a])return!0;return!1},c.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);if(c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusout"==b.type?"focus":"hover"]=!1),!c.isInStateTrue())return clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide()},c.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);var d=a.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(b.isDefaultPrevented()||!d)return;var e=this,f=this.tip(),g=this.getUID(this.type);this.setContent(),f.attr("id",g),this.$element.attr("aria-describedby",g),this.options.animation&&f.addClass("fade");var h="function"==typeof this.options.placement?this.options.placement.call(this,f[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,j=i.test(h);j&&(h=h.replace(i,"")||"top"),f.detach().css({top:0,left:0,display:"block"}).addClass(h).data("bs."+this.type,this),this.options.container?f.appendTo(this.options.container):f.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var k=this.getPosition(),l=f[0].offsetWidth,m=f[0].offsetHeight;if(j){var n=h,o=this.getPosition(this.$viewport);h="bottom"==h&&k.bottom+m>o.bottom?"top":"top"==h&&k.top-m<o.top?"bottom":"right"==h&&k.right+l>o.width?"left":"left"==h&&k.left-l<o.left?"right":h,f.removeClass(n).addClass(h)}var p=this.getCalculatedOffset(h,k,l,m);this.applyPlacement(p,h);var q=function(){var a=e.hoverState;e.$element.trigger("shown.bs."+e.type),e.hoverState=null,"out"==a&&e.leave(e)};a.support.transition&&this.$tip.hasClass("fade")?f.one("bsTransitionEnd",q).emulateTransitionEnd(c.TRANSITION_DURATION):q()}},c.prototype.applyPlacement=function(b,c){var d=this.tip(),e=d[0].offsetWidth,f=d[0].offsetHeight,g=parseInt(d.css("margin-top"),10),h=parseInt(d.css("margin-left"),10);isNaN(g)&&(g=0),isNaN(h)&&(h=0),b.top+=g,b.left+=h,a.offset.setOffset(d[0],a.extend({using:function(a){d.css({top:Math.round(a.top),left:Math.round(a.left)})}},b),0),d.addClass("in");var i=d[0].offsetWidth,j=d[0].offsetHeight;"top"==c&&j!=f&&(b.top=b.top+f-j);var k=this.getViewportAdjustedDelta(c,b,i,j);k.left?b.left+=k.left:b.top+=k.top;var l=/top|bottom/.test(c),m=l?2*k.left-e+i:2*k.top-f+j,n=l?"offsetWidth":"offsetHeight";d.offset(b),this.replaceArrow(m,d[0][n],l)},c.prototype.replaceArrow=function(a,b,c){this.arrow().css(c?"left":"top",50*(1-a/b)+"%").css(c?"top":"left","")},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle();a.find(".tooltip-inner")[this.options.html?"html":"text"](b),a.removeClass("fade in top bottom left right")},c.prototype.hide=function(b){function d(){"in"!=e.hoverState&&f.detach(),e.$element&&e.$element.removeAttr("aria-describedby").trigger("hidden.bs."+e.type),b&&b()}var e=this,f=a(this.$tip),g=a.Event("hide.bs."+this.type);if(this.$element.trigger(g),!g.isDefaultPrevented())return f.removeClass("in"),a.support.transition&&f.hasClass("fade")?f.one("bsTransitionEnd",d).emulateTransitionEnd(c.TRANSITION_DURATION):d(),this.hoverState=null,this},c.prototype.fixTitle=function(){var a=this.$element;(a.attr("title")||"string"!=typeof a.attr("data-original-title"))&&a.attr("data-original-title",a.attr("title")||"").attr("title","")},c.prototype.hasContent=function(){return this.getTitle()},c.prototype.getPosition=function(b){b=b||this.$element;var c=b[0],d="BODY"==c.tagName,e=c.getBoundingClientRect();null==e.width&&(e=a.extend({},e,{width:e.right-e.left,height:e.bottom-e.top}));var f=window.SVGElement&&c instanceof window.SVGElement,g=d?{top:0,left:0}:f?null:b.offset(),h={scroll:d?document.documentElement.scrollTop||document.body.scrollTop:b.scrollTop()},i=d?{width:a(window).width(),height:a(window).height()}:null;return a.extend({},e,h,i,g)},c.prototype.getCalculatedOffset=function(a,b,c,d){return"bottom"==a?{top:b.top+b.height,left:b.left+b.width/2-c/2}:"top"==a?{top:b.top-d,left:b.left+b.width/2-c/2}:"left"==a?{top:b.top+b.height/2-d/2,left:b.left-c}:{top:b.top+b.height/2-d/2,left:b.left+b.width}},c.prototype.getViewportAdjustedDelta=function(a,b,c,d){var e={top:0,left:0};if(!this.$viewport)return e;var f=this.options.viewport&&this.options.viewport.padding||0,g=this.getPosition(this.$viewport);if(/right|left/.test(a)){var h=b.top-f-g.scroll,i=b.top+f-g.scroll+d;h<g.top?e.top=g.top-h:i>g.top+g.height&&(e.top=g.top+g.height-i)}else{var j=b.left-f,k=b.left+f+c;j<g.left?e.left=g.left-j:k>g.right&&(e.left=g.left+g.width-k)}return e},c.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},c.prototype.getUID=function(a){do a+=~~(1e6*Math.random());while(document.getElementById(a));return a},c.prototype.tip=function(){if(!this.$tip&&(this.$tip=a(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},c.prototype.enable=function(){this.enabled=!0},c.prototype.disable=function(){this.enabled=!1},c.prototype.toggleEnabled=function(){this.enabled=!this.enabled},c.prototype.toggle=function(b){var c=this;b&&(c=a(b.currentTarget).data("bs."+this.type),c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c))),b?(c.inState.click=!c.inState.click,c.isInStateTrue()?c.enter(c):c.leave(c)):c.tip().hasClass("in")?c.leave(c):c.enter(c)},c.prototype.destroy=function(){var a=this;clearTimeout(this.timeout),this.hide(function(){a.$element.off("."+a.type).removeData("bs."+a.type),a.$tip&&a.$tip.detach(),a.$tip=null,a.$arrow=null,a.$viewport=null,a.$element=null})};var d=a.fn.tooltip;a.fn.tooltip=b,a.fn.tooltip.Constructor=c,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=d,this}}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof b&&b;!e&&/destroy|hide/.test(b)||(e||d.data("bs.popover",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");c.VERSION="3.3.7",c.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),c.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),c.prototype.constructor=c,c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof c?"html":"append":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},c.prototype.hasContent=function(){return this.getTitle()||this.getContent()},c.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var d=a.fn.popover;a.fn.popover=b,a.fn.popover.Constructor=c,a.fn.popover.noConflict=function(){return a.fn.popover=d,this}}(jQuery),+function(a){"use strict";function b(c,d){this.$body=a(document.body),this.$scrollElement=a(a(c).is(document.body)?window:c),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",a.proxy(this.process,this)),this.refresh(),this.process()}function c(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})}b.VERSION="3.3.7",b.DEFAULTS={offset:10},b.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},b.prototype.refresh=function(){var b=this,c="offset",d=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),a.isWindow(this.$scrollElement[0])||(c="position",d=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var b=a(this),e=b.data("target")||b.attr("href"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(":visible")&&[[f[c]().top+d,e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.getScrollHeight(),d=this.options.offset+c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(this.scrollHeight!=c&&this.refresh(),b>=d)return g!=(a=f[f.length-1])&&this.activate(a);if(g&&b<e[0])return this.activeTarget=null,this.clear();for(a=e.length;a--;)g!=f[a]&&b>=e[a]&&(void 0===e[a+1]||b<e[a+1])&&this.activate(f[a])},b.prototype.activate=function(b){ 19this.activeTarget=b,this.clear();var c=this.selector+'[data-target="'+b+'"],'+this.selector+'[href="'+b+'"]',d=a(c).parents("li").addClass("active");d.parent(".dropdown-menu").length&&(d=d.closest("li.dropdown").addClass("active")),d.trigger("activate.bs.scrollspy")},b.prototype.clear=function(){a(this.selector).parentsUntil(this.options.target,".active").removeClass("active")};var d=a.fn.scrollspy;a.fn.scrollspy=c,a.fn.scrollspy.Constructor=b,a.fn.scrollspy.noConflict=function(){return a.fn.scrollspy=d,this},a(window).on("load.bs.scrollspy.data-api",function(){a('[data-spy="scroll"]').each(function(){var b=a(this);c.call(b,b.data())})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.tab");e||d.data("bs.tab",e=new c(this)),"string"==typeof b&&e[b]()})}var c=function(b){this.element=a(b)};c.VERSION="3.3.7",c.TRANSITION_DURATION=150,c.prototype.show=function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.data("target");if(d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),!b.parent("li").hasClass("active")){var e=c.find(".active:last a"),f=a.Event("hide.bs.tab",{relatedTarget:b[0]}),g=a.Event("show.bs.tab",{relatedTarget:e[0]});if(e.trigger(f),b.trigger(g),!g.isDefaultPrevented()&&!f.isDefaultPrevented()){var h=a(d);this.activate(b.closest("li"),c),this.activate(h,h.parent(),function(){e.trigger({type:"hidden.bs.tab",relatedTarget:b[0]}),b.trigger({type:"shown.bs.tab",relatedTarget:e[0]})})}}},c.prototype.activate=function(b,d,e){function f(){g.removeClass("active").find("> .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),b.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),h?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu").length&&b.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),e&&e()}var g=d.find("> .active"),h=e&&a.support.transition&&(g.length&&g.hasClass("fade")||!!d.find("> .fade").length);g.length&&h?g.one("bsTransitionEnd",f).emulateTransitionEnd(c.TRANSITION_DURATION):f(),g.removeClass("in")};var d=a.fn.tab;a.fn.tab=b,a.fn.tab.Constructor=c,a.fn.tab.noConflict=function(){return a.fn.tab=d,this};var e=function(c){c.preventDefault(),b.call(a(this),"show")};a(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',e).on("click.bs.tab.data-api",'[data-toggle="pill"]',e)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof b&&b;e||d.data("bs.affix",e=new c(this,f)),"string"==typeof b&&e[b]()})}var c=function(b,d){this.options=a.extend({},c.DEFAULTS,d),this.$target=a(this.options.target).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(b),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};c.VERSION="3.3.7",c.RESET="affix affix-top affix-bottom",c.DEFAULTS={offset:0,target:window},c.prototype.getState=function(a,b,c,d){var e=this.$target.scrollTop(),f=this.$element.offset(),g=this.$target.height();if(null!=c&&"top"==this.affixed)return e<c&&"top";if("bottom"==this.affixed)return null!=c?!(e+this.unpin<=f.top)&&"bottom":!(e+g<=a-d)&&"bottom";var h=null==this.affixed,i=h?e:f.top,j=h?g:b;return null!=c&&e<=c?"top":null!=d&&i+j>=a-d&&"bottom"},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass("affix");var a=this.$target.scrollTop(),b=this.$element.offset();return this.pinnedOffset=b.top-a},c.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(":visible")){var b=this.$element.height(),d=this.options.offset,e=d.top,f=d.bottom,g=Math.max(a(document).height(),a(document.body).height());"object"!=typeof d&&(f=e=d),"function"==typeof e&&(e=d.top(this.$element)),"function"==typeof f&&(f=d.bottom(this.$element));var h=this.getState(g,b,e,f);if(this.affixed!=h){null!=this.unpin&&this.$element.css("top","");var i="affix"+(h?"-"+h:""),j=a.Event(i+".bs.affix");if(this.$element.trigger(j),j.isDefaultPrevented())return;this.affixed=h,this.unpin="bottom"==h?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(i).trigger(i.replace("affix","affixed")+".bs.affix")}"bottom"==h&&this.$element.offset({top:g-b-f})}};var d=a.fn.affix;a.fn.affix=b,a.fn.affix.Constructor=c,a.fn.affix.noConflict=function(){return a.fn.affix=d,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var c=a(this),d=c.data();d.offset=d.offset||{},null!=d.offsetBottom&&(d.offset.bottom=d.offsetBottom),null!=d.offsetTop&&(d.offset.top=d.offsetTop),b.call(c,d)})})}(jQuery);
vendor: 7,564 bytes, lines 19-45
19 20 21/*! 22 * imagesLoaded PACKAGED v4.1.4 23 * JavaScript is all like "You images are done yet or what?" 24 * MIT License 25 */ 26 27!function(e,t){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",t):"object"==typeof module&&module.exports?module.exports=t():e.EvEmitter=t()}("undefined"!=typeof window?window:this,function(){function e(){}var t=e.prototype;return t.on=function(e,t){if(e&&t){var i=this._events=this._events||{},n=i[e]=i[e]||[];return n.indexOf(t)==-1&&n.push(t),this}},t.once=function(e,t){if(e&&t){this.on(e,t);var i=this._onceEvents=this._onceEvents||{},n=i[e]=i[e]||{};return n[t]=!0,this}},t.off=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){var n=i.indexOf(t);return n!=-1&&i.splice(n,1),this}},t.emitEvent=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){i=i.slice(0),t=t||[];for(var n=this._onceEvents&&this._onceEvents[e],o=0;o<i.length;o++){var r=i[o],s=n&&n[r];s&&(this.off(e,r),delete n[r]),r.apply(this,t)}return this}},t.allOff=function(){delete this._events,delete this._onceEvents},e}),function(e,t){"use strict";"function"==typeof define&&define.amd?define(["ev-emitter/ev-emitter"],function(i){return t(e,i)}):"object"==typeof module&&module.exports?module.exports=t(e,require("ev-emitter")):e.imagesLoaded=t(e,e.EvEmitter)}("undefined"!=typeof window?window:this,function(e,t){function i(e,t){for(var i in t)e[i]=t[i];return e}function n(e){if(Array.isArray(e))return e;var t="object"==typeof e&&"number"==typeof e.length;return t?d.call(e):[e]}function o(e,t,r){if(!(this instanceof o))return new o(e,t,r);var s=e;return"string"==typeof e&&(s=document.querySelectorAll(e)),s?(this.elements=n(s),this.options=i({},this.options),"function"==typeof t?r=t:i(this.options,t),r&&this.on("always",r),this.getImages(),h&&(this.jqDeferred=new h.Deferred),void setTimeout(this.check.bind(this))):void a.error("Bad element for imagesLoaded "+(s||e))}function r(e){this.img=e}function s(e,t){this.url=e,this.element=t,this.img=new Image}var h=e.jQuery,a=e.console,d=Array.prototype.slice;o.prototype=Object.create(t.prototype),o.prototype.options={},o.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImages,this)},o.prototype.addElementImages=function(e){"IMG"==e.nodeName&&this.addImage(e),this.options.background===!0&&this.addElementBackgroundImages(e);var t=e.nodeType;if(t&&u[t]){for(var i=e.querySelectorAll("img"),n=0;n<i.length;n++){var o=i[n];this.addImage(o)}if("string"==typeof this.options.background){var r=e.querySelectorAll(this.options.background);for(n=0;n<r.length;n++){var s=r[n];this.addElementBackgroundImages(s)}}}};var u={1:!0,9:!0,11:!0};return o.prototype.addElementBackgroundImages=function(e){var t=getComputedStyle(e);if(t)for(var i=/url\((['"])?(.*?)\1\)/gi,n=i.exec(t.backgroundImage);null!==n;){var o=n&&n[2];o&&this.addBackground(o,e),n=i.exec(t.backgroundImage)}},o.prototype.addImage=function(e){var t=new r(e);this.images.push(t)},o.prototype.addBackground=function(e,t){var i=new s(e,t);this.images.push(i)},o.prototype.check=function(){function e(e,i,n){setTimeout(function(){t.progress(e,i,n)})}var t=this;return this.progressedCount=0,this.hasAnyBroken=!1,this.images.length?void this.images.forEach(function(t){t.once("progress",e),t.check()}):void this.complete()},o.prototype.progress=function(e,t,i){this.progressedCount++,this.hasAnyBroken=this.hasAnyBroken||!e.isLoaded,this.emitEvent("progress",[this,e,t]),this.jqDeferred&&this.jqDeferred.notify&&this.jqDeferred.notify(this,e),this.progressedCount==this.images.length&&this.complete(),this.options.debug&&a&&a.log("progress: "+i,e,t)},o.prototype.complete=function(){var e=this.hasAnyBroken?"fail":"done";if(this.isComplete=!0,this.emitEvent(e,[this]),this.emitEvent("always",[this]),this.jqDeferred){var t=this.hasAnyBroken?"reject":"resolve";this.jqDeferred[t](this)}},r.prototype=Object.create(t.prototype),r.prototype.check=function(){var e=this.getIsImageComplete();return e?void this.confirm(0!==this.img.naturalWidth,"naturalWidth"):(this.proxyImage=new Image,this.proxyImage.addEventListener("load",this),this.proxyImage.addEventListener("error",this),this.img.addEventListener("load",this),this.img.addEventListener("error",this),void(this.proxyImage.src=this.img.src))},r.prototype.getIsImageComplete=function(){return this.img.complete&&this.img.naturalWidth},r.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.img,t])},r.prototype.handleEvent=function(e){var t="on"+e.type;this[t]&&this[t](e)},r.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindEvents()},r.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindEvents()},r.prototype.unbindEvents=function(){this.proxyImage.removeEventListener("load",this),this.proxyImage.removeEventListener("error",this),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype=Object.create(r.prototype),s.prototype.check=function(){this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.img.src=this.url;var e=this.getIsImageComplete();e&&(this.confirm(0!==this.img.naturalWidth,"naturalWidth"),this.unbindEvents())},s.prototype.unbindEvents=function(){this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.element,t])},o.makeJQueryPlugin=function(t){t=t||e.jQuery,t&&(h=t,h.fn.imagesLoaded=function(e,t){var i=new o(this,e,t);return i.jqDeferred.promise(h(this))})},o.makeJQueryPlugin(),o}); 28 29/* 30 _ _ _ _ 31 ___| (_) ___| | __ (_)___ 32/ __| | |/ __| |/ / | / __| 33\__ \ | | (__| < _ | \__ \ 34|___/_|_|\___|_|\_(_)/ |___/ 35 |__/ 36 37 Version: 1.6.0 38 Author: Ken Wheeler 39 Website: http://kenwheeler.github.io 40 Docs: http://kenwheeler.github.io/slick 41 Repo: http://github.com/kenwheeler/slick 42 Issues: http://github.com/kenwheeler/slick/issues 43 44 */ 45!function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):"undefined"!=typeof exports?module.exports=a(require("jquery")):a(jQuery)}(function(a){"use strict";var b=window.Slick||{};b=function(){function c(c,d){var f,e=this;e.defaults={accessibility:!0,adaptiveHeight:!1,appendArrows:a(c),appendDots:a(c),arrows:!0,asNavFor:null,prevArrow:'<button type="button" data-role="none" class="slick-prev" aria-label="Previous" tabindex="0" role="button">Previous</button>',nextArrow:'<button type="button" data-role="none" class="slick-next" aria-label="Next" tabindex="0" role="button">Next</button>',autoplay:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:"50px",cssEase:"ease",customPaging:function(b,c){return a('<button type="button" data-role="none" role="button" tabindex="0" />').text(c+1)},dots:!1,dotsClass:"slick-dots",draggable:!0,easing:"linear",edgeFriction:.35,fade:!1,focusOnSelect:!1,infinite:!0,initialSlide:0,lazyLoad:"ondemand",mobileFirst:!1,pauseOnHover:!0,pauseOnFocus:!0,pauseOnDotsHover:!1,respondTo:"window",responsive:null,rows:1,rtl:!1,slide:"",slidesPerRow:1,slidesToShow:1,slidesToScroll:1,speed:500,swipe:!0,swipeToSlide:!1,touchMove:!0,touchThreshold:5,useCSS:!0,useTransform:!0,variableWidth:!1,vertical:!1,verticalSwiping:!1,waitForAnimate:!0,zIndex:1e3},e.initials={animating:!1,dragging:!1,autoPlayTimer:null,currentDirection:0,currentLeft:null,currentSlide:0,direction:1,$dots:null,listWidth:null,listHeight:null,loadIndex:0,$nextArrow:null,$prevArrow:null,slideCount:null,slideWidth:null,$slideTrack:null,$slides:null,
vendor: 9,458 bytes, line 45
45sliding:!1,slideOffset:0,swipeLeft:null,$list:null,touchObject:{},transformsEnabled:!1,unslicked:!1},a.extend(e,e.initials),e.activeBreakpoint=null,e.animType=null,e.animProp=null,e.breakpoints=[],e.breakpointSettings=[],e.cssTransitions=!1,e.focussed=!1,e.interrupted=!1,e.hidden="hidden",e.paused=!0,e.positionProp=null,e.respondTo=null,e.rowCount=1,e.shouldClick=!0,e.$slider=a(c),e.$slidesCache=null,e.transformType=null,e.transitionType=null,e.visibilityChange="visibilitychange",e.windowWidth=0,e.windowTimer=null,f=a(c).data("slick")||{},e.options=a.extend({},e.defaults,d,f),e.currentSlide=e.options.initialSlide,e.originalSettings=e.options,"undefined"!=typeof document.mozHidden?(e.hidden="mozHidden",e.visibilityChange="mozvisibilitychange"):"undefined"!=typeof document.webkitHidden&&(e.hidden="webkitHidden",e.visibilityChange="webkitvisibilitychange"),e.autoPlay=a.proxy(e.autoPlay,e),e.autoPlayClear=a.proxy(e.autoPlayClear,e),e.autoPlayIterator=a.proxy(e.autoPlayIterator,e),e.changeSlide=a.proxy(e.changeSlide,e),e.clickHandler=a.proxy(e.clickHandler,e),e.selectHandler=a.proxy(e.selectHandler,e),e.setPosition=a.proxy(e.setPosition,e),e.swipeHandler=a.proxy(e.swipeHandler,e),e.dragHandler=a.proxy(e.dragHandler,e),e.keyHandler=a.proxy(e.keyHandler,e),e.instanceUid=b++,e.htmlExpr=/^(?:\s*(<[\w\W]+>)[^>]*)$/,e.registerBreakpoints(),e.init(!0)}var b=0;return c}(),b.prototype.activateADA=function(){var a=this;a.$slideTrack.find(".slick-active").attr({"aria-hidden":"false"}).find("a, input, button, select").attr({tabindex:"0"})},b.prototype.addSlide=b.prototype.slickAdd=function(b,c,d){var e=this;if("boolean"==typeof c)d=c,c=null;else if(0>c||c>=e.slideCount)return!1;e.unload(),"number"==typeof c?0===c&&0===e.$slides.length?a(b).appendTo(e.$slideTrack):d?a(b).insertBefore(e.$slides.eq(c)):a(b).insertAfter(e.$slides.eq(c)):d===!0?a(b).prependTo(e.$slideTrack):a(b).appendTo(e.$slideTrack),e.$slides=e.$slideTrack.children(this.options.slide),e.$slideTrack.children(this.options.slide).detach(),e.$slideTrack.append(e.$slides),e.$slides.each(function(b,c){a(c).attr("data-slick-index",b)}),e.$slidesCache=e.$slides,e.reinit()},b.prototype.animateHeight=function(){var a=this;if(1===a.options.slidesToShow&&a.options.adaptiveHeight===!0&&a.options.vertical===!1){var b=a.$slides.eq(a.currentSlide).outerHeight(!0);a.$list.animate({height:b},a.options.speed)}},b.prototype.animateSlide=function(b,c){var d={},e=this;e.animateHeight(),e.options.rtl===!0&&e.options.vertical===!1&&(b=-b),e.transformsEnabled===!1?e.options.vertical===!1?e.$slideTrack.animate({left:b},e.options.speed,e.options.easing,c):e.$slideTrack.animate({top:b},e.options.speed,e.options.easing,c):e.cssTransitions===!1?(e.options.rtl===!0&&(e.currentLeft=-e.currentLeft),a({animStart:e.currentLeft}).animate({animStart:b},{duration:e.options.speed,easing:e.options.easing,step:function(a){a=Math.ceil(a),e.options.vertical===!1?(d[e.animType]="translate("+a+"px, 0px)",e.$slideTrack.css(d)):(d[e.animType]="translate(0px,"+a+"px)",e.$slideTrack.css(d))},complete:function(){c&&c.call()}})):(e.applyTransition(),b=Math.ceil(b),e.options.vertical===!1?d[e.animType]="translate3d("+b+"px, 0px, 0px)":d[e.animType]="translate3d(0px,"+b+"px, 0px)",e.$slideTrack.css(d),c&&setTimeout(function(){e.disableTransition(),c.call()},e.options.speed))},b.prototype.getNavTarget=function(){var b=this,c=b.options.asNavFor;return c&&null!==c&&(c=a(c).not(b.$slider)),c},b.prototype.asNavFor=function(b){var c=this,d=c.getNavTarget();null!==d&&"object"==typeof d&&d.each(function(){var c=a(this).slick("getSlick");c.unslicked||c.slideHandler(b,!0)})},b.prototype.applyTransition=function(a){var b=this,c={};b.options.fade===!1?c[b.transitionType]=b.transformType+" "+b.options.speed+"ms "+b.options.cssEase:c[b.transitionType]="opacity "+b.options.speed+"ms "+b.options.cssEase,b.options.fade===!1?b.$slideTrack.css(c):b.$slides.eq(a).css(c)},b.prototype.autoPlay=function(){var a=this;a.autoPlayClear(),a.slideCount>a.options.slidesToShow&&(a.autoPlayTimer=setInterval(a.autoPlayIterator,a.options.autoplaySpeed))},b.prototype.autoPlayClear=function(){var a=this;a.autoPlayTimer&&clearInterval(a.autoPlayTimer)},b.prototype.autoPlayIterator=function(){var a=this,b=a.currentSlide+a.options.slidesToScroll;a.paused||a.interrupted||a.focussed||(a.options.infinite===!1&&(1===a.direction&&a.currentSlide+1===a.slideCount-1?a.direction=0:0===a.direction&&(b=a.currentSlide-a.options.slidesToScroll,a.currentSlide-1===0&&(a.direction=1))),a.slideHandler(b))},b.prototype.buildArrows=function(){var b=this;b.options.arrows===!0&&(b.$prevArrow=a(b.options.prevArrow).addClass("slick-arrow"),b.$nextArrow=a(b.options.nextArrow).addClass("slick-arrow"),b.slideCount>b.options.slidesToShow?(b.$prevArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),b.$nextArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),b.htmlExpr.test(b.options.prevArrow)&&b.$prevArrow.prependTo(b.options.appendArrows),b.htmlExpr.test(b.options.nextArrow)&&b.$nextArrow.appendTo(b.options.appendArrows),b.options.infinite!==!0&&b.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true")):b.$prevArrow.add(b.$nextArrow).addClass("slick-hidden").attr({"aria-disabled":"true",tabindex:"-1"}))},b.prototype.buildDots=function(){var c,d,b=this;if(b.options.dots===!0&&b.slideCount>b.options.slidesToShow){for(b.$slider.addClass("slick-dotted"),d=a("<ul />").addClass(b.options.dotsClass),c=0;c<=b.getDotCount();c+=1)d.append(a("<li />").append(b.options.customPaging.call(this,b,c)));b.$dots=d.appendTo(b.options.appendDots),b.$dots.find("li").first().addClass("slick-active").attr("aria-hidden","false")}},b.prototype.buildOut=function(){var b=this;b.$slides=b.$slider.children(b.options.slide+":not(.slick-cloned)").addClass("slick-slide"),b.slideCount=b.$slides.length,b.$slides.each(function(b,c){a(c).attr("data-slick-index",b).data("originalStyling",a(c).attr("style")||"")}),b.$slider.addClass("slick-slider"),b.$slideTrack=0===b.slideCount?a('<div class="slick-track"/>').appendTo(b.$slider):b.$slides.wrapAll('<div class="slick-track"/>').parent(),b.$list=b.$slideTrack.wrap('<div aria-live="polite" class="slick-list"/>').parent(),b.$slideTrack.css("opacity",0),(b.options.centerMode===!0||b.options.swipeToSlide===!0)&&(b.options.slidesToScroll=1),a("img[data-lazy]",b.$slider).not("[src]").addClass("slick-loading"),b.setupInfinite(),b.buildArrows(),b.buildDots(),b.updateDots(),b.setSlideClasses("number"==typeof b.currentSlide?b.currentSlide:0),b.options.draggable===!0&&b.$list.addClass("draggable")},b.prototype.buildRows=function(){var b,c,d,e,f,g,h,a=this;if(e=document.createDocumentFragment(),g=a.$slider.children(),a.options.rows>1){for(h=a.options.slidesPerRow*a.options.rows,f=Math.ceil(g.length/h),b=0;f>b;b++){var i=document.createElement("div");for(c=0;c<a.options.rows;c++){var j=document.createElement("div");for(d=0;d<a.options.slidesPerRow;d++){var k=b*h+(c*a.options.slidesPerRow+d);g.get(k)&&j.appendChild(g.get(k))}i.appendChild(j)}e.appendChild(i)}a.$slider.empty().append(e),a.$slider.children().children().children().css({width:100/a.options.slidesPerRow+"%",display:"inline-block"})}},b.prototype.checkResponsive=function(b,c){var e,f,g,d=this,h=!1,i=d.$slider.width(),j=window.innerWidth||a(window).width();if("window"===d.respondTo?g=j:"slider"===d.respondTo?g=i:"min"===d.respondTo&&(g=Math.min(j,i)),d.options.responsive&&d.options.responsive.length&&null!==d.options.responsive){f=null;for(e in d.breakpoints)d.breakpoints.hasOwnProperty(e)&&(d.originalSettings.mobileFirst===!1?g<d.breakpoints[e]&&(f=d.breakpoints[e]):g>d.breakpoints[e]&&(f=d.breakpoints[e]));null!==f?null!==d.activeBreakpoint?(f!==d.activeBreakpoint||c)&&(d.activeBreakpoint=f,"unslick"===d.breakpointSettings[f]?d.unslick(f):(d.options=a.extend({},d.originalSettings,d.breakpointSettings[f]),b===!0&&(d.currentSlide=d.options.initialSlide),d.refresh(b)),h=f):(d.activeBreakpoint=f,"unslick"===d.breakpointSettings[f]?d.unslick(f):(d.options=a.extend({},d.originalSettings,d.breakpointSettings[f]),b===!0&&(d.currentSlide=d.options.initialSlide),d.refresh(b)),h=f):null!==d.activeBreakpoint&&(d.activeBreakpoint=null,d.options=d.originalSettings,b===!0&&(d.currentSlide=d.options.initialSlide),d.refresh(b),h=f),b||h===!1||d.$slider.trigger("breakpoint",[d,h])}},b.prototype.changeSlide=function(b,c){var f,g,h,d=this,e=a(b.currentTarget);switch(e.is("a")&&b.preventDefault(),e.is("li")||(e=e.closest("li")),h=d.slideCount%d.options.slidesToScroll!==0,f=h?0:(d.slideCount-d.currentSlide)%d.options.slidesToScroll,b.data.message){case"previous":g=0===f?d.options.slidesToScroll:d.options.slidesToShow-f,d.slideCount>d.options.slidesToShow&&d.slideHandler(d.currentSlide-g,!1,c);break;case"next":g=0===f?d.options.slidesToScroll:f,d.slideCount>d.options.slidesToShow&&d.slideHandler(d.currentSlide+g,!1,c);break;case"index":var i=0===b.data.index?0:b.data.index||e.index()*d.options.slidesToScroll;d.slideHandler(d.checkNavigable(i),!1,c),e.children().trigger("focus");break;default:return}},b.prototype.checkNavigable=function(a){var c,d,b=this;if(c=b.getNavigableIndexes(),d=0,a>c[c.length-1])a=c[c.length-1];else for(var e in c){if(a<c[e]){a=d;break}d=c[e]}return a},b.prototype.cleanUpEvents=function(){var b=this;b.options.dots&&null!==b.$dots&&a("li",b.$dots).off("click.slick",b.changeSlide).off("mouseenter.slick",a.proxy(b.interrupt,b,!0)).off("mouseleave.
45slick",a.proxy(b.interrupt,b,!1)),b.$slider.off("focus.slick blur.slick"),b.options.arrows===!0&&b.slideCount>b.options.slidesToShow&&(b.$prevArrow&&b.$prevArrow.off("click.slick",b.changeSlide),b.$nextArrow&&b.$nextArrow.off("click.slick",b.changeSlide)),b.$list.off("touchstart.slick mousedown.slick",b.swipeHandler),b.$list.off("touchmove.slick mousemove.slick",b.swipeHandler),b.$list.off("touchend.slick mouseup.slick",b.swipeHandler),b.$list.off("touchcancel.slick mouseleave.slick",b.swipeHandler),b.$list.off("click.slick",b.clickHandler),a(document).off(b.visibilityChange,b.visibility),b.cleanUpSlideEvents(),b.options.accessibility===!0&&b.$list.off("keydown.slick",b.keyHandler),b.options.focusOnSelect===!0&&a(b.$slideTrack).children().off("click.slick",b.selectHandler),a(window).off("orientationchange.slick.slick-"+b.instanceUid,b.orientationChange),a(window).off("resize.slick.slick-"+b.instanceUid,b.resize),a("[draggable!=true]",b.$slideTrack).off("dragstart",b.preventDefault),a(window).off("load.slick.slick-"+b.instanceUid,b.setPosition),a(document).off("ready.slick.slick-"+b.instanceUid,b.setPosition)},b.prototype.cleanUpSlideEvents=function(){var b=this;b.$list.off("mouseenter.slick",a.proxy(b.interrupt,b,!0)),b.$list.off("mouseleave.slick",a.proxy(b.interrupt,b,!1))},b.prototype.cleanUpRows=function(){var b,a=this;a.options.rows>1&&(b=a.$slides.children().children(),b.removeAttr("style"),a.$slider.empty().append(b))},b.prototype.clickHandler=function(a){var b=this;b.shouldClick===!1&&(a.stopImmediatePropagation(),a.stopPropagation(),a.preventDefault())},b.prototype.destroy=function(b){var c=this;c.autoPlayClear(),c.touchObject={},c.cleanUpEvents(),a(".slick-cloned",c.$slider).detach(),c.$dots&&c.$dots.remove(),c.$prevArrow&&c.$prevArrow.length&&(c.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),c.htmlExpr.test(c.options.prevArrow)&&c.$prevArrow.remove()),c.$nextArrow&&c.$nextArrow.length&&(c.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),c.htmlExpr.test(c.options.nextArrow)&&c.$nextArrow.remove()),c.$slides&&(c.$slides.removeClass("slick-slide slick-active slick-center slick-visible slick-current").removeAttr("aria-hidden").removeAttr("data-slick-index").each(function(){a(this).attr("style",a(this).data("originalStyling"))}),c.$slideTrack.children(this.options.slide).detach(),c.$slideTrack.detach(),c.$list.detach(),c.$slider.append(c.$slides)),c.cleanUpRows(),c.$slider.removeClass("slick-slider"),c.$slider.removeClass("slick-initialized"),c.$slider.removeClass("slick-dotted"),c.unslicked=!0,b||c.$slider.trigger("destroy",[c])},b.prototype.disableTransition=function(a){var b=this,c={};c[b.transitionType]="",b.options.fade===!1?b.$slideTrack.css(c):b.$slides.eq(a).css(c)},b.prototype.fadeSlide=function(a,b){var c=this;c.cssTransitions===!1?(c.$slides.eq(a).css({zIndex:c.options.zIndex}),c.$slides.eq(a).animate({opacity:1},c.options.speed,c.options.easing,b)):(c.applyTransition(a),c.$slides.eq(a).css({opacity:1,zIndex:c.options.zIndex}),b&&setTimeout(function(){c.disableTransition(a),b.call()},c.options.speed))},b.prototype.fadeSlideOut=function(a){var b=this;b.cssTransitions===!1?b.$slides.eq(a).animate({opacity:0,zIndex:b.options.zIndex-2},b.options.speed,b.options.easing):(b.applyTransition(a),b.$slides.eq(a).css({opacity:0,zIndex:b.options.zIndex-2}))},b.prototype.filterSlides=b.prototype.slickFilter=function(a){var b=this;null!==a&&(b.$slidesCache=b.$slides,b.unload(),b.$slideTrack.children(this.options.slide).detach(),b.$slidesCache.filter(a).appendTo(b.$slideTrack),b.reinit())},b.prototype.focusHandler=function(){var b=this;b.$slider.off("focus.slick blur.slick").on("focus.slick blur.slick","*:not(.slick-arrow)",function(c){c.stopImmediatePropagation();var d=a(this);setTimeout(function(){b.options.pauseOnFocus&&(b.focussed=d.is(":focus"),b.autoPlay())},0)})},b.prototype.getCurrent=b.prototype.slickCurrentSlide=function(){var a=this;return a.currentSlide},b.prototype.getDotCount=function(){var a=this,b=0,c=0,d=0;if(a.options.infinite===!0)for(;b<a.slideCount;)++d,b=c+a.options.slidesToScroll,c+=a.options.slidesToScroll<=a.options.slidesToShow?a.options.slidesToScroll:a.options.slidesToShow;else if(a.options.centerMode===!0)d=a.slideCount;else if(a.options.asNavFor)for(;b<a.slideCount;)++d,b=c+a.options.slidesToScroll,c+=a.options.slidesToScroll<=a.options.slidesToShow?a.options.slidesToScroll:a.options.slidesToShow;else d=1+Math.ceil((a.slideCount-a.options.slidesToShow)/a.options.slidesToScroll);return d-1},b.prototype.getLeft=function(a){var c,d,f,b=this,e=0;return b.slideOffset=0,d=b.$slides.first().outerHeight(!0),b.options.infinite===!0?(b.slideCount>b.options.slidesToShow&&(b.slideOffset=b.slideWidth*b.options.slidesToShow*-1,e=d*b.options.slidesToShow*-1),b.slideCount%b.options.slidesToScroll!==0&&a+b.options.slidesToScroll>b.slideCount&&b.slideCount>b.options.slidesToShow&&(a>b.slideCount?(b.slideOffset=(b.options.slidesToShow-(a-b.slideCount))*b.slideWidth*-1,e=(b.options.slidesToShow-(a-b.slideCount))*d*-1):(b.slideOffset=b.slideCount%b.options.slidesToScroll*b.slideWidth*-1,e=b.slideCount%b.options.slidesToScroll*d*-1))):a+b.o
vendor: 4,100 bytes, line 45
45ptions.slidesToShow>b.slideCount&&(b.slideOffset=(a+b.options.slidesToShow-b.slideCount)*b.slideWidth,e=(a+b.options.slidesToShow-b.slideCount)*d),b.slideCount<=b.options.slidesToShow&&(b.slideOffset=0,e=0),b.options.centerMode===!0&&b.options.infinite===!0?b.slideOffset+=b.slideWidth*Math.floor(b.options.slidesToShow/2)-b.slideWidth:b.options.centerMode===!0&&(b.slideOffset=0,b.slideOffset+=b.slideWidth*Math.floor(b.options.slidesToShow/2)),c=b.options.vertical===!1?a*b.slideWidth*-1+b.slideOffset:a*d*-1+e,b.options.variableWidth===!0&&(f=b.slideCount<=b.options.slidesToShow||b.options.infinite===!1?b.$slideTrack.children(".slick-slide").eq(a):b.$slideTrack.children(".slick-slide").eq(a+b.options.slidesToShow),c=b.options.rtl===!0?f[0]?-1*(b.$slideTrack.width()-f[0].offsetLeft-f.width()):0:f[0]?-1*f[0].offsetLeft:0,b.options.centerMode===!0&&(f=b.slideCount<=b.options.slidesToShow||b.options.infinite===!1?b.$slideTrack.children(".slick-slide").eq(a):b.$slideTrack.children(".slick-slide").eq(a+b.options.slidesToShow+1),c=b.options.rtl===!0?f[0]?-1*(b.$slideTrack.width()-f[0].offsetLeft-f.width()):0:f[0]?-1*f[0].offsetLeft:0,c+=(b.$list.width()-f.outerWidth())/2)),c},b.prototype.getOption=b.prototype.slickGetOption=function(a){var b=this;return b.options[a]},b.prototype.getNavigableIndexes=function(){var e,a=this,b=0,c=0,d=[];for(a.options.infinite===!1?e=a.slideCount:(b=-1*a.options.slidesToScroll,c=-1*a.options.slidesToScroll,e=2*a.slideCount);e>b;)d.push(b),b=c+a.options.slidesToScroll,c+=a.options.slidesToScroll<=a.options.slidesToShow?a.options.slidesToScroll:a.options.slidesToShow;return d},b.prototype.getSlick=function(){return this},b.prototype.getSlideCount=function(){var c,d,e,b=this;return e=b.options.centerMode===!0?b.slideWidth*Math.floor(b.options.slidesToShow/2):0,b.options.swipeToSlide===!0?(b.$slideTrack.find(".slick-slide").each(function(c,f){return f.offsetLeft-e+a(f).outerWidth()/2>-1*b.swipeLeft?(d=f,!1):void 0}),c=Math.abs(a(d).attr("data-slick-index")-b.currentSlide)||1):b.options.slidesToScroll},b.prototype.goTo=b.prototype.slickGoTo=function(a,b){var c=this;c.changeSlide({data:{message:"index",index:parseInt(a)}},b)},b.prototype.init=function(b){var c=this;a(c.$slider).hasClass("slick-initialized")||(a(c.$slider).addClass("slick-initialized"),c.buildRows(),c.buildOut(),c.setProps(),c.startLoad(),c.loadSlider(),c.initializeEvents(),c.updateArrows(),c.updateDots(),c.checkResponsive(!0),c.focusHandler()),b&&c.$slider.trigger("init",[c]),c.options.accessibility===!0&&c.initADA(),c.options.autoplay&&(c.paused=!1,c.autoPlay())},b.prototype.initADA=function(){var b=this;b.$slides.add(b.$slideTrack.find(".slick-cloned")).attr({"aria-hidden":"true",tabindex:"-1"}).find("a, input, button, select").attr({tabindex:"-1"}),b.$slideTrack.attr("role","listbox"),b.$slides.not(b.$slideTrack.find(".slick-cloned")).each(function(c){a(this).attr({role:"option","aria-describedby":"slick-slide"+b.instanceUid+c})}),null!==b.$dots&&b.$dots.attr("role","tablist").find("li").each(function(c){a(this).attr({role:"presentation","aria-selected":"false","aria-controls":"navigation"+b.instanceUid+c,id:"slick-slide"+b.instanceUid+c})}).first().attr("aria-selected","true").end().find("button").attr("role","button").end().closest("div").attr("role","toolbar"),b.activateADA()},b.prototype.initArrowEvents=function(){var a=this;a.options.arrows===!0&&a.slideCount>a.options.slidesToShow&&(a.$prevArrow.off("click.slick").on("click.slick",{message:"previous"},a.changeSlide),a.$nextArrow.off("click.slick").on("click.slick",{message:"next"},a.changeSlide))},b.prototype.initDotEvents=function(){var b=this;b.options.dots===!0&&b.slideCount>b.options.slidesToShow&&a("li",b.$dots).on("click.slick",{message:"index"},b.changeSlide),b.options.dots===!0&&b.options.pauseOnDotsHover===!0&&a("li",b.$dots).on("mouseenter.slick",a.proxy(b.interrupt,b,!0)).on("mouseleave.slick",a.proxy(b.interrupt,b,!1))},b.prototype.initSlideEvents=function(){var b=this;b.options.pauseOnHover&&(b.$list.on("mouseenter.slick",a.proxy(b.interrupt,b,!0)),b.$list.on("mouseleave.
45slick",a.proxy(b.interrupt,b,!1)))},b.prototype.initializeEvents=function(){var b=this;b.initArrowEvents(),b.initDotEvents(),b.initSlideEvents(),b.$list.on("touchstart.slick mousedown.slick",{action:"start"},b.swipeHandler),b.$list.on("touchmove.slick mousemove.slick",{action:"move"},b.swipeHandler),b.$list.on("touchend.slick mouseup.slick",{action:"end"},b.swipeHandler),b.$list.on("touchcancel.slick mouseleave.slick",{action:"end"},b.swipeHandler),b.$list.on("click.slick",b.clickHandler),a(document).on(b.visibilityChange,a.proxy(b.visibility,b)),b.options.accessibility===!0&&b.$list.on("keydown.slick",b.keyHandler),b.options.focusOnSelect===!0&&a(b.$slideTrack).children().on("click.slick",b.selectHandler),a(window).on("orientationchange.slick.slick-"+b.instanceUid,a.proxy(b.orientationChange,b)),a(window).on("resize.slick.slick-"+b.instanceUid,a.proxy(b.resize,b)),a("[draggable!=true]",b.$slideTrack).on("dragstart",b.preventDefault),a(window).on("load.slick.slick-"+b.instanceUid,b.setPosition),a(document).on("ready.slick.slick-"+b.instanceUid,b.setPosition)},b.prototype.initUI=function(){var a=this;a.options.arrows===!0&&a.slideCount>a.options.slidesToShow&&(a.$prevArrow.show(),a.$nextArrow.show()),a.options.dots===!0&&a.slideCount>a.options.slidesToShow&&a.$dots.show()},b.prototype.keyHandler=function(a){var b=this;a.target.tagName.match("TEXTAREA|INPUT|SELECT")||(37===a.keyCode&&b.options.accessibility===!0?b.changeSlide({data:{message:b.options.rtl===!0?"next":"previous"}}):39===a.keyCode&&b.options.accessibility===!0&&b.changeSlide({data:{message:b.options.rtl===!0?"previous":"next"}}))},b.prototype.lazyLoad=function(){function g(c){a("img[data-lazy]",c).each(function(){var c=a(this),d=a(this).attr("data-lazy"),e=document.createElement("img");e.onload=function(){c.animate({opacity:0}
vendor: 4,284 bytes, line 45
45,100,function(){c.attr("src",d).animate({opacity:1},200,function(){c.removeAttr("data-lazy").removeClass("slick-loading")}),b.$slider.trigger("lazyLoaded",[b,c,d])})},e.onerror=function(){c.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),b.$slider.trigger("lazyLoadError",[b,c,d])},e.src=d})}var c,d,e,f,b=this;b.options.centerMode===!0?b.options.infinite===!0?(e=b.currentSlide+(b.options.slidesToShow/2+1),f=e+b.options.slidesToShow+2):(e=Math.max(0,b.currentSlide-(b.options.slidesToShow/2+1)),f=2+(b.options.slidesToShow/2+1)+b.currentSlide):(e=b.options.infinite?b.options.slidesToShow+b.currentSlide:b.currentSlide,f=Math.ceil(e+b.options.slidesToShow),b.options.fade===!0&&(e>0&&e--,f<=b.slideCount&&f++)),c=b.$slider.find(".slick-slide").slice(e,f),g(c),b.slideCount<=b.options.slidesToShow?(d=b.$slider.find(".slick-slide"),g(d)):b.currentSlide>=b.slideCount-b.options.slidesToShow?(d=b.$slider.find(".slick-cloned").slice(0,b.options.slidesToShow),g(d)):0===b.currentSlide&&(d=b.$slider.find(".slick-cloned").slice(-1*b.options.slidesToShow),g(d))},b.prototype.loadSlider=function(){var a=this;a.setPosition(),a.$slideTrack.css({opacity:1}),a.$slider.removeClass("slick-loading"),a.initUI(),"progressive"===a.options.lazyLoad&&a.progressiveLazyLoad()},b.prototype.next=b.prototype.slickNext=function(){var a=this;a.changeSlide({data:{message:"next"}})},b.prototype.orientationChange=function(){var a=this;a.checkResponsive(),a.setPosition()},b.prototype.pause=b.prototype.slickPause=function(){var a=this;a.autoPlayClear(),a.paused=!0},b.prototype.play=b.prototype.slickPlay=function(){var a=this;a.autoPlay(),a.options.autoplay=!0,a.paused=!1,a.focussed=!1,a.interrupted=!1},b.prototype.postSlide=function(a){var b=this;b.unslicked||(b.$slider.trigger("afterChange",[b,a]),b.animating=!1,b.setPosition(),b.swipeLeft=null,b.options.autoplay&&b.autoPlay(),b.options.accessibility===!0&&b.initADA())},b.prototype.prev=b.prototype.slickPrev=function(){var a=this;a.changeSlide({data:{message:"previous"}})},b.prototype.preventDefault=function(a){a.preventDefault()},b.prototype.progressiveLazyLoad=function(b){b=b||1;var e,f,g,c=this,d=a("img[data-lazy]",c.$slider);d.length?(e=d.first(),f=e.attr("data-lazy"),g=document.createElement("img"),g.onload=function(){e.attr("src",f).removeAttr("data-lazy").removeClass("slick-loading"),c.options.adaptiveHeight===!0&&c.setPosition(),c.$slider.trigger("lazyLoaded",[c,e,f]),c.progressiveLazyLoad()},g.onerror=function(){3>b?setTimeout(function(){c.progressiveLazyLoad(b+1)},500):(e.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),c.$slider.trigger("lazyLoadError",[c,e,f]),c.progressiveLazyLoad())},g.src=f):c.$slider.trigger("allImagesLoaded",[c])},b.prototype.refresh=function(b){var d,e,c=this;e=c.slideCount-c.options.slidesToShow,!c.options.infinite&&c.currentSlide>e&&(c.currentSlide=e),c.slideCount<=c.options.slidesToShow&&(c.currentSlide=0),d=c.currentSlide,c.destroy(!0),a.extend(c,c.initials,{currentSlide:d}),c.init(),b||c.changeSlide({data:{message:"index",index:d}},!1)},b.prototype.registerBreakpoints=function(){var c,d,e,b=this,f=b.options.responsive||null;if("array"===a.type(f)&&f.length){b.respondTo=b.options.respondTo||"window";for(c in f)if(e=b.breakpoints.length-1,d=f[c].breakpoint,f.hasOwnProperty(c)){for(;e>=0;)b.breakpoints[e]&&b.breakpoints[e]===d&&b.breakpoints.splice(e,1),e--;b.breakpoints.push(d),b.breakpointSettings[d]=f[c].settings}b.breakpoints.sort(function(a,c){return b.options.mobileFirst?a-c:c-a})}},b.prototype.reinit=function(){var b=this;b.$slides=b.$slideTrack.children(b.options.slide).addClass("slick-slide"),b.slideCount=b.$slides.length,b.currentSlide>=b.slideCount&&0!==b.currentSlide&&(b.currentSlide=b.currentSlide-b.options.slidesToScroll),b.slideCount<=b.options.slidesToShow&&(b.currentSlide=0),b.registerBreakpoints(),b.setProps(),b.setupInfinite(),b.buildArrows(),b.updateArrows(),b.initArrowEvents(),b.buildDots(),b.updateDots(),b.initDotEvents(),b.cleanUpSlideEvents(),b.initSlideEvents(),b.checkResponsive(!1,!0),b.options.focusOnSelect===!0&&a(b.$slideTrack).children().on("click.slick",b.selectHandler),b.setSlideClasses("number"==typeof b.currentSlide?b.currentSlide:0),b.setPosition(),b.focu
vendor: 2,346 bytes, line 45
45sHandler(),b.paused=!b.options.autoplay,b.autoPlay(),b.$slider.trigger("reInit",[b])},b.prototype.resize=function(){var b=this;a(window).width()!==b.windowWidth&&(clearTimeout(b.windowDelay),b.windowDelay=window.setTimeout(function(){b.windowWidth=a(window).width(),b.checkResponsive(),b.unslicked||b.setPosition()},50))},b.prototype.removeSlide=b.prototype.slickRemove=function(a,b,c){var d=this;return"boolean"==typeof a?(b=a,a=b===!0?0:d.slideCount-1):a=b===!0?--a:a,d.slideCount<1||0>a||a>d.slideCount-1?!1:(d.unload(),c===!0?d.$slideTrack.children().remove():d.$slideTrack.children(this.options.slide).eq(a).remove(),d.$slides=d.$slideTrack.children(this.options.slide),d.$slideTrack.children(this.options.slide).detach(),d.$slideTrack.append(d.$slides),d.$slidesCache=d.$slides,void d.reinit())},b.prototype.setCSS=function(a){var d,e,b=this,c={};b.options.rtl===!0&&(a=-a),d="left"==b.positionProp?Math.ceil(a)+"px":"0px",e="top"==b.positionProp?Math.ceil(a)+"px":"0px",c[b.positionProp]=a,b.transformsEnabled===!1?b.$slideTrack.css(c):(c={},b.cssTransitions===!1?(c[b.animType]="translate("+d+", "+e+")",b.$slideTrack.css(c)):(c[b.animType]="translate3d("+d+", "+e+", 0px)",b.$slideTrack.css(c)))},b.prototype.setDimensions=function(){var a=this;a.options.vertical===!1?a.options.centerMode===!0&&a.$list.css({padding:"0px "+a.options.centerPadding}):(a.$list.height(a.$slides.first().outerHeight(!0)*a.options.slidesToShow),a.options.centerMode===!0&&a.$list.css({padding:a.options.centerPadding+" 0px"})),a.listWidth=a.$list.width(),a.listHeight=a.$list.height(),a.options.vertical===!1&&a.options.variableWidth===!1?(a.slideWidth=Math.ceil(a.listWidth/a.options.slidesToShow),a.$slideTrack.width(Math.ceil(a.slideWidth*a.$slideTrack.children(".slick-slide").length))):a.options.variableWidth===!0?a.$slideTrack.width(5e3*a.slideCount):(a.slideWidth=Math.ceil(a.listWidth),a.$slideTrack.height(Math.ceil(a.$slides.first().outerHeight(!0)*a.$slideTrack.children(".slick-slide").length)));var b=a.$slides.first().outerWidth(!0)-a.$slides.first().width();a.options.variableWidth===!1&&a.$slideTrack.children(".slick-slide").width(a.slideWidth-b)},b.prototype.setFade=function(){var c,b=this;b.$slides.each(function(d,e){c=b.slideWidth*d*-1,b.options.rtl===!0?a(e).css({position:"relative",right:c,top:0,zIndex:b.options.zIndex-2,opacity:0}
vendor: 3,177 bytes, line 45
45):a(e).css({position:"relative",left:c,top:0,zIndex:b.options.zIndex-2,opacity:0})}),b.$slides.eq(b.currentSlide).css({zIndex:b.options.zIndex-1,opacity:1})},b.prototype.setHeight=function(){var a=this;if(1===a.options.slidesToShow&&a.options.adaptiveHeight===!0&&a.options.vertical===!1){var b=a.$slides.eq(a.currentSlide).outerHeight(!0);a.$list.css("height",b)}},b.prototype.setOption=b.prototype.slickSetOption=function(){var c,d,e,f,h,b=this,g=!1;if("object"===a.type(arguments[0])?(e=arguments[0],g=arguments[1],h="multiple"):"string"===a.type(arguments[0])&&(e=arguments[0],f=arguments[1],g=arguments[2],"responsive"===arguments[0]&&"array"===a.type(arguments[1])?h="responsive":"undefined"!=typeof arguments[1]&&(h="single")),"single"===h)b.options[e]=f;else if("multiple"===h)a.each(e,function(a,c){b.options[a]=c});else if("responsive"===h)for(d in f)if("array"!==a.type(b.options.responsive))b.options.responsive=[f[d]];else{for(c=b.options.responsive.length-1;c>=0;)b.options.responsive[c].breakpoint===f[d].breakpoint&&b.options.responsive.splice(c,1),c--;b.options.responsive.push(f[d])}g&&(b.unload(),b.reinit())},b.prototype.setPosition=function(){var a=this;a.setDimensions(),a.setHeight(),a.options.fade===!1?a.setCSS(a.getLeft(a.currentSlide)):a.setFade(),a.$slider.trigger("setPosition",[a])},b.prototype.setProps=function(){var a=this,b=document.body.style;a.positionProp=a.options.vertical===!0?"top":"left","top"===a.positionProp?a.$slider.addClass("slick-vertical"):a.$slider.removeClass("slick-vertical"),(void 0!==b.WebkitTransition||void 0!==b.MozTransition||void 0!==b.msTransition)&&a.options.useCSS===!0&&(a.cssTransitions=!0),a.options.fade&&("number"==typeof a.options.zIndex?a.options.zIndex<3&&(a.options.zIndex=3):a.options.zIndex=a.defaults.zIndex),void 0!==b.OTransform&&(a.animType="OTransform",a.transformType="-o-transform",a.transitionType="OTransition",void 0===b.perspectiveProperty&&void 0===b.webkitPerspective&&(a.animType=!1)),void 0!==b.MozTransform&&(a.animType="MozTransform",a.transformType="-moz-transform",a.transitionType="MozTransition",void 0===b.perspectiveProperty&&void 0===b.MozPerspective&&(a.animType=!1)),void 0!==b.webkitTransform&&(a.animType="webkitTransform",a.transformType="-webkit-transform",a.transitionType="webkitTransition",void 0===b.perspectiveProperty&&void 0===b.webkitPerspective&&(a.animType=!1)),void 0!==b.msTransform&&(a.animType="msTransform",a.transformType="-ms-transform",a.transitionType="msTransition",void 0===b.msTransform&&(a.animType=!1)),void 0!==b.transform&&a.animType!==!1&&(a.animType="transform",a.transformType="transform",a.transitionType="transition"),a.transformsEnabled=a.options.useTransform&&null!==a.animType&&a.animType!==!1},b.prototype.setSlideClasses=function(a){var c,d,e,f,b=this;d=b.$slider.find(".slick-slide").removeClass("slick-active slick-center slick-current").attr("aria-hidden","true"),b.$slides.eq(a).addClass("slick-current"),b.options.centerMode===!0?(c=Math.floor(b.options.slidesToShow/2),b.options.infinite===!0&&(a>=c&&a<=b.slideCount-1-c?b.$slides.slice(a-c,a+c+1).addClass("slick-active").attr("aria-hidden","false"):(e=b.options.slidesToShow+a,
vendor: 1,607 bytes, line 46
46d.slice(e-c+1,e+c+2).addClass("slick-active").attr("aria-hidden","false")),0===a?d.eq(d.length-1-b.options.slidesToShow).addClass("slick-center"):a===b.slideCount-1&&d.eq(b.options.slidesToShow).addClass("slick-center")),b.$slides.eq(a).addClass("slick-center")):a>=0&&a<=b.slideCount-b.options.slidesToShow?b.$slides.slice(a,a+b.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"):d.length<=b.options.slidesToShow?d.addClass("slick-active").attr("aria-hidden","false"):(f=b.slideCount%b.options.slidesToShow,e=b.options.infinite===!0?b.options.slidesToShow+a:a,b.options.slidesToShow==b.options.slidesToScroll&&b.slideCount-a<b.options.slidesToShow?d.slice(e-(b.options.slidesToShow-f),e+f).addClass("slick-active").attr("aria-hidden","false"):d.slice(e,e+b.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false")),"ondemand"===b.options.lazyLoad&&b.lazyLoad()},b.prototype.setupInfinite=function(){var c,d,e,b=this;if(b.options.fade===!0&&(b.options.centerMode=!1),b.options.infinite===!0&&b.options.fade===!1&&(d=null,b.slideCount>b.options.slidesToShow)){for(e=b.options.centerMode===!0?b.options.slidesToShow+1:b.options.slidesToShow,c=b.slideCount;c>b.slideCount-e;c-=1)d=c-1,a(b.$slides[d]).clone(!0).attr("id","").attr("data-slick-index",d-b.slideCount).prependTo(b.$slideTrack).addClass("slick-cloned");for(c=0;e>c;c+=1)d=c,a(b.$slides[d]).clone(!0).attr("id","").attr("data-slick-index",d+b.slideCount).appendTo(b.$slideTrack).addClass("slick-cloned");b.$slideTrack.find(".slick-cloned").find("[id]").each(function(){a(this).attr("id","")})}},b.prototype.
vendor: 4,540 bytes, line 46
46interrupt=function(a){var b=this;a||b.autoPlay(),b.interrupted=a},b.prototype.selectHandler=function(b){var c=this,d=a(b.target).is(".slick-slide")?a(b.target):a(b.target).parents(".slick-slide"),e=parseInt(d.attr("data-slick-index"));return e||(e=0),c.slideCount<=c.options.slidesToShow?(c.setSlideClasses(e),void c.asNavFor(e)):void c.slideHandler(e)},b.prototype.slideHandler=function(a,b,c){var d,e,f,g,j,h=null,i=this;return b=b||!1,i.animating===!0&&i.options.waitForAnimate===!0||i.options.fade===!0&&i.currentSlide===a||i.slideCount<=i.options.slidesToShow?void 0:(b===!1&&i.asNavFor(a),d=a,h=i.getLeft(d),g=i.getLeft(i.currentSlide),i.currentLeft=null===i.swipeLeft?g:i.swipeLeft,i.options.infinite===!1&&i.options.centerMode===!1&&(0>a||a>i.getDotCount()*i.options.slidesToScroll)?void(i.options.fade===!1&&(d=i.currentSlide,c!==!0?i.animateSlide(g,function(){i.postSlide(d)}):i.postSlide(d))):i.options.infinite===!1&&i.options.centerMode===!0&&(0>a||a>i.slideCount-i.options.slidesToScroll)?void(i.options.fade===!1&&(d=i.currentSlide,c!==!0?i.animateSlide(g,function(){i.postSlide(d)}):i.postSlide(d))):(i.options.autoplay&&clearInterval(i.autoPlayTimer),e=0>d?i.slideCount%i.options.slidesToScroll!==0?i.slideCount-i.slideCount%i.options.slidesToScroll:i.slideCount+d:d>=i.slideCount?i.slideCount%i.options.slidesToScroll!==0?0:d-i.slideCount:d,i.animating=!0,i.$slider.trigger("beforeChange",[i,i.currentSlide,e]),f=i.currentSlide,i.currentSlide=e,i.setSlideClasses(i.currentSlide),i.options.asNavFor&&(j=i.getNavTarget(),j=j.slick("getSlick"),j.slideCount<=j.options.slidesToShow&&j.setSlideClasses(i.currentSlide)),i.updateDots(),i.updateArrows(),i.options.fade===!0?(c!==!0?(i.fadeSlideOut(f),i.fadeSlide(e,function(){i.postSlide(e)})):i.postSlide(e),void i.animateHeight()):void(c!==!0?i.animateSlide(h,function(){i.postSlide(e)}):i.postSlide(e))))},b.prototype.startLoad=function(){var a=this;a.options.arrows===!0&&a.slideCount>a.options.slidesToShow&&(a.$prevArrow.hide(),a.$nextArrow.hide()),a.options.dots===!0&&a.slideCount>a.options.slidesToShow&&a.$dots.hide(),a.$slider.addClass("slick-loading")},b.prototype.swipeDirection=function(){var a,b,c,d,e=this;return a=e.touchObject.startX-e.touchObject.curX,b=e.touchObject.startY-e.touchObject.curY,c=Math.atan2(b,a),d=Math.round(180*c/Math.PI),0>d&&(d=360-Math.abs(d)),45>=d&&d>=0?e.options.rtl===!1?"left":"right":360>=d&&d>=315?e.options.rtl===!1?"left":"right":d>=135&&225>=d?e.options.rtl===!1?"right":"left":e.options.verticalSwiping===!0?d>=35&&135>=d?"down":"up":"vertical"},b.prototype.swipeEnd=function(a){var c,d,b=this;if(b.dragging=!1,b.interrupted=!1,b.shouldClick=b.touchObject.swipeLength>10?!1:!0,void 0===b.touchObject.curX)return!1;if(b.touchObject.edgeHit===!0&&b.$slider.trigger("edge",[b,b.swipeDirection()]),b.touchObject.swipeLength>=b.touchObject.minSwipe){switch(d=b.swipeDirection()){case"left":case"down":c=b.options.swipeToSlide?b.checkNavigable(b.currentSlide+b.getSlideCount()):b.currentSlide+b.getSlideCount(),b.currentDirection=0;break;case"right":case"up":c=b.options.swipeToSlide?b.checkNavigable(b.currentSlide-b.getSlideCount()):b.currentSlide-b.getSlideCount(),b.currentDirection=1}"vertical"!=d&&(b.slideHandler(c),b.touchObject={},b.$slider.trigger("swipe",[b,d]))}else b.touchObject.startX!==b.touchObject.curX&&(b.slideHandler(b.currentSlide),b.touchObject={})},b.prototype.swipeHandler=function(a){var b=this;if(!(b.options.swipe===!1||"ontouchend"in document&&b.options.swipe===!1||b.options.draggable===!1&&-1!==a.type.indexOf("mouse")))switch(b.touchObject.fingerCount=a.originalEvent&&void 0!==a.originalEvent.touches?a.originalEvent.touches.length:1,b.touchObject.minSwipe=b.listWidth/b.options.touchThreshold,b.options.verticalSwiping===!0&&(b.touchObject.minSwipe=b.listHeight/b.options.touchThreshold),a.data.action){case"start":b.swipeStart(a);break;case"move":b.swipeMove(a);break;case"end":b.swipeEnd(a)}},b.prototype.swipeMove=function(a){var d,e,f,g,h,b=this;return h=void 0!==a.originalEvent?a.originalEvent.touches:null,!b.dragging||h&&1!==h.length?!1:(d=b.getLeft(b.currentSlide),b.touchObject.curX=void 0!==h?h[0].pageX:a.clientX,b.touchObject.curY=void 0!==h?h[0].pageY:a.clientY,b.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(b.touchObject.curX-b.touchObject.startX,2))),b.options.verticalSwiping===!0&&(b.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(b.touchObject.curY-b.touchObject.startY,2)))),e=b.swipeDirection(),"vertical"!==e?(void 0!==a.originalEvent&&b.touchObject.swipeLength>
464&&a.preventDefault(),g=(b.options.rtl===!1?1:-1)*(b.touchObject.curX>b.touchObject.startX?1:-1),b.options.verticalSwiping===!0&&(g=b.touchObject.curY>b.touchObject.startY?1:-1),f=b.touchObject.swipeLength,b.touchObject.edgeHit=!1,b.options.infinite===!1&&(0===b.currentSlide&&"right"===e||b.currentSlide>=b.getDotCount()&&"left"===e)&&(f=b.touchObject.swipeLength*b.options.edgeFriction,b.touchObject.edgeHit=!0),b.options.vertical===!1?b.swipeLeft=d+f*g:b.swipeLeft=d+f*(b.$list.height()/b.listWidth)*g,b.options.verticalSwiping===!0&&(b.swipeLeft=d+f*g),b.options.fade===!0||b.options.touchMove===!1?!1:b.animating===!0?(b.swipeLeft=null,!1):void b.setCSS(b.swipeLeft)):void 0)},b.prototype.swipeStart=function(a){var c,b=this;return b.interrupted=!0,1!==b.touchObject.fingerCount||b.slideCount<=b.options.slidesToShow?(b.touchObject={},!1):(void 0!==a.originalEvent&&void 0!==a.originalEvent.touches&&(c=a.originalEvent.touches[0]),b.touchObject.startX=b.touchObject.curX=void 0!==c?c.pageX:a.clientX,b.touchObject.startY=b.touchObject.curY=void 0!==c?c.pageY:a.clientY,void(b.dragging=!0))},b.prototype.unfilterSlides=b.prototype.slickUnfilter=function(){var a=this;null!==a.$slidesCache&&(a.unload(),a.$slideTrack.children(this.options.slide).detach(),a.$slidesCache.appendTo(a.$slideTrack),a.reinit())},b.prototype.unload=function(){var b=this;a(".slick-cloned",b.$slider).remove(),b.$dots&&b.$dots.remove(),b.$prevArrow&&b.htmlExpr.test(b.options.prevArrow)&&b.$prevArrow.remove(),b.$nextArrow&&b.htmlExpr.test(b.options.nextArrow)&&b.$nextArrow.remove(),b.$slides.removeClass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden","true").css("width","")},b.prototype.unslick=function(a){var b=this;b.$slider.trigger("unslick",[b,a]),b.destroy()},b.prototype.updateArrows=function(){var b,a=this;b=Math.floor(a.options.slidesToShow/2),a.options.arrows===!0&&a.slideCount>a.options.slidesToShow&&!a.options.infinite&&(a.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false"),a.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false"),0===a.currentSlide?(a.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true"),a.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false")):a.currentSlide>=a.slideCount-a.options.slidesToShow&&a.options.centerMode===!1?(a.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),a.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")):a.currentSlide>=a.slideCount-1&&a.options.centerMode===!0&&(a.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),a.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")))},b.prototype.updateDots=function(){var a=this;null!==a.$dots&&(a.$dots.find("li").removeClass("slick-active").attr("aria-hidden","true"),a.$dots.find("li").eq(Math.floor(a.currentSlide/a.options.slidesToScroll)).addClass("slick-active").attr("aria-hidden","false"))},b.prototype.visibility=function(){var a=this;a.options.autoplay&&(document[a.hidden]?a.interrupted=!0:a.interrupted=!1)},a.fn.slick=function(){var f,g,a=this,c=arguments[0],d=Array.prototype.slice.call(arguments,1),e=a.length;for(f=0;e>f;f++)if("object"==typeof c||"undefined"==typeof c?a[f].slick=new b(a[f],c):g=a[f].slick[c].apply(a[f].slick,d),"undefined"!=typeof g)return g;return a}}); 47 48jQuery.noConflict(); 49 50(function ($) { 51 function adjustImageHeight() { 52 var currentModal = $('.modal.in'); 53 var currentWindowHeight = $(window).height(); 54 55 if (currentModal.length > 0) { 56 var modalHeaderHeight = currentModal.find('.modal-header').outerHeight(); 57 var modalThumbnailsHeight = currentModal.find('.modal-thumbnail-container').outerHeight(); 58 var availableHeight = currentWindowHeight - (modalHeaderHeight + modalThumbnailsHeight + 100); // 100px paddings 59 } 60 61 // Resize images which would be higher than viewport 62 $('.slick-slider') 63 .find('.slick-img-responsive') 64 .each(function () { 65 $(this).attr('style', ''); 66 var currentImageHeight = $(this).height(); 67 var currentTextHeight = 0; 68 69 if ($(this).parent().next('.modal-text').length > 0) currentTextHeight = $(this).parent().next('.modal-text').outerHeight(); 70 71 var currentElementHeight = currentImageHeight + currentTextHeight; 72 73 if (currentElementHeight > availableHeight) { 74 $(this).height(availableHeight - currentTextHeight); 75 } 76 }); 77 78 // force slick to recalculate height of container 79 $('.slick-slider').slick('setPosition'); 80 } 81
82 function setSlickForSingleGallery() { 83 // Single gallery 84 $('.bwGallery').each(function () { 85 if ($(window).width() < 992) { 86 var currentGalley = $(this).find('.box-item:not(.slick-initialized)'); 87 var shownImages = currentGalley.find('.img-responsive'); 88 var imageContainerClass = currentGalley.find('.image-container').attr('class'); 89 90 // Find all images in gallery (> 4 images are hidden in modal) 91 var allImages = currentGalley.next().find('.image-container .img-responsive'); 92 93 // Exclude already shown images 94 var remainingImages = allImages.filter(function (index) { 95 if (index > shownImages.length) { 96 return true; 97 } 98 }); 99 100 // Append remaining images in slider 101 remainingImages.each(function (index) { 102 var currentCopyright = $(this).next('.img-copyright').text(); 103 var currentDescription = $(this).parent().next('.modal-text').text(); 104 105 if ($(this).parent().next('.modal-text').find('.image-description').length > 0) var currentDescription = $(this).parent().next('.modal-text').find('.image-description').text(); 106 107 var copyrightHtml; 108 var descriptionHtml; 109 110 // create clone of modal image 111 var generatedImage = $(this).clone(true); 112 currentGalley.append(generatedImage); 113 114 // append copyright and description element 115 var appendedImage = currentGalley.find(generatedImage); 116 117 if (currentCopyright != '') copyrightHtml = '<div class="img-copyright">' + currentCopyright + '</div>'; 118 if (currentDescription != '') descriptionHtml = '<div class="img-description">' + currentDescription + '</div>'; 119 120 var imageContainer = '<div class="generated only-mobile ' + imageContainerClass + '"><div class="image">' + copyrightHtml + '</div>' + descriptionHtml + '</div>'; 121 imageContainer = $(imageContainer); 122 imageContainer.find('.image').prepend(appendedImage); 123 124 // append dynamic created element to gallery 125 currentGalley.append(imageContainer); 126 }); 127 128 currentGalley.slick({ 129 lazyLoad: 'ondemand', 130 adaptiveHeight: true, 131 infinite: false, 132 responsive: [ 133 { 134 breakpoint: 768, 135 settings: { 136 slidesToShow: 1, 137 }, 138 }, 139 { 140 breakpoint: 992, 141 settings: { 142 slidesToShow: 2, 143 }, 144 }, 145 ], 146 }); 147 148 // Adjust container height on slide change 149 currentGalley.on('lazyLoaded', function () { 150 setTimeout(function () { 151 // Resize all slick images after being lazy loaded for setting dimensions 152 adjustImageHeight(); 153 }, 500); 154 }); 155 156 // Disable Image Pop-Up on click 157 currentGalley.find('.image a').removeClass('gallery-open-image'); 158 } else { 159 var currentGalley = $(this).find('.box-item.slick-initialized'); 160 161 if (currentGalley.length > 0) { 162 currentGalley.slick('unslick'); 163 currentGalley.find('.generated').remove(); 164 currentGalley.find('.image a').addClass('gallery-open-image'); 165 } 166 } 167 }); 168 } 169 170 function initModalSliders() { 171 // Bildergalerie Pop-Up öffnen 172 if ($('.modal .modal-slick').length > 0) { 173 $('.modal').on('shown.bs.modal', function () { 174 // Bildergalerien laden 175 if ($('.modal-slider-for').length > 0) { 176 $('.modal-slider-for').each(function (key, item) { 177 var sliderIdName = 'slider' + key; 178 var sliderNavIdName = 'sliderNav' + key; 179 180 this.id = sliderIdName; 181 $('.modal-slider-nav')[key].id = sliderNavIdName; 182 183 var sliderId = '#' + sliderIdName; 184 var sliderNavId = '#' + sliderNavIdName; 185 186 // GroÃes Bild 187 $(sliderId).not('.slick-initialized').slick({ 188 lazyLoad: 'ondemand', 189 slidesToShow: 1, 190 slidesToScroll: 1, 191 fade: true, 192 asNavFor: sliderNavId, 193 adaptiveHeight: true, 194 }); 195 196 $(sliderId).on('lazyLoaded', function () { 197 setTimeout(function () { 198 // Resize all slick images after being lazy loaded for setting dimensions 199 adjustImageHeight(); 200 }, 500); 201 }); 202 203 // Thumbnails (ohne lazyloading) 204 $(sliderNavId).not('.slick-initialized').slick({ 205 slidesToScroll: 1, 206 asNavFor: sliderId, 207 centerMode: false, 208 focusOnSelect: true,
209 arrows: false, 210 variableWidth: true, 211 infinite: false, 212 }); 213 }); 214 215 $('.slickPrev').click(function () { 216 $('.slick-slider').slick('slickPrev'); 217 }); 218 219 $('.slickNext').click(function () { 220 $('.slick-slider').slick('slickNext'); 221 }); 222 223 // Resize after showing modal 224 //$('.slick').slick('setPosition'); 225 } 226 227 adjustImageHeight(); 228 }); 229 } 230 } 231 232 function initSliders() { 233 const sliderContainers = $('.slick-slider-container').not('.slick-initialized, .slick-slider-stage'); 234 235 if (sliderContainers.length > 0) { 236 let slickOptions = { 237 adaptiveHeight: true, 238 responsive: [], 239 }; 240 let optionsMd = { 241 breakpoint: 991, 242 settings: { 243 adaptiveHeight: true, 244 }, 245 }; 246 247 sliderContainers.each(function () { 248 if ($(this).attr('data-slides')) { 249 slickOptions.slidesToShow = $(this).attr('data-slides'); 250 } 251 252 // xs 253 if ($(this).attr('data-slides-xs')) { 254 let optionsXs = { 255 breakpoint: 767, 256 settings: { 257 slidesToShow: $(this).attr('data-slides-xs'), 258 }, 259 }; 260 261 slickOptions.responsive.push(optionsXs); 262 } 263 264 // md 265 if ($(this).attr('data-slides-md')) { 266 optionsMd.settings.slidesToShow = $(this).attr('data-slides-md'); 267 } 268 269 slickOptions.responsive.push(optionsMd); 270 271 // xl 272 if ($(this).attr('data-slides-xl')) { 273 let optionsXl = { 274 breakpoint: 1200, 275 settings: { 276 slidesToShow: $(this).attr('data-slides-xl'), 277 }, 278 }; 279 280 slickOptions.responsive.push(optionsXl); 281 } 282 283 $(this).slick(slickOptions); 284 }); 285 } 286 } 287 288 function preventAriaDescribedBy() { 289 $('.slick-slider').each(function () { 290 const $slider = $(this); 291 const clean = () => $slider.find('.slick-slide').removeAttr('aria-describedby'); 292 293 clean(); 294 $slider.on('afterChange', clean); 295 $slider.on('init', clean); 296 }); 297 } 298 299 setSlickForSingleGallery(); 300 initSliders(); 301 initModalSliders(); 302 setTimeout(preventAriaDescribedBy, 500); 303 304 $(document).on('ajaxPaginationTriggered', function () { 305 initModalSliders(); 306 }); 307 308 $(window).resize(function () { 309 setTimeout(function () { 310 setSlickForSingleGallery(); 311 adjustImageHeight(); 312 }, 500); 313 }); 314})(jQuery); 315 316 317jQuery.noConflict(); 318 319jQuery(document).ready(function ($) { 320 Bw.Viewport = function () { 321 var self = this; 322 this.width = 0; 323 this.height = 0; 324 this.scrollLeft = 0; 325 this.scrollTop = 0; 326 this.scrollInitiators = []; 327 this.scrollBarSize = 0; 328 this.hasSizeChanged = false; 329 this.hasScrollChanged = false; 330 331 // Blendet die Scrollbar auf allen Seiten aus. Das ist eher Quatsch. 332 this.constructor = function () { 333 self.width = $(window).width(); 334 self.height = $(window).height(); 335 }; 336 337 this.setScrollLeft = function (value) { 338 if (self.scrollLeft == value) return; 339 340 self.scrollLeft = value; 341 self.hasScrollChanged = true; 342 343 //$(window).scrollLeft( value ); 344 $('html,body').animate({ 345 scrollLeft: value, 346 }); 347 }; 348 349 this.setScrollTop = function (value) { 350 if (self.scrollTop == value) return; 351 352 self.scrollTop = value; 353 self.hasScrollChanged = true; 354 355 //$(window).scrollTop( value ); 356 $('html,body').animate({ 357 scrollTop: value, 358 }); 359 }; 360 361 this.triggerResize = function () { 362 self.hasSizeChanged = true; 363 }; 364 365 // Disable the document scrollbars. 366 this.disableScrollbars = function (initiator) { 367 var index = self.scrollInitiators.indexOf(initiator); 368 if (index == -1) { 369 self.scrollInitiators.push(initiator); 370 } 371 372 if (this.scrollInitiators.length != 1) { 373 return; 374 } 375 376 var style = self.el.style; 377 378 if (isNaN(self.scrollBarSize)) { 379 var width = self.el.width(); 380 style.overflow = 'hidden'; 381 self.scrollBarSize = self.el.width() - width; 382 style.paddingRight = self.scrollBarSize + 'px'; 383 } else { 384 style.overflow = 'hidden'; 385 style.paddingRight = self.scrollBarSize + 'px'; 386 } 387 388 //self.trigger('scrollbars', false); 389 }; 390 391 // Enable the document scrollbars 392 this.enableScrollbars = function (initiator) { 393 var index = self.scrollInitiators.indexOf(initiator); 394 if (index != -1) { 395 self.scrollInitiators.splice(index, 1); 396 } 397 398 if (self.scrollInitiators.length != 0) return; 399 400 self.el.style.overflow = ''; 401 self.el.style.paddingRight = ''; 402 //self.trigger('scrollbars', true); 403 }; 404 405 // Triggered on every page repaint 406 this.onFrame = function () { 407 if (self.hasSizeChanged) { 408 self.hasSizeChanged = false;
409 var width = self.width; 410 var height = self.height; 411 412 /*self.trigger('pre-resize', width, height); 413 self.trigger('resize', width, height); 414 self.trigger('post-resize', width, height);*/ 415 } 416 417 if (self.hasScrollChanged) { 418 self.hasScrollChanged = false; 419 var scrollLeft = self.scrollLeft; 420 var scrollTop = self.scrollTop; 421 422 self.trigger('scroll', scrollLeft, scrollTop); 423 self.trigger('post-scroll', scrollLeft, scrollTop); 424 } 425 }; 426 427 // Triggered after the size of the window has changed. 428 this.onWindowResize = function () { 429 var width = $(window).width(); 430 var height = $(window).height(); 431 432 if (self.width != width || self.height != height) { 433 self.width = width; 434 self.height = height; 435 self.hasSizeChanged = true; 436 } 437 }; 438 439 // Triggered after the scroll position of the document has changed. 440 this.onWindowScroll = function () { 441 /*var scrollLeft = supportsPageOffset ? window.pageXOffset : isCSS1Compat ? document.documentElement.scrollLeft : document.body.scrollLeft; 442 var scrollTop = supportsPageOffset ? window.pageYOffset : isCSS1Compat ? document.documentElement.scrollTop : document.body.scrollTop;*/ 443 var scrollLeft = $(window).scrollLeft(); 444 var scrollTop = $(window).scrollTop(); 445 446 //console.log("onWindowScroll"); 447 448 if (self.scrollLeft != scrollLeft || self.scrollTop != scrollTop) { 449 self.scrollLeft = scrollLeft; 450 self.scrollTop = scrollTop; 451 self.hasScrollChanged = true; 452 } 453 }; 454 455 // Return the current instance of the Viewport service. 456 /*this.getInstance() { 457 return Services.get('Viewport', Viewport); 458 }*/ 459 460 $(window).scroll(function () { 461 self.onWindowScroll(); 462 // attachEvent ? 463 }); 464 465 $(window).resize(function () { 466 self.onWindowResize(); 467 // attachEvent ? 468 }); 469 470 this.constructor(); 471 }; 472}); 473 474 475/*! Magnific Popup - v1.1.0 - 2016-02-20 476* http://dimsemenov.com/plugins/magnific-popup/ 477* Copyright (c) 2016 Dmitry Semenov; */ 478!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports?require("jquery"):window.jQuery||window.Zepto)}(function(a){var b,c,d,e,f,g,h="Close",i="BeforeClose",j="AfterClose",k="BeforeAppend",l="MarkupParse",m="Open",n="Change",o="mfp",p="."+o,q="mfp-ready",r="mfp-removing",s="mfp-prevent-close",t=function(){},u=!!window.jQuery,v=a(window),w=function(a,c){b.ev.on(o+a+p,c)},x=function(b,c,d,e){var f=document.createElement("div");return f.className="mfp-"+b,d&&(f.innerHTML=d),e?c&&c.appendChild(f):(f=a(f),c&&f.appendTo(c)),f},y=function(c,d){b.ev.triggerHandler(o+c,d),b.st.callbacks&&(c=c.charAt(0).toLowerCase()+c.slice(1),b.st.callbacks[c]&&b.st.callbacks[c].apply(b,a.isArray(d)?d:[d]))},z=function(c){return c===g&&b.currTemplate.closeBtn||(b.currTemplate.closeBtn=a(b.st.closeMarkup.replace("%title%",b.st.tClose)),g=c),b.currTemplate.closeBtn},A=function(){a.magnificPopup.instance||(b=new t,b.init(),a.magnificPopup.instance=b)},B=function(){var a=document.createElement("p").style,b=["ms","O","Moz","Webkit"];if(void 0!==a.transition)return!0;for(;b.length;)if(b.pop()+"Transition"in a)return!0;return!1};t.prototype={constructor:t,init:function(){var c=navigator.appVersion;b.isLowIE=b.isIE8=document.all&&!document.addEventListener,b.isAndroid=/android/gi.test(c),b.isIOS=/iphone|ipad|ipod/gi.test(c),b.supportsTransition=B(),b.probablyMobile=b.isAndroid||b.isIOS||/(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent),d=a(document),b.popupsCache={}},open:function(c){var e;if(c.isObj===!1){b.items=c.items.toArray(),b.index=0;var g,h=c.items;for(e=0;e<h.length;e++)if(g=h[e],g.parsed&&(g=g.el[0]),g===c.el[0]){b.index=e;break}}else b.items=a.isArray(c.items)?c.items:[c.items],b.index=c.index||0;if(b.isOpen)return void b.updateItemHTML();b.types=[],f="",c.mainEl&&c.mainEl.length?b.ev=c.mainEl.eq(0):b.ev=d,c.key?(b.popupsCache[c.key]||(b.popupsCache[c.key]={}),b.currTemplate=b.popupsCache[c.key]):b.currTemplate={},b.st=a.extend(!0,{},a.magnificPopup.defaults,c),b.fixedContentPos="auto"===b.st.fixedContentPos?!b.probablyMobile:b.st.fixedContentPos,b.st.modal&&(b.st.closeOnContentClick=!1,b.st.closeOnBgClick=!1,b.st.showCloseBtn=!1,b.st.enableEscapeKey=!1),b.bgOverlay||(b.bgOverlay=x("bg").on("click"+p,function(){b.close()}),b.wrap=x("wrap").attr("tabindex",-1).on("click"+p,function(a){b._checkIfClose(a.target)&&b.close()}),b.container=x("container",b.wrap)),b.contentContainer=x("content"),b.st.preloader&&(b.preloader=x("preloader",b.container,b.st.tLoading));var i=a.magnificPopup.modules;for(e=0;e<i.length;e++){var j=i[e];j=j.charAt(0).toUpperCase()+j.slice(1),b["init"+j].call(b)}y("BeforeOpen"),b.st.showCloseBtn&&(b.st.closeBtnInside?(w(l,function(a,b,c,d){c.close_replaceWith=z(d.type)}),f+=" mfp-close-btn-in"):b.wrap.append(z())),b.st.alignTop&&(f+=" mfp-align-top"),b.fixedContentPos?b.wrap.css({overflow:b.st.overflowY,overflowX:"hidden",overflowY:b.
478st.overflowY}):b.wrap.css({top:v.scrollTop(),position:"absolute"}),(b.st.fixedBgPos===!1||"auto"===b.st.fixedBgPos&&!b.fixedContentPos)&&b.bgOverlay.css({height:d.height(),position:"absolute"}),b.st.enableEscapeKey&&d.on("keyup"+p,function(a){27===a.keyCode&&b.close()}),v.on("resize"+p,function(){b.updateSize()}),b.st.closeOnContentClick||(f+=" mfp-auto-cursor"),f&&b.wrap.addClass(f);var k=b.wH=v.height(),n={};if(b.fixedContentPos&&b._hasScrollBar(k)){var o=b._getScrollbarSize();o&&(n.marginRight=o)}b.fixedContentPos&&(b.isIE7?a("body, html").css("overflow","hidden"):n.overflow="hidden");var r=b.st.mainClass;return b.isIE7&&(r+=" mfp-ie7"),r&&b._addClassToMFP(r),b.updateItemHTML(),y("BuildControls"),a("html").css(n),b.bgOverlay.add(b.wrap).prependTo(b.st.prependTo||a(document.body)),b._lastFocusedEl=document.activeElement,setTimeout(function(){b.content?(b._addClassToMFP(q),b._setFocus()):b.bgOverlay.addClass(q),d.on("focusin"+p,b._onFocusIn)},16),b.isOpen=!0,b.updateSize(k),y(m),c},close:function(){b.isOpen&&(y(i),b.isOpen=!1,b.st.removalDelay&&!b.isLowIE&&b.supportsTransition?(b._addClassToMFP(r),setTimeout(function(){b._close()},b.st.removalDelay)):b._close())},_close:function(){y(h);var c=r+" "+q+" ";if(b.bgOverlay.detach(),b.wrap.detach(),b.container.empty(),b.st.mainClass&&(c+=b.st.mainClass+" "),b._removeClassFromMFP(c),b.fixedContentPos){var e={marginRight:""};b.isIE7?a("body, html").css("overflow",""):e.overflow="",a("html").css(e)}d.off("keyup"+p+" focusin"+p),b.ev.off(p),b.wrap.attr("class","mfp-wrap").removeAttr("style"),b.bgOverlay.attr("class","mfp-bg"),b.container.attr("class","mfp-container"),!b.st.showCloseBtn||b.st.closeBtnInside&&b.currTemplate[b.currItem.type]!==!0||b.currTemplate.closeBtn&&b.currTemplate.closeBtn.detach(),b.st.autoFocusLast&&b._lastFocusedEl&&a(b._lastFocusedEl).focus(),b.currItem=null,b.content=null,b.currTemplate=null,b.prevHeight=0,y(j)},updateSize:function(a){if(b.isIOS){var c=document.documentElement.clientWidth/window.innerWidth,d=window.innerHeight*c;b.wrap.css("height",d),b.wH=d}else b.wH=a||v.height();b.fixedContentPos||b.wrap.css("height",b.wH),y("Resize")},updateItemHTML:function(){var c=b.items[b.index];b.contentContainer.detach(),b.content&&b.content.detach(),c.parsed||(c=b.parseEl(b.index));var d=c.type;if(y("BeforeChange",[b.currItem?b.currItem.type:"",d]),b.currItem=c,!b.currTemplate[d]){var f=b.st[d]?b.st[d].markup:!1;y("FirstMarkupParse",f),f?b.currTemplate[d]=a(f):b.currTemplate[d]=!0}e&&e!==c.type&&b.container.removeClass("mfp-"+e+"-holder");var g=b["get"+d.charAt(0).toUpperCase()+d.slice(1)](c,b.currTemplate[d]);b.appendContent(g,d),c.preloaded=!0,y(n,c),e=c.type,b.container.prepend(b.contentContainer),y("AfterChange")},appendContent:function(a,c){b.content=a,a?b.st.showCloseBtn&&b.st.closeBtnInside&&b.currTemplate[c]===!0?b.content.find(".mfp-close").length||b.content.append(z()):b.content=a:b.content="",y(k),b.container.addClass("mfp-"+c+"-holder"),b.contentContainer.append(b.content)},parseEl:function(c){var d,e=b.items[c];if(e.tagName?e={el:a(e)}:(d=e.type,e={data:e,src:e.src}),e.el){for(var f=b.types,g=0;g<f.length;g++)if(e.el.hasClass("mfp-"+f[g])){d=f[g];break}e.src=e.el.attr("data-mfp-src"),e.src||(e.src=e.el.attr("href"))}return e.type=d||b.st.type||"inline",e.index=c,e.parsed=!0,b.items[c]=e,y("ElementParse",e),b.items[c]},addGroup:function(a,c){var d=function(d){d.mfpEl=this,b._openClick(d,a,c)};c||(c={});var e="click.magnificPopup";c.mainEl=a,c.items?(c.isObj=!0,a.off(e).on(e,d)):(c.isObj=!1,c.delegate?a.off(e).on(e,c.delegate,d):(c.items=a,a.off(e).on(e,d)))},_openClick:function(c,d,e){var f=void 0!==e.midClick?e.midClick:a.magnificPopup.defaults.midClick;if(f||!(2===c.which||c.ctrlKey||c.metaKey||c.altKey||c.shiftKey)){var g=void 0!==e.disableOn?e.disableOn:a.magnificPopup.defaults.disableOn;if(g)if(a.isFunction(g)){if(!g.call(b))return!0}else if(v.width()<g)return!0;c.type&&(c.preventDefault(),b.isOpen&&c.stopPropagation()),e.el=a(c.mfpEl),e.delegate&&(e.items=d.find(e.delegate)),b.open(e)}},updateStatus:function(a,d){if(b.preloader){c!==a&&b.container.removeClass("mfp-s-"+c),d||"loading"!==a||(d=b.st.tLoading);var e={status:a,text:d};y("UpdateStatus",e),a=e.status,d=e.text,b.preloader.html(d),b.preloader.find("a").on("click",function(a){a.stopImmediatePropagation()}),b.container.addClass("mfp-s-"+a),c=a}},_checkIfClose:function(c){if(!a(c).hasClass(s)){var d=b.st.closeOnContentClick,e=b.st.closeOnBgClick;if(d&&e)return!0;
478if(!b.content||a(c).hasClass("mfp-close")||b.preloader&&c===b.preloader[0])return!0;if(c===b.content[0]||a.contains(b.content[0],c)){if(d)return!0}else if(e&&a.contains(document,c))return!0;return!1}},_addClassToMFP:function(a){b.bgOverlay.addClass(a),b.wrap.addClass(a)},_removeClassFromMFP:function(a){this.bgOverlay.removeClass(a),b.wrap.removeClass(a)},_hasScrollBar:function(a){return(b.isIE7?d.height():document.body.scrollHeight)>(a||v.height())},_setFocus:function(){(b.st.focus?b.content.find(b.st.focus).eq(0):b.wrap).focus()},_onFocusIn:function(c){return c.target===b.wrap[0]||a.contains(b.wrap[0],c.target)?void 0:(b._setFocus(),!1)},_parseMarkup:function(b,c,d){var e;d.data&&(c=a.extend(d.data,c)),y(l,[b,c,d]),a.each(c,function(c,d){if(void 0===d||d===!1)return!0;if(e=c.split("_"),e.length>1){var f=b.find(p+"-"+e[0]);if(f.length>0){var g=e[1];"replaceWith"===g?f[0]!==d[0]&&f.replaceWith(d):"img"===g?f.is("img")?f.attr("src",d):f.replaceWith(a("<img>").attr("src",d).attr("class",f.attr("class"))):f.attr(e[1],d)}}else b.find(p+"-"+c).html(d)})},_getScrollbarSize:function(){if(void 0===b.scrollbarSize){var a=document.createElement("div");a.style.cssText="width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;",document.body.appendChild(a),b.scrollbarSize=a.offsetWidth-a.clientWidth,document.body.removeChild(a)}return b.scrollbarSize}},a.magnificPopup={instance:null,proto:t.prototype,modules:[],open:function(b,c){return A(),b=b?a.extend(!0,{},b):{},b.isObj=!0,b.index=c||0,this.instance.open(b)},close:function(){return a.magnificPopup.instance&&a.magnificPopup.instance.close()},registerModule:function(b,c){c.options&&(a.magnificPopup.defaults[b]=c.options),a.extend(this.proto,c.proto),this.modules.push(b)},defaults:{disableOn:0,key:null,midClick:!1,mainClass:"",preloader:!0,focus:"",closeOnContentClick:!1,closeOnBgClick:!0,closeBtnInside:!0,showCloseBtn:!0,enableEscapeKey:!0,modal:!1,alignTop:!1,removalDelay:0,prependTo:null,fixedContentPos:"auto",fixedBgPos:"auto",overflowY:"auto",closeMarkup:'<button title="%title%" type="button" class="mfp-close">×</button>',tClose:"Close (Esc)",tLoading:"Loading...",autoFocusLast:!0}},a.fn.magnificPopup=function(c){A();var d=a(this);if("string"==typeof c)if("open"===c){var e,f=u?d.data("magnificPopup"):d[0].magnificPopup,g=parseInt(arguments[1],10)||0;f.items?e=f.items[g]:(e=d,f.delegate&&(e=e.find(f.delegate)),e=e.eq(g)),b._openClick({mfpEl:e},d,f)}else b.isOpen&&b[c].apply(b,Array.prototype.slice.call(arguments,1));else c=a.extend(!0,{},c),u?d.data("magnificPopup",c):d[0].magnificPopup=c,b.addGroup(d,c);return d};var C,D,E,F="inline",G=function(){E&&(D.after(E.addClass(C)).detach(),E=null)};a.magnificPopup.registerModule(F,{options:{hiddenClass:"hide",markup:"",tNotFound:"Content not found"},proto:{initInline:function(){b.types.push(F),w(h+"."+F,function(){G()})},getInline:function(c,d){if(G(),c.src){var e=b.st.inline,f=a(c.src);if(f.length){var g=f[0].parentNode;g&&g.tagName&&(D||(C=e.hiddenClass,D=x(C),C="mfp-"+C),E=f.after(D).detach().removeClass(C)),b.updateStatus("ready")}else b.updateStatus("error",e.tNotFound),f=a("<div>");return c.inlineElement=f,f}return b.updateStatus("ready"),b._parseMarkup(d,{},c),d}}});var H,I="ajax",J=function(){H&&a(document.body).removeClass(H)},K=function(){J(),b.req&&b.req.abort()};a.magnificPopup.registerModule(I,{options:{settings:null,cursor:"mfp-ajax-cur",tError:'<a href="%url%">The content</a> could not be loaded.'},proto:{initAjax:function(){b.types.push(I),H=b.st.ajax.cursor,w(h+"."+I,K),w("BeforeChange."+I,K)},getAjax:function(c){H&&a(document.body).addClass(H),b.updateStatus("loading");var d=a.extend({url:c.src,success:function(d,e,f){var g={data:d,xhr:f};y("ParseAjax",g),b.appendContent(a(g.data),I),c.finished=!0,J(),b._setFocus(),setTimeout(function(){b.wrap.addClass(q)},16),b.updateStatus("ready"),y("AjaxContentAdded")},error:function(){J(),c.finished=c.loadError=!0,b.updateStatus("error",b.st.ajax.tError.replace("%url%",c.src))}},b.st.ajax.settings);return b.req=a.ajax(d),""}}});var L,M=function(c){if(c.data&&void 0!==c.data.title)return c.data.title;
478var d=b.st.image.titleSrc;if(d){if(a.isFunction(d))return d.call(b,c);if(c.el)return c.el.attr(d)||""}return""};a.magnificPopup.registerModule("image",{options:{markup:'<div class="mfp-figure"><div class="mfp-close"></div><figure><div class="mfp-img"></div><figcaption><div class="mfp-bottom-bar"><div class="mfp-title"></div><div class="mfp-counter"></div></div></figcaption></figure></div>',cursor:"mfp-zoom-out-cur",titleSrc:"title",verticalFit:!0,tError:'<a href="%url%">The image</a> could not be loaded.'},proto:{initImage:function(){var c=b.st.image,d=".image";b.types.push("image"),w(m+d,function(){"image"===b.currItem.type&&c.cursor&&a(document.body).addClass(c.cursor)}),w(h+d,function(){c.cursor&&a(document.body).removeClass(c.cursor),v.off("resize"+p)}),w("Resize"+d,b.resizeImage),b.isLowIE&&w("AfterChange",b.resizeImage)},resizeImage:function(){var a=b.currItem;if(a&&a.img&&b.st.image.verticalFit){var c=0;b.isLowIE&&(c=parseInt(a.img.css("padding-top"),10)+parseInt(a.img.css("padding-bottom"),10)),a.img.css("max-height",b.wH-c)}},_onImageHasSize:function(a){a.img&&(a.hasSize=!0,L&&clearInterval(L),a.isCheckingImgSize=!1,y("ImageHasSize",a),a.imgHidden&&(b.content&&b.content.removeClass("mfp-loading"),a.imgHidden=!1))},findImageSize:function(a){var c=0,d=a.img[0],e=function(f){L&&clearInterval(L),L=setInterval(function(){return d.naturalWidth>0?void b._onImageHasSize(a):(c>200&&clearInterval(L),c++,void(3===c?e(10):40===c?e(50):100===c&&e(500)))},f)};e(1)},getImage:function(c,d){var e=0,f=function(){c&&(c.img[0].complete?(c.img.off(".mfploader"),c===b.currItem&&(b._onImageHasSize(c),b.updateStatus("ready")),c.hasSize=!0,c.loaded=!0,y("ImageLoadComplete")):(e++,200>e?setTimeout(f,100):g()))},g=function(){c&&(c.img.off(".mfploader"),c===b.currItem&&(b._onImageHasSize(c),b.updateStatus("error",h.tError.replace("%url%",c.src))),c.hasSize=!0,c.loaded=!0,c.loadError=!0)},h=b.st.image,i=d.find(".mfp-img");if(i.length){var j=document.createElement("img");j.className="mfp-img",c.el&&c.el.find("img").length&&(j.alt=c.el.find("img").attr("alt")),c.img=a(j).on("load.mfploader",f).on("error.mfploader",g),j.src=c.src,i.is("img")&&(c.img=c.img.clone()),j=c.img[0],j.naturalWidth>0?c.hasSize=!0:j.width||(c.hasSize=!1)}return b._parseMarkup(d,{title:M(c),img_replaceWith:c.img},c),b.resizeImage(),c.hasSize?(L&&clearInterval(L),c.loadError?(d.addClass("mfp-loading"),b.updateStatus("error",h.tError.replace("%url%",c.src))):(d.removeClass("mfp-loading"),b.updateStatus("ready")),d):(b.updateStatus("loading"),c.loading=!0,c.hasSize||(c.imgHidden=!0,d.addClass("mfp-loading"),b.findImageSize(c)),d)}}});var N,O=function(){return void 0===N&&(N=void 0!==document.createElement("p").style.MozTransform),N};a.magnificPopup.registerModule("zoom",{options:{enabled:!1,easing:"ease-in-out",duration:300,opener:function(a){return a.is("img")?a:a.find("img")}},proto:{initZoom:function(){var a,c=b.st.zoom,d=".zoom";if(c.enabled&&b.supportsTransition){var e,f,g=c.duration,j=function(a){var b=a.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"),d="all "+c.duration/1e3+"s "+c.easing,e={position:"fixed",zIndex:9999,left:0,top:0,"-webkit-backface-visibility":"hidden"},f="transition";return e["-webkit-"+f]=e["-moz-"+f]=e["-o-"+f]=e[f]=d,b.css(e),b},k=function(){b.content.css("visibility","visible")};w("BuildControls"+d,function(){if(b._allowZoom()){if(clearTimeout(e),b.content.css("visibility","hidden"),a=b._getItemToZoom(),!a)return void k();f=j(a),f.css(b._getOffset()),b.wrap.append(f),e=setTimeout(function(){f.css(b._getOffset(!0)),e=setTimeout(function(){k(),setTimeout(function(){f.remove(),a=f=null,y("ZoomAnimationEnded")},16)},g)},16)}}),w(i+d,function(){if(b._allowZoom()){if(clearTimeout(e),b.st.removalDelay=g,!a){if(a=b._getItemToZoom(),!a)return;f=j(a)}f.css(b._getOffset(!0)),b.wrap.append(f),b.content.css("visibility","hidden"),setTimeout(function(){f.css(b._getOffset())},16)}}),w(h+d,function(){b._allowZoom()&&(k(),f&&f.remove(),a=null)})}},_allowZoom:function(){return"image"===b.currItem.type},_getItemToZoom:function(){return b.currItem.hasSize?b.currItem.img:!1},_getOffset:function(c){var d;d=c?b.currItem.img:b.st.zoom.opener(b.currItem.el||b.currItem);var e=d.offset(),f=parseInt(d.css("padding-top"),10),g=parseInt(d.css("padding-bottom"),10);e.top-=a(window).scrollTop()-f;var h={width:d.width(),height:(u?d.innerHeight():d[0].offsetHeight)-g-f};return O()?h["-moz-transform"]=h.transform="translate("+e.left+"px,"+e.top+"px)":(h.left=e.left,h.top=e.top),h}}});
478var P="iframe",Q="//about:blank",R=function(a){if(b.currTemplate[P]){var c=b.currTemplate[P].find("iframe");c.length&&(a||(c[0].src=Q),b.isIE8&&c.css("display",a?"block":"none"))}};a.magnificPopup.registerModule(P,{options:{markup:'<div class="mfp-iframe-scaler"><div class="mfp-close"></div><iframe class="mfp-iframe" src="//about:blank" frameborder="0" allowfullscreen></iframe></div>',srcAction:"iframe_src",patterns:{youtube:{index:"youtube.com",id:"v=",src:"//www.youtube.com/embed/%id%?autoplay=1"},vimeo:{index:"vimeo.com/",id:"/",src:"//player.vimeo.com/video/%id%?autoplay=1"},gmaps:{index:"//maps.google.",src:"%id%&output=embed"}}},proto:{initIframe:function(){b.types.push(P),w("BeforeChange",function(a,b,c){b!==c&&(b===P?R():c===P&&R(!0))}),w(h+"."+P,function(){R()})},getIframe:function(c,d){var e=c.src,f=b.st.iframe;a.each(f.patterns,function(){return e.indexOf(this.index)>-1?(this.id&&(e="string"==typeof this.id?e.substr(e.lastIndexOf(this.id)+this.id.length,e.length):this.id.call(this,e)),e=this.src.replace("%id%",e),!1):void 0});var g={};return f.srcAction&&(g[f.srcAction]=e),b._parseMarkup(d,g,c),b.updateStatus("ready"),d}}});var S=function(a){var c=b.items.length;return a>c-1?a-c:0>a?c+a:a},T=function(a,b,c){return a.replace(/%curr%/gi,b+1).replace(/%total%/gi,c)};a.magnificPopup.registerModule("gallery",{options:{enabled:!1,arrowMarkup:'<button title="%title%" type="button" class="mfp-arrow mfp-arrow-%dir%"></button>',preload:[0,2],navigateByImgClick:!0,arrows:!0,tPrev:"Previous (Left arrow key)",tNext:"Next (Right arrow key)",tCounter:"%curr% of %total%"},proto:{initGallery:function(){var c=b.st.gallery,e=".mfp-gallery";return b.direction=!0,c&&c.enabled?(f+=" mfp-gallery",w(m+e,function(){c.navigateByImgClick&&b.wrap.on("click"+e,".mfp-img",function(){return b.items.length>1?(b.next(),!1):void 0}),d.on("keydown"+e,function(a){37===a.keyCode?b.prev():39===a.keyCode&&b.next()})}),w("UpdateStatus"+e,function(a,c){c.text&&(c.text=T(c.text,b.currItem.index,b.items.length))}),w(l+e,function(a,d,e,f){var g=b.items.length;e.counter=g>1?T(c.tCounter,f.index,g):""}),w("BuildControls"+e,function(){if(b.items.length>1&&c.arrows&&!b.arrowLeft){var d=c.arrowMarkup,e=b.arrowLeft=a(d.replace(/%title%/gi,c.tPrev).replace(/%dir%/gi,"left")).addClass(s),f=b.arrowRight=a(d.replace(/%title%/gi,c.tNext).replace(/%dir%/gi,"right")).addClass(s);e.click(function(){b.prev()}),f.click(function(){b.next()}),b.container.append(e.add(f))}}),w(n+e,function(){b._preloadTimeout&&clearTimeout(b._preloadTimeout),b._preloadTimeout=setTimeout(function(){b.preloadNearbyImages(),b._preloadTimeout=null},16)}),void w(h+e,function(){d.off(e),b.wrap.off("click"+e),b.arrowRight=b.arrowLeft=null})):!1},next:function(){b.direction=!0,b.index=S(b.index+1),b.updateItemHTML()},prev:function(){b.direction=!1,b.index=S(b.index-1),b.updateItemHTML()},goTo:function(a){b.direction=a>=b.index,b.index=a,b.updateItemHTML()},preloadNearbyImages:function(){var a,c=b.st.gallery.preload,d=Math.min(c[0],b.items.length),e=Math.min(c[1],b.items.length);for(a=1;a<=(b.direction?e:d);a++)b._preloadItem(b.index+a);for(a=1;a<=(b.direction?d:e);a++)b._preloadItem(b.index-a)},_preloadItem:function(c){if(c=S(c),!b.items[c].preloaded){var d=b.items[c];d.parsed||(d=b.parseEl(c)),y("LazyLoad",d),"image"===d.type&&(d.img=a('<img class="mfp-img" />').on("load.mfploader",function(){d.hasSize=!0}).on("error.mfploader",function(){d.hasSize=!0,d.loadError=!0,y("LazyLoadError",d)}).attr("src",d.src)),d.preloaded=!0}}}});var U="retina";a.magnificPopup.registerModule(U,{options:{replaceSrc:function(a){return a.src.replace(/\.\w+$/,function(a){return"@2x"+a})},ratio:1},proto:{initRetina:function(){if(window.devicePixelRatio>1){var a=b.st.retina,c=a.ratio;c=isNaN(c)?c():c,c>1&&(w("ImageHasSize."+U,function(a,b){b.img.css({"max-width":b.img[0].naturalWidth/c,width:"100%"})}),w("ElementParse."+U,function(b,d){d.src=a.replaceSrc(d,c)}))}}}}),A()}); 479 480jQuery(document).ready(function ($) { 481 $.fn.markExternalLinks = function (options) { 482 // Set Icon 483 /*var settings = $.extend({ 484 icon: "fa-external-link" 485 }, options ); 486
487 this.append('<i class="fa '+settings.icon+'"></i>');*/ 488 489 // Check if URL contains domain and set it as internal/external link 490 this.filter(function () { 491 var currentLink = $(this); 492 493 var excludedItems = currentLink.parents('.btn-print').length > 0 || currentLink.parents('.news-related ').length > 0 || currentLink.parents('.news-list-view').length > 0 || currentLink.parents('.bwPortfolio').length > 0 || currentLink.parents('.linklistmodule').length > 0 || currentLink.hasClass('teaser-headline') || currentLink.has('img'); 494 var isExcluded = true; 495 if (excludedItems && excludedItems.length == 0) isExcluded = false; 496 497 if (isExcluded == false) return true; 498 499 return false; 500 }).each(function () { 501 var currentLink = $(this); 502 var linkHostname = this.hostname; 503 var currentHref = currentLink.attr('href'); 504 var documentDomain = window.location.hostname; 505 //documentDomain = documentDomain.substring(documentDomain.lastIndexOf(".", documentDomain.lastIndexOf(".") - 1) + 1); 506 507 if (currentHref) { 508 var match = location.hostname === linkHostname || linkHostname.startsWith('hyperdigital.px.media'); 509 if (!this.hostname.length) { 510 if (currentHref.substr(0, 1) == '/') match = true; // relative link 511 } 512 513 // check if link is internal or external 514 // hint: class external-link might be already set by typolink 515 if (match !== false) { 516 if (!currentLink.hasClass('intenal-link') && !currentLink.hasClass('external-link')) { 517 currentLink.addClass('internal-link'); 518 } 519 } else { 520 if (!currentLink.hasClass('intenal-link') && !currentLink.hasClass('external-link')) { 521 currentLink.addClass('external-link'); 522 523 if (typeof currentLink.attr('target') == 'undefined') { 524 currentLink.attr('target', '_blank'); 525 } 526 } 527 } 528 } 529 }); 530 }; 531}); 532 533 534jQuery.noConflict(); 535 536jQuery(document).ready(function ($) { 537 jQuery('.maincontent .imgtextmodule a, .maincontent .imgtextnavigation a:not(".btn-default"), .maincontent .teaser a, .maincontent .accordion .panel-module-item .panel-collapse a, .quotationmodule a, .event-link a, .maincontent .quicklinks a').markExternalLinks(); 538 539 var searchBtn = $('.search-open'); 540 var isFolgeseite = $('body').hasClass('bistum-folgeseiten'); 541 542 searchBtn.unbind('click').click(function () { 543 var self = $(this); 544 self.hide(); 545 546 var searchForm = self.parents('.input-group').find('.search-form-control'); 547 var searchSubmit = self.parent().find('.search-submit'); 548 549 searchSubmit.toggleClass('open'); 550 searchForm.toggleClass('visible'); 551 searchForm.focus(); 552 }); 553 554 // Erlaubt das toggeln des buttons per enter und space 555 $('.toggle-btn').on('click keydown', function (e) { 556 if (e.type === 'click' || e.key === 'Enter' || e.key === ' ') { 557 e.preventDefault(); 558 559 var self = $(this); 560 561 var toggleCont = self.parents('.container').find('.container-to-toggle'); 562 toggleCont.slideToggle(250); 563 564 var arrowDown = self.find('.arrow-down'); 565 var arrowUp = self.find('.arrow-up'); 566 567 self.toggleClass('open'); 568 arrowDown.toggle(); 569 arrowUp.toggle(); 570 } 571 }); 572 573 // Scroll-to-top Button 574 var toTop = $('.bwHeader--toTop'); 575 576 toTop.unbind('click').click(function () { 577 $('html, body').animate({ scrollTop: 0 }, 300, 'swing'); 578 }); 579 580 $(document).scroll(function () { 581 var menuBreakingPoint = 200; 582 583 if (isFolgeseite) { 584 menuBreakingPoint = $('.bwHeader').height(); 585 586 if ($('.stage').length > 0) { 587 menuBreakingPoint = $('.stage').height(); 588 } 589 } 590 591 var scrollTop = $(this).scrollTop(); 592 if (scrollTop >= menuBreakingPoint) { 593 if (!isFolgeseite) { 594 $('.bwHeader').addClass('belowFold'); 595 } 596 $('.bwSearch.fullscreen').addClass('belowFold'); 597 } else { 598 if (!isFolgeseite) { 599 $('.bwHeader').removeClass('belowFold'); 600 } 601 $('.bwSearch.fullscreen').removeClass('belowFold'); 602 } 603 }); 604 605 // iframe-Links 606 $('.maincontent .iframe-button a').each(function () { 607 var elementContainer = $(this).parent(); 608 var linkElement = elementContainer; 609 var iframeHeight = elementContainer.attr('data-iframe-height'); 610 var iframeWidth = elementContainer.attr('data-iframe-width'); 611 612 $(this).magnificPopup({ 613 type: 'iframe', 614 iframe: { 615 markup: '<style>.mfp-iframe-holder .mfp-content {max-width: ' + iframeWidth + 'px;height:' + iframeHeight + 'px}</style>' + '<div class="mfp-iframe-scaler" >' + '<div class="mfp-close"></div>' + '<iframe class="mfp-iframe" width="' + iframeWidth + '" height="' + iframeHeight + '" frameborder="0" allowfullscreen></iframe>' + '</div></div>', 616 }, 617 }); 618 }); 619 620 /* --- Paginierung Sprungmarken ---- */ 621 622 $('body').imagesLoaded(function () { 623 checkForPaginationCookie(); 624 }); 625 626 function checkForPaginationCookie() { 627 function getCookie(name) { 628 var pattern = RegExp(name + '=.[^;]*'); 629 matched = document.cookie.match(pattern); 630 if (matched) { 631 var cookie = matched[0].split('='); 632 return cookie[1]; 633 } 634 return false;
635 } 636 637 function removeCookie(sKey, sPath, sDomain) { 638 document.cookie = encodeURIComponent(sKey) + '=; expires=Thu, 01 Jan 1970 00:00:00 GMT' + (sDomain ? '; domain=' + sDomain : '') + (sPath ? '; path=' + sPath : ''); 639 } 640 641 if (document.cookie.match('jumpTo') !== null) { 642 var uid = getCookie('jumpTo'); 643 var headerHeight = $('#header').outerHeight(); 644 var container = $('#c' + uid); 645 646 if (container.length > 0) { 647 var containerPosX = container.offset().top - headerHeight; 648 var stageHeight = 0; 649 650 // Folgeseiten Header 651 if ($('.bwSubsite-navigation').length > 0) { 652 if ($(window).width() > 992) { 653 headerHeight += $('.bwSubsite-navigation').outerHeight(); 654 } else { 655 if ($('.bwSubsite-sitetitle').length > 0) { 656 headerHeight += $('.bwSubsite-sitetitle').outerHeight(); 657 } 658 } 659 } 660 661 // Sonderlösung News 662 if (container.parent().hasClass('news')) { 663 containerPosX = container.offset().top + stageHeight - headerHeight - 70; 664 } 665 666 // Scroll to paginated element 667 $('html, body').animate({ scrollTop: containerPosX }, 300, 'swing'); 668 669 // Delete cookie 670 removeCookie('jumpTo'); 671 } 672 } 673 } 674 675 function setPaginationIndicatorCookie(link) { 676 var container = link.parents('div[id^="c"]'); 677 var recordId = container.attr('id'); 678 679 if (recordId) { 680 recordId = recordId.replace('c', ''); 681 682 document.cookie = 'jumpTo=' + recordId; 683 } 684 } 685 686 // Pagination Indicator 687 $('.f3-widget-paginator a, .news-list-view .pagination-container a, .news-container form .btn-submit, .bwSubsite-news-container form .btn-submit').click(function () { 688 setPaginationIndicatorCookie($(this)); 689 }); 690 691 /* Magnific Pop-Up / Lightbox */ 692 $('.single-thumbnail-img .lightbox').magnificPopup({ 693 type: 'image', 694 removalDelay: 250, 695 mainClass: 'mfp-fade', 696 }); 697 698 var GalleryItems = []; 699 $('.gallery-thumbnail-img .lightbox img, .img-gallery-wrap .lightbox img').each(function (i) { 700 var theSrc = { 701 src: $(this).parent().attr('href'), 702 title: $(this).parent().attr('title'), 703 type: 'image', 704 }; 705 GalleryItems.push(theSrc); 706 }); 707 708 // Remove duplicate images 709 GalleryItems = GalleryItems.reduce(function (previous, current) { 710 var object = previous.filter(function (object) { 711 return object.src === current.src; 712 }); 713 if (object.length == 0) { 714 previous.push(current); 715 } 716 return previous; 717 }, []); 718 719 // Aus Selektor entfernt: ".gallery-thumbnail-img .lightbox" (Anwendung in Bild-Text-Modul, führte dazu dass immer das erste Bild geöffnet wurde) 720 var gallery = $('.img-gallery-wrap .lightbox').magnificPopup({ 721 type: 'image', 722 removalDelay: 250, 723 mainClass: 'mfp-fade', 724 gallery: { 725 enabled: true, 726 preload: [0, 1], 727 tCounter: '<div class="mfp-counter">%curr% / %total%</div>', 728 }, 729 items: GalleryItems, 730 }); 731 732 $('.second-image a').click(function (event) { 733 event.preventDefault(); 734 gallery.magnificPopup('open').magnificPopup('goTo', 1); 735 }); 736 737 $('.gallery').magnificPopup({ 738 delegate: '.lightbox', 739 type: 'image', 740 }); 741}); 742 743 744/** 745 * menu-aim is a jQuery plugin for dropdown menus that can differentiate 746 * between a user trying hover over a dropdown item vs trying to navigate into 747 * a submenu's contents. 748 * 749 * menu-aim assumes that you have are using a menu with submenus that expand 750 * to the menu's right. It will fire events when the user's mouse enters a new 751 * dropdown item *and* when that item is being intentionally hovered over. 752 * 753 * __________________________ 754 * | Monkeys >| Gorilla | 755 * | Gorillas >| Content | 756 * | Chimps >| Here | 757 * |___________|____________| 758 * 759 * In the above example, "Gorillas" is selected and its submenu content is 760 * being shown on the right. Imagine that the user's cursor is hovering over 761 * "Gorillas." When they move their mouse into the "Gorilla Content" area, they 762 * may briefly hover over "Chimps." This shouldn't close the "Gorilla Content" 763 * area. 764 * 765 * This problem is normally solved using timeouts and delays. menu-aim tries to 766 * solve this by detecting the direction of the user's mouse movement. This can 767 * make for quicker transitions when navigating up and down the menu. The 768 * experience is hopefully similar to amazon.com/'s "Shop by Department" 769 * dropdown. 770 * 771 * Use like so: 772 * 773 * $("#menu").menuAim({ 774 * activate: $.noop, // fired on row activation 775 * deactivate: $.noop // fired on row deactivation 776 * }); 777 * 778 * ...to receive events when a menu's row has been purposefully (de)activated. 779 * 780 * The following options can be passed to menuAim. All functions execute with 781 * the relevant row's HTML element as the execution context ('this'): 782 * 783 * .menuAim({ 784 * // Function to call when a row is purposefully activated. Use this 785 * // to show a submenu's content for the activated row. 786 * activate: function() {}, 787 * 788 * // Function to call when a row is deactivated. 789 * deactivate: function() {}, 790 * 791 * // Function to call when mouse enters a menu row. Entering a row 792 * // does not mean the row has been activated, as the user may be 793 * // mousing over to a submenu. 794 * enter: function() {}, 795 * 796 * // Function to call when mouse exits a menu row. 797 * exit: function() {}, 798 * 799 * // Selector for identifying which elements in the menu are rows 800 * // that can trigger the above events. Defaults to "> li". 801 * rowSelector: "> li", 802 * 803 * // You may have some menu rows that aren't submenus and therefore 804 * // shouldn't ever need to "activate." If so, filter submenu rows w/ 805 * // this selector. Defaults to "*" (all elements). 806 * submenuSelector: "*", 807 * 808 * // Direction the submenu opens relative to the main menu. Can be 809 * // left, right, above, or below. Defaults to "right". 810 * submenuDirection: "right" 811 * }); 812 * 813 * https://github.com/kamens/jQuery-menu-aim 814*/ 815(function($) { 816 817 $.fn.menuAim = function(opts) { 818 // Initialize menu-aim for all elements in jQuery collection 819 this.each(function() { 820 init.call(this, opts); 821 }); 822 823 return this; 824 }; 825 826 function init(opts) { 827 var $menu = $(this), 828 activeRow = null, 829 mouseLocs = [], 830 lastDelayLoc = null, 831 timeoutId = null, 832 options = $.extend({ 833 rowSelector: "> li", 834 submenuSelector: "*", 835 submenuDirection: "right", 836 tolerance: 75, // bigger = more forgivey when entering submenu 837 enter: $.noop, 838 exit: $.noop, 839 activate: $.noop, 840 deactivate: $.noop, 841 exitMenu: $.noop 842 }, opts); 843 844 var MOUSE_LOCS_TRACKED = 3, // number of past mouse locations to track 845 DELAY = 300; // ms delay when user appears to be entering submenu 846 847 /** 848 * Keep track of the last few locations of the mouse. 849 */ 850 var mousemoveDocument = function(e) { 851 mouseLocs.push({x: e.pageX, y: e.pageY}); 852 853 if (mouseLocs.length > MOUSE_LOCS_TRACKED) { 854 mouseLocs.shift(); 855 } 856 }; 857 858 /** 859 * Cancel possible row activations when leaving the menu entirely 860 */ 861 var mouseleaveMenu = function() { 862 if (timeoutId) { 863 clearTimeout(timeoutId); 864 } 865 866 // If exitMenu is supplied and returns true, deactivate the 867 // currently active row on menu exit. 868 if (options.exitMenu(this)) { 869 if (activeRow) { 870 options.deactivate(activeRow); 871 } 872 873 activeRow = null; 874 } 875 }; 876 877 /** 878 * Trigger a possible row activation whenever entering a new row. 879 */ 880 var mouseenterRow = function() { 881 if (timeoutId) { 882 // Cancel any previous activation delays 883 clearTimeout(timeoutId); 884 } 885 886 options.enter(this); 887 possiblyActivate(this); 888 }, 889 mouseleaveRow = function() { 890 options.exit(this); 891 }; 892 893 /* 894 * Immediately activate a row if the user clicks on it. 895 */ 896 var clickRow = function() { 897 activate(this); 898 }; 899 900 /** 901 * Activate a menu row. 902 */ 903 var activate = function(row) { 904 if (row == activeRow) { 905 return; 906 } 907 908 if (activeRow) { 909 options.deactivate(activeRow); 910 } 911 912 options.activate(row); 913 activeRow = row; 914 }; 915 916 /** 917 * Possibly activate a menu row. If mouse movement indicates that we 918 * shouldn't activate yet because user may be trying to enter 919 * a submenu's content, then delay and check again later. 920 */ 921 var possiblyActivate = function(row) {
vendor: 7,055 bytes, lines 922-1096
922 var delay = activationDelay(); 923 924 if (delay) { 925 timeoutId = setTimeout(function() { 926 possiblyActivate(row); 927 }, delay); 928 } else { 929 activate(row); 930 } 931 }; 932 933 /** 934 * Return the amount of time that should be used as a delay before the 935 * currently hovered row is activated. 936 * 937 * Returns 0 if the activation should happen immediately. Otherwise, 938 * returns the number of milliseconds that should be delayed before 939 * checking again to see if the row should be activated. 940 */ 941 var activationDelay = function() { 942 if (!activeRow || !$(activeRow).is(options.submenuSelector)) { 943 // If there is no other submenu row already active, then 944 // go ahead and activate immediately. 945 return 0; 946 } 947 948 var offset = $menu.offset(), 949 upperLeft = { 950 x: offset.left, 951 y: offset.top - options.tolerance 952 }, 953 upperRight = { 954 x: offset.left + $menu.outerWidth(), 955 y: upperLeft.y 956 }, 957 lowerLeft = { 958 x: offset.left, 959 y: offset.top + $menu.outerHeight() + options.tolerance 960 }, 961 lowerRight = { 962 x: offset.left + $menu.outerWidth(), 963 y: lowerLeft.y 964 }, 965 loc = mouseLocs[mouseLocs.length - 1], 966 prevLoc = mouseLocs[0]; 967 968 if (!loc) { 969 return 0; 970 } 971 972 if (!prevLoc) { 973 prevLoc = loc; 974 } 975 976 if (prevLoc.x < offset.left || prevLoc.x > lowerRight.x || 977 prevLoc.y < offset.top || prevLoc.y > lowerRight.y) { 978 // If the previous mouse location was outside of the entire 979 // menu's bounds, immediately activate. 980 return 0; 981 } 982 983 if (lastDelayLoc && 984 loc.x == lastDelayLoc.x && loc.y == lastDelayLoc.y) { 985 // If the mouse hasn't moved since the last time we checked 986 // for activation status, immediately activate. 987 return 0; 988 } 989 990 // Detect if the user is moving towards the currently activated 991 // submenu. 992 // 993 // If the mouse is heading relatively clearly towards 994 // the submenu's content, we should wait and give the user more 995 // time before activating a new row. If the mouse is heading 996 // elsewhere, we can immediately activate a new row. 997 // 998 // We detect this by calculating the slope formed between the 999 // current mouse location and the upper/lower right points of 1000 // the menu. We do the same for the previous mouse location. 1001 // If the current mouse location's slopes are 1002 // increasing/decreasing appropriately compared to the 1003 // previous's, we know the user is moving toward the submenu. 1004 // 1005 // Note that since the y-axis increases as the cursor moves 1006 // down the screen, we are looking for the slope between the 1007 // cursor and the upper right corner to decrease over time, not 1008 // increase (somewhat counterintuitively). 1009 function slope(a, b) { 1010 return (b.y - a.y) / (b.x - a.x); 1011 }; 1012 1013 var decreasingCorner = upperRight, 1014 increasingCorner = lowerRight; 1015 1016 // Our expectations for decreasing or increasing slope values 1017 // depends on which direction the submenu opens relative to the 1018 // main menu. By default, if the menu opens on the right, we 1019 // expect the slope between the cursor and the upper right 1020 // corner to decrease over time, as explained above. If the 1021 // submenu opens in a different direction, we change our slope 1022 // expectations. 1023 if (options.submenuDirection == "left") { 1024 decreasingCorner = lowerLeft; 1025 increasingCorner = upperLeft; 1026 } else if (options.submenuDirection == "below") { 1027 decreasingCorner = lowerRight; 1028 increasingCorner = lowerLeft; 1029 } else if (options.submenuDirection == "above") { 1030 decreasingCorner = upperLeft; 1031 increasingCorner = upperRight; 1032 } 1033 1034 var decreasingSlope = slope(loc, decreasingCorner), 1035 increasingSlope = slope(loc, increasingCorner), 1036 prevDecreasingSlope = slope(prevLoc, decreasingCorner), 1037 prevIncreasingSlope = slope(prevLoc, increasingCorner); 1038 1039 if (decreasingSlope < prevDecreasingSlope && 1040 increasingSlope > prevIncreasingSlope) { 1041 // Mouse is moving from previous location towards the 1042 // currently activated submenu. Delay before activating a 1043 // new menu row, because user may be moving into submenu. 1044 lastDelayLoc = loc; 1045 return DELAY; 1046 } 1047 1048 lastDelayLoc = null; 1049 return 0; 1050 }; 1051 1052 /** 1053 * Hook up initial menu events 1054 */ 1055 $menu 1056 .mouseleave(mouseleaveMenu) 1057 .find(options.rowSelector) 1058 .mouseenter(mouseenterRow) 1059 .mouseleave(mouseleaveRow) 1060 .click(clickRow); 1061 1062 $(document).mousemove(mousemoveDocument); 1063 1064 }; 1065})(jQuery); 1066 1067 1068 1069jQuery.noConflict(); 1070 1071(function ($) { 1072 Bw.Utilities = function () { 1073 var self = this; 1074 1075 this.bodyElement = $('body'); 1076 this.closeBrowserwarningIcon = $('.bwBrowserwarning .bwMenu--closer'); 1077 this.browserwarningContainer = $('.bwBrowserwarning'); 1078 this.closeCookiewarningIcon = $('.bwCookieWarning--closer'); 1079 this.cookiewarningContainer = $('.bwCookieWarning'); 1080 this.documentCookies = document.cookie; 1081 1082 this.constructor = function () { 1083 var deviceAgent = navigator.userAgent.toLowerCase(); 1084 1085 self.checkForBrowser(deviceAgent); 1086 self.checkForMobile(deviceAgent); 1087 self.showCookiewarning(); 1088 1089 this.closeBrowserwarningIcon.bind('click', function () { 1090 self.closeBrowserwarning(); 1091 }); 1092 1093 this.closeCookiewarningIcon.bind('click', function () { 1094 self.closeCookiewarning(); 1095 1096 return false;
1097 }); 1098 }; 1099 1100 this.closeBrowserwarning = function () { 1101 self.browserwarningContainer.fadeOut(250); 1102 }; 1103 1104 this.closeCookiewarning = function () { 1105 self.cookiewarningContainer.fadeOut(250); 1106 1107 expiryOneYear = new Date(); 1108 expiryOneYear.setMonth(expiryOneYear.getMonth() + 12); 1109 expiryOneYear = expiryOneYear.toUTCString(); 1110 1111 var currentDomain = window.location.hostname; 1112 currentDomain = currentDomain.split('.'); 1113 currentDomain = currentDomain.splice(1, 2); // use last two parts of domain 1114 currentDomain = currentDomain.join('.'); 1115 1116 if (currentDomain == 'sub.bistum-wuerzburg-master') currentDomain = 'bistum-wuerzburg-master.intra.bueroparallel.de'; 1117 1118 document.cookie = 'cookieWarningSeen=true;domain=.' + currentDomain + ';path=/;expires=' + expiryOneYear; 1119 }; 1120 1121 this.showCookiewarning = function () { 1122 // show warning only when cookie isn't already set 1123 1124 if (self.documentCookies.match('cookieWarningSeen') == null) { 1125 self.cookiewarningContainer.show(); 1126 } 1127 }; 1128 1129 this.checkForBrowser = function (deviceAgent) { 1130 // Desktop 1131 if (deviceAgent.match(/msie/)) { 1132 self.bodyElement.addClass('bwBrowser--ie'); 1133 1134 var ieRegExp = new RegExp('msie ([0-9]{1,}[.0-9]{0,})'); 1135 1136 var version = null; 1137 if (ieRegExp.exec(deviceAgent) != null) version = parseFloat(RegExp.$1); 1138 1139 if (version != null) self.bodyElement.addClass('bwBrowserversion--' + String(version)); 1140 1141 return; 1142 } 1143 1144 if (deviceAgent.match(/mozilla/)) { 1145 self.bodyElement.addClass('bwBrowser--firefox'); 1146 } 1147 }; 1148 1149 this.checkForMobile = function (deviceAgent) { 1150 // Mobile 1151 if (deviceAgent.match(/(iphone|ipod|ipad)/)) { 1152 self.bodyElement.addClass('bwDevice--mobile bwBrowser--ios'); 1153 } 1154 1155 if (deviceAgent.match(/android/)) { 1156 self.bodyElement.addClass('bwDevice--mobile bwBrowser--android'); 1157 } 1158 1159 if (deviceAgent.match(/blackberry/)) { 1160 self.bodyElement.addClass('blackberry'); 1161 self.bodyElement.addClass('bwDevice--mobile bwBrowser--blackberry'); 1162 } 1163 1164 if (deviceAgent.match(/(symbianos|^sonyericsson|^nokia|^samsung|^lg)/)) { 1165 self.bodyElement.addClass('bwDevice--mobile'); 1166 } 1167 }; 1168 1169 this.constructor(); 1170 }; 1171})(jQuery); 1172 1173 1174jQuery.noConflict(); 1175 1176(function ($) { 1177 // Delayed to prevent wrong dimensions (in case CSS loads too slow) 1178 var slickSlider = setTimeout(function () { 1179 var $slider = $('.bwSubsite-stage .slick-slider-stage'); 1180 1181 $slider.on('init', function (event, slick) { 1182 $(this).find('.slick-track') 1183 .attr('aria-label', 'Bilderkarussell'); 1184 1185 var slides = $(this).find('.slick-slide'); 1186 slides.each(function (index) { 1187 var headline = $(this).find('.bfStage__headline'); 1188 headline.attr('id', 'slick-slide1' + index); 1189 }); 1190 }); 1191 1192 $slider.not('.slick-initialized').slick({ 1193 appendDots: $slider.siblings('controls'), 1194 responsive: [ 1195 { 1196 breakpoint: 991, 1197 settings: { 1198 adaptiveHeight: true, 1199 }, 1200 }, 1201 ], 1202 }); 1203 }, 100); 1204})(jQuery); 1205 1206/*$(document).ready(function(){ 1207 $('.slick-slider-stage').not('.slick-initialized').slick({ 1208 adaptiveHeight: true 1209 }); 1210});*/ 1211 1212 1213jQuery.noConflict(); 1214 1215(function ($) { 1216 Bw.View.SearchOverlay = function () { 1217 var self = this; 1218 1219 this.container = $('.bwSearch.fullscreen'); 1220 this.closeIcon = $('.bwSearch .bwSearch--closer,.bwSearch .bwMenu--closer'); 1221 this.iframePlaceholder = $('.iframe-placholder'); 1222 1223 this.elSearchTrigger = $('.bwHeader--widget.search'); 1224 this.elSearchBar = $('#searchbar'); 1225 1226 this.iframeVisible = false; 1227 this.preventClose = false; 1228 1229 this.constructor = function () { 1230 self.closeIcon.bind('click', function () { 1231 self.toggleOverlay(); 1232 }); 1233 1234 self.elSearchTrigger.bind('click', function () { 1235 self.toggleOverlay(); 1236 }); 1237 }; 1238 1239 this.toggleOverlay = function () { 1240 self.container.fadeToggle(250); 1241 1242 // Load iframe when Overlay is opened 1243 if (self.iframeVisible == false && self.container.is(':visible')) { 1244 self.loadIframe(); 1245 } 1246 1247 // Jump to top if site is scrolled on mobile device 1248 if (Bw.viewport.scrollTop > 250 && Bw.viewport.width <= 992 && self.container.is(':visible')) { 1249 Bw.viewport.setScrollTop(0); 1250 } 1251 }; 1252 1253 this.loadIframe = function () { 1254 self.iframePlaceholder.html('<iframe id="contactsearch-iframe" width="800" height="450" src="https://mobile.bistum-wuerzburg.org/ui/embedded" allowtransparency="true"></iframe>'); 1255 self.iframeVisible = true; 1256 }; 1257 1258 this.constructor(); 1259 }; 1260})(jQuery); 1261 1262 1263jQuery.noConflict(); 1264 1265(function ($) { 1266 Bw.View.Header = function () { 1267 var self = this; 1268 1269 this.elMenuTrigger = $('.bwHeader--widget.menu'); 1270 this.menuTargetClass = '.bwMenu'; 1271 this.mobileButton = $('.bwCaritas-navigation-button-accessibility'); 1272 1273 this.constructor = function () { 1274 self.elMenuTrigger.bind('click', function () { 1275 self.triggerMenu(); 1276 }); 1277 1278 self.eyeAbleControls(); 1279 1280 if (self.mobileButton.length) { 1281 self.accessibilityMobileToggle(); 1282 } 1283 }; 1284 1285 this.triggerMenu = function () { 1286 Bw.menu = new Bw.View.Menu(); 1287 1288 // TO DO 1289 // Deaktiviert Scrollbar nach SchlieÃen des Menüs auf der ganzen Seite 1290 /*$('html').css( 1291 { 1292 'overflow':'hidden' , 1293 'padding-right':'17px' 1294 });*/ 1295 }; 1296 1297 this.eyeAbleControls = function () { 1298 var contrastBtns = document.querySelectorAll('#accessibility-kontrastmodus, #mobile-accessibility-kontrastmodus'); 1299 var assistentBtnsDesktop = document.querySelectorAll('#eyeAble_customToolOpenerID, #mobile-eyeAble_customToolOpenerID'); 1300 var assistentBtnsMobile = document.querySelectorAll('#mobile-eyeAble_customToolOpenerID, #accessibilityMobile'); 1301 var leichteSpracheBtns = document.querySelectorAll('#accessibility-leichte-sprache, #mobile-accessibility-leichte-sprache'); 1302 1303 document.addEventListener('eyeable:init_completed', function () { 1304 var updateContrastState = function () { 1305 if (typeof EyeAbleAPI === 'undefined') return; 1306 var active = EyeAbleAPI.getColorMode() === 'Contrast'; 1307 contrastBtns.forEach(function (btn) { 1308 btn.setAttribute('aria-pressed', active ? 'true' : 'false'); 1309 }); 1310 }; 1311 1312 contrastBtns.forEach(function (btn) { 1313 btn.addEventListener('click', function () { 1314 if (typeof EyeAbleAPI === 'undefined') return; 1315 EyeAbleAPI.toggleContrast(); 1316 updateContrastState(); 1317 }); 1318 }); 1319 1320 if (contrastBtns.length) { 1321 document.addEventListener('eyeable:event', updateContrastState); 1322 updateContrastState(); 1323 } 1324
1325 assistentBtnsDesktop.forEach(function (btn) { 1326 btn.addEventListener('click', function () { 1327 if (typeof EyeAbleAPI === 'undefined') return; 1328 EyeAbleAPI.toggleToolbar(); 1329 }); 1330 }); 1331 }); 1332 1333 leichteSpracheBtns.forEach(function (btn) { 1334 btn.addEventListener('click', async function () { 1335 var ready = await self.waitForPlainLanguage(1000); 1336 1337 if (!ready) { 1338 console.warn('Eye-Able Plain Language script not loaded yet.'); 1339 return; 1340 } 1341 1342 if (EA.isEasyActive()) { 1343 await EA.deactivateEasy(); 1344 leichteSpracheBtns.forEach(function (b) { 1345 b.setAttribute('aria-pressed', 'false'); 1346 }); 1347 } else { 1348 await EA.activateEasy(); 1349 leichteSpracheBtns.forEach(function (b) { 1350 b.setAttribute('aria-pressed', 'true'); 1351 }); 1352 } 1353 }); 1354 }); 1355 }; 1356 1357 this.waitForPlainLanguage = function (timeoutMs) { 1358 return new Promise(function (resolve) { 1359 var waited = 0; 1360 var interval = 100; 1361 1362 var check = setInterval(function () { 1363 if (typeof EA !== 'undefined' && EA.scriptIsLoaded()) { 1364 clearInterval(check); 1365 resolve(true); 1366 } else if (waited >= timeoutMs) { 1367 clearInterval(check); 1368 resolve(false); 1369 } 1370 waited += interval; 1371 }, interval); 1372 }); 1373 }; 1374 1375 this.accessibilityMobileToggle = function () { 1376 self.mobileButton.on('click', function (e) { 1377 e.stopPropagation(); 1378 $(this).find('.accessibilitydropdown').toggleClass('shown'); 1379 }); 1380 1381 $(document).on('click', function (e) { 1382 if (!$(e.target).closest(self.mobileButton).length) { 1383 self.mobileButton.find('.accessibilitydropdown').removeClass('shown'); 1384 } 1385 }); 1386 }; 1387 1388 this.constructor(); 1389 }; 1390})(jQuery); 1391 1392 1393jQuery.noConflict(); 1394 1395(function ($) { 1396 Bw.View.HeaderSubsite = function (options) { 1397 var self = this; 1398 1399 this.header = $('.bwSubsite-header'); 1400 this.subsiteNavigation = $('.bwSubsite-navigation'); 1401 this.subsiteNavigationMobile = $('.bwSubsite-navigation-mobile'); 1402 this.subtitle = $('.bwSubsite-sitetitle'); 1403 this.stageContainer = $('.stage-container'); 1404 this.stage = $('.bwSubsite-stage'); 1405 this.mainContent = $('.maincontent'); 1406 this.mainContentPaddingtop = parseInt(self.mainContent.css('padding-top')); 1407 this.subsiteNavigation = $('.bwSubsite-navigation'); 1408 this.subsiteNavigationIsVisible = false; 1409 this.subsiteNavigationMenuTrigger = $('.bwSubsite-sitetitle--widget'); 1410 1411 this.headerFixed = false; 1412 1413 this.constructor = function () { 1414 $(document).ready(function () { 1415 self.setMaincontentPadding(); 1416 //self.moveEyeableButton(); 1417 1418 self.subsiteNavigationMenuTrigger.unbind('click').click(function () { 1419 self.toggleSubsiteNavigation($(this)); 1420 }); 1421 1422 if ($('.bwBurgermenu').length > 0) { 1423 $('body').addClass('hasBurgermenu'); 1424 } 1425 1426 $(window).on('scroll', function () { 1427 self.setMaincontentPadding(); 1428 }); 1429 1430 // enable menu to be closed with escape 1431 $(document).on('keydown', function (e) { 1432 if (e.key === 'Escape' && self.subsiteNavigationIsVisible) { 1433 self.toggleSubsiteNavigation(self.subsiteNavigationMenuTrigger); 1434 } 1435 }); 1436 1437 $(window).on('resize', function () { 1438 //self.moveEyeableButton(); 1439 self.setMaincontentPadding(); 1440 1441 if ($(window).width() < 991) { 1442 //self.subtitle.attr('style', ''); 1443 self.mainContent.css('margin-top', '0'); 1444 } 1445 }); 1446 1447 self.initializeSubmenuNavigation(); 1448 self.accessibilityDropdownNavigation(); 1449 }); 1450 }; 1451 1452 this.setMaincontentPadding = function () { 1453 if (self.stageContainer.children().length == 0) { 1454 let paddingTop = 100; 1455 1456 /* if (!$('body').hasClass('bistum-caritas') && !$('.wrapper').hasClass('layout-2')) { 1457 self.mainContent.css('padding-top', self.mainContentPaddingtop + paddingTop); 1458 } */ 1459 } 1460 1461 // Facelift 1462 /* if (!$('body').hasClass('bistum-caritas')) { 1463 if ($(window).width() < 991) { 1464 let newPaddingTop = this.header.height(); 1465 1466 self.mainContent.css('padding-top', newPaddingTop); 1467 } else { 1468 self.mainContent.css('padding-top', 0); 1469 } 1470 } */ 1471 }; 1472 1473 // Switch position of eyeable button depending on viewport 1474 this.moveEyeableButton = function () { 1475 return; // eye 1476 const btn = document.getElementById('eyeAble_customToolOpenerID'); 1477 const parentElementMobile = document.querySelector('.bwHeader--widgetBar'); 1478 1479 if ($('.wrapper').hasClass('layout-1')) { 1480 const parentElementDesktop = document.querySelector('.bwHeader--container .header-navigation'); 1481 1482 if ($(window).width() > 991 && parentElementDesktop) { 1483 if (parentElementDesktop) { 1484 parentElementDesktop.prepend(btn); 1485 } 1486 } 1487 } 1488 1489 if ($('.wrapper').hasClass('layout-2')) { 1490 const parentElementDesktop = document.querySelector('.bwHeader--container-top .bwSubsite-navigation--outer'); 1491 1492 if ($(window).width() > 991 && parentElementDesktop) { 1493 if (parentElementDesktop) { 1494 btn.before(parentElementDesktop); 1495 } 1496 } 1497 } 1498 1499 if ($(window).width() < 991 && parentElementMobile) {
1500 parentElementMobile.prepend(btn); 1501 } 1502 }; 1503 1504 this.toggleSubsiteNavigation = function () { 1505 if (self.subsiteNavigationIsVisible === false) { 1506 self.showSubsiteNavigationMobile(); 1507 } else { 1508 self.hideSubsiteNavigationMobile(); 1509 } 1510 }; 1511 1512 this.showSubsiteNavigationMobile = function () { 1513 if (self.subsiteNavigationIsVisible) return; 1514 self.subsiteNavigationIsVisible = true; 1515 self.preventClose = true; 1516 1517 self.subsiteNavigationMobile.addClass('visible'); 1518 self.subsiteNavigationMobile.addClass('fade-in'); 1519 self.subsiteNavigationMenuTrigger.find('svg').removeClass('visible'); 1520 self.subsiteNavigationMenuTrigger.find('.close-subsite-navigation').addClass('visible'); 1521 1522 $('html').css({ 1523 overflow: 'visible', 1524 'padding-right': '0', 1525 }); 1526 1527 setTimeout(function () { 1528 self.preventClose = false; 1529 self.subsiteNavigationMobile.removeClass('fade-in'); 1530 }, 600); 1531 }; 1532 1533 this.hideSubsiteNavigationMobile = function () { 1534 if (!self.subsiteNavigationIsVisible) return; 1535 1536 self.subsiteNavigationMobile.addClass('fade-out'); 1537 self.subsiteNavigationMenuTrigger.find('svg').removeClass('visible'); 1538 self.subsiteNavigationMenuTrigger.find('.open-subsite-navigation').addClass('visible'); 1539 1540 setTimeout(function () { 1541 self.subsiteNavigationMobile.removeClass('visible'); 1542 self.subsiteNavigationMobile.removeClass('fade-out'); 1543 1544 self.subsiteNavigationIsVisible = false; 1545 }, 200); 1546 }; 1547 1548 1549 1550 /**------------------------------**/ 1551 /** Logic for navigating submenu **/ 1552 /**------------------------------**/ 1553 this.initializeSubmenuNavigation = function () { 1554 const navRoot = $('.bwSubsite-navigation--list'); 1555 1556 navRoot.find('a.bwSubsite-navigation--link').on('focus', function () { 1557 const $link = $(this); 1558 const $li = $link.closest('li.bwSubsite-navigation--dropdownItem'); 1559 const $submenu = $li.children('ul.bwSubsite-navigation--dropdown'); 1560 1561 if ($li.hasClass('level-2')) { 1562 const level2Links = $('.bwSubsite-navigation--dropdownItem.level-2'); 1563 1564 level2Links.removeClass('hover opened'); 1565 // Also close any level 3 dropdowns inside those level 2 items 1566 level2Links.find('ul.bwSubsite-navigation--dropdown.level-3').removeClass('opened'); 1567 } 1568 1569 if ($li.hasClass('level-1')) { 1570 self.closeAllSubMenu(navRoot); 1571 } 1572 1573 $li.addClass('hover opened'); 1574 1575 if ($submenu.length) { 1576 $submenu.addClass('opened'); 1577 } 1578 }); 1579 1580 navRoot.find('a.bwSubsite-navigation--link').on('blur', function () { 1581 setTimeout(() => { 1582 if (!navRoot.find('a:focus').length) { 1583 self.closeAllSubMenu(navRoot); 1584 } 1585 }, 100); 1586 }); 1587 1588 // arrow key handling for navigation 1589 navRoot.find('a.bwSubsite-navigation--link').on('keydown', function (e) { 1590 const $current = $(this); 1591 const $li = $current.closest('li.bwSubsite-navigation--dropdownItem'); 1592 const $submenu = $li.children('ul.bwSubsite-navigation--dropdown'); 1593 1594 // down / right to navigate sub 1595 if (e.key === 'ArrowDown' || e.key === 'ArrowRight') { 1596 const $firstSubLink = $submenu.find('a.bwSubsite-navigation--link').first(); 1597 1598 if ($submenu.length && $firstSubLink.length) { 1599 $li.addClass('hover opened'); 1600 $submenu.addClass('opened'); 1601 $firstSubLink.focus(); 1602 e.preventDefault(); 1603 } 1604 } 1605 1606 // up / left to get back up 1607 if (e.key === 'ArrowUp' || e.key === 'ArrowLeft') { 1608 const $parentLi = $li.parents('li.bwSubsite-navigation--dropdownItem').first(); 1609 const $parentLink = $parentLi.children('a.bwSubsite-navigation--link').first(); 1610 1611 if ($parentLink.length) { 1612 $parentLink.focus(); 1613 e.preventDefault(); 1614 } 1615 } 1616 1617 // escape to close all submenus 1618 if (e.key === 'Escape') { 1619 self.closeAllSubMenu(navRoot); 1620 $current.blur(); 1621 e.preventDefault(); 1622 } 1623 }); 1624 1625 // disable arrows while in nav 1626 document.addEventListener('keydown', function (e) { 1627 const isNavOpen = $('.bwSubsite-navigation--dropdownItem.hover, .bwSubsite-navigation--dropdownItem.opened').length > 0; 1628 1629 if (isNavOpen && (e.key === 'ArrowUp' || e.key === 'ArrowDown')) { 1630 e.preventDefault(); 1631 } 1632 }); 1633 }; 1634 1635 this.closeAllSubMenu = function (navRoot) { 1636 navRoot.find('ul.bwSubsite-navigation--dropdown').removeClass('opened'); 1637 }; 1638 1639 this.accessibilityDropdownNavigation = function () { 1640 var trigger = document.querySelector('.bwAccessibility--trigger'); 1641 1642 if (!trigger) return; 1643 1644 var dropdown = trigger.querySelector('.bwAccessibility--dropdown'); 1645 var links = trigger.querySelectorAll('.bwAccessibility--link'); 1646 1647 var offset = null; 1648 1649 // Dropdown im Top-Layer an den Trigger heften (Header bewegt sich beim Scrollen) 1650 var positionDropdown = function () { 1651 if (!dropdown.matches(':popover-open')) return; 1652 1653 var rect = trigger.getBoundingClientRect(); 1654 dropdown.style.top = rect.top + offset.top + 'px'; 1655 dropdown.style.left = rect.left + offset.left + 'px'; 1656 requestAnimationFrame(positionDropdown); 1657 }; 1658 1659 var setExpanded = function (expanded) { 1660 trigger.setAttribute('aria-expanded', expanded ? 'true' : 'false'); 1661 1662 if (!dropdown.showPopover) return; 1663 1664 if (expanded && !dropdown.matches(':popover-open')) { 1665 var triggerRect = trigger.getBoundingClientRect(); 1666 var dropdownRect = dropdown.getBoundingClientRect(); 1667 offset = { top: dropdownRect.top - triggerRect.top, left: dropdownRect.left - triggerRect.left }; 1668 dropdown.showPopover(); 1669 positionDropdown(); 1670 } 1671 1672 if (!expanded && dropdown.matches(':popover-open')) { 1673 dropdown.hidePopover(); 1674 dropdown.style.top = ''; 1675 dropdown.style.left = ''; 1676 } 1677 }; 1678 1679 var closeDropdown = function () { 1680 setExpanded(false); 1681 }; 1682 1683 // Keep aria-expanded in sync with the hover/focus-within CSS state 1684 trigger.addEventListener('mouseenter', function () { 1685 setExpanded(true); 1686 }); 1687 1688 trigger.addEventListener('mouseleave', function () { 1689 if (!trigger.contains(document.activeElement)) { 1690 closeDropdown(); 1691 } 1692 }); 1693 1694 trigger.addEventListener('focusin', function () { 1695 setExpanded(true); 1696 }); 1697 1698 trigger.addEventListener('focusout', function (e) { 1699 if (!trigger.contains(e.relatedTarget)) { 1700 closeDropdown(); 1701 } 1702 }); 1703 1704 // Escape closes the dropdown and returns focus to the trigger, 1705 // whether focus is on the trigger itself or one of the buttons inside 1706 trigger.addEventListener('keydown', function (e) { 1707 if (e.key === 'Escape') { 1708 closeDropdown(); 1709 trigger.focus(); 1710 e.preventDefault(); 1711 } 1712 }); 1713 1714 // Enter / Space on the trigger itself opens the dropdown and 1715 // moves focus to the first button, since it's a div, not a native control 1716 trigger.addEventListener('keydown', function (e) { 1717 if (e.target !== trigger) return; 1718 1719 if (e.key === 'Enter' || e.key === ' ') { 1720 e.preventDefault(); 1721 setExpanded(true); 1722 1723 if (links.length) { 1724 links[0].focus(); 1725 } 1726 } 1727 }); 1728 1729 // Arrow up/down cycles through the three buttons once inside 1730 links.forEach(function (link, index) { 1731 link.addEventListener('keydown', function (e) { 1732 if (e.key === 'ArrowDown') { 1733 e.preventDefault(); 1734 var next = links[index + 1] || links[0]; 1735 next.focus(); 1736 } 1737 1738 if (e.key === 'ArrowUp') { 1739 e.preventDefault(); 1740 var prev = links[index - 1] || links[links.length - 1]; 1741 prev.focus(); 1742 } 1743 }); 1744 }); 1745 }; 1746 1747 this.constructor(); 1748 }; 1749})(jQuery); 1750 1751 1752jQuery.noConflict(); 1753 1754(function ($) { 1755 Bw.View.Menu = function () { 1756 var self = this; 1757 this.el = $('.bwMenu'); 1758 this.elClose = $('.bwMenu--closer'); 1759 this.elToc = $('.bwMenu--toc'); 1760 this.elTocItem = $('.bwMenu--tocItem'); 1761 this.elPagesContainer = $('.bwMenu--pagesContainer'); 1762 this.elPagesItem = $('.bwMenu--pagesItem'); 1763 //this.navLinks = $('.bwMenu .bwMenu--tocLink'); 1764 1765 this.isVisible = false;
1766 this.preventClose = false; 1767 1768 this.constructor = function () { 1769 self.elClose.unbind('click').bind('click', function () { 1770 self.closeMenu(); 1771 }); 1772 self.show(); 1773 self.checkBreakpoints(); 1774 1775 /*self.elTocItem.unbind('click').bind('click',function(){ 1776 self.setCurrent(self.elTocItem,$(this).data('index')); 1777 self.setCurrent(self.elPagesItem,$(this).data('index')); 1778 return self.checkBreakpoints(); 1779 }); 1780 1781 if(!self.elTocItem.hasClass('current')) 1782 { 1783 self.elTocItem.first().addClass('current'); 1784 self.elPagesItem.first().addClass('current'); 1785 }*/ 1786 1787 $(window).resize(function () { 1788 self.checkBreakpoints(); 1789 }); 1790 }; 1791 1792 this.setTogglePagesNav = function (links, pages) { 1793 // check if click-binding is already set 1794 if (links.hasClass('toggle') === false) { 1795 // If switched between dekstop and mobile 1796 pages.hide(); 1797 links.parents('.bwMenu--tocItem').removeClass('active'); 1798 1799 links.click(function () { 1800 var currentLink = $(this); 1801 var previousSubpages = pages.filter('.visible'); 1802 var currentPages = $(this).parents('li').find('.bwMenu--pages'); 1803 1804 // show subpages if they exist 1805 if (currentPages.length > 0) { 1806 $('.bwMenu--tocItem').removeClass('active'); 1807 1808 // only slideUp if it isn't already shown 1809 if (currentPages.hasClass('visible') === false) { 1810 currentPages.addClass('visible').slideDown(); 1811 currentLink.parents('.bwMenu--tocItem').addClass('active'); 1812 } 1813 1814 // hide previous opened 1815 previousSubpages.removeClass('visible').slideUp(); 1816 } 1817 1818 return false; 1819 }); 1820 } 1821 1822 links.addClass('toggle'); 1823 }; 1824 1825 this.unsetTogglePagesNav = function (links, pages) { 1826 // check if click-binding is already set 1827 links.each(function () { 1828 if ($(this).hasClass('toggle')) { 1829 $(this).unbind('click').removeClass('toggle'); 1830 } 1831 }); 1832 1833 pages.show(); 1834 }; 1835 1836 this.show = function () { 1837 if (self.isVisible) return; 1838 self.isVisible = true; 1839 self.preventClose = true; 1840 1841 self.el.addClass('visible'); 1842 self.el.addClass('fade-in'); 1843 1844 setTimeout(function () { 1845 self.preventClose = false; 1846 self.el.removeClass('fade-in'); 1847 }, 600); 1848 }; 1849 1850 this.hide = function () { 1851 if (!self.isVisible) return; 1852 self.isVisible = false; 1853 1854 self.el.addClass('fade-out'); 1855 1856 setTimeout(function () { 1857 self.el.removeClass('visible'); 1858 self.el.removeClass('fade-out'); 1859 }, 200); 1860 }; 1861 1862 this.setCurrent = function (items, index) { 1863 var oldItem = items.filter('.current'); 1864 var newItem = items.filter('[data-index="' + index + '"]'); 1865 if (newItem == oldItem) return false; 1866 oldItem.removeClass('current'); 1867 newItem.addClass('current'); 1868 if (items == self.elPagesItem) self.handleTransition(newItem, oldItem); 1869 }; 1870 1871 this.closeMenu = function () { 1872 if (self.preventClose) { 1873 return false; 1874 } 1875 self.hide(); 1876 return true; 1877 }; 1878 1879 this.handleTransition = function (newItem, oldItem) { 1880 if (newItem == oldItem) return false; 1881 var oldIndex = oldItem.index(); 1882 var newIndex = newItem.index(); 1883 var transitionClass = oldIndex > newIndex ? 'transitionBottom' : 'transitionTop'; 1884 self.elPagesContainer.removeClass('transitionBottom transitionTop heightTransition').addClass(transitionClass + ' heightTransition'); 1885 self.elPagesItem.removeClass('transitionTarget transitionOrigin'); 1886 newItem.addClass('transitionTarget'); 1887 oldItem.addClass('transitionOrigin'); 1888 }; 1889 1890 this.checkBreakpoints = function () { 1891 var windowWidth = $(window).width(); 1892 1893 if (windowWidth < 768) { 1894 self.setTogglePagesNav(self.elTocItem.find('.bwMenu--tocLink'), $('.bwMenu--pages')); 1895 } 1896 1897 if (windowWidth > 768) { 1898 //self.elTocItem.find('.bwMenu--tocLink').unbind('click'); 1899 self.unsetTogglePagesNav(self.elTocItem.find('.bwMenu--tocLink'), $('.bwMenu--pages')); 1900 } 1901 }; 1902 1903 this.constructor(); 1904 }; 1905})(jQuery); 1906 1907 1908jQuery.noConflict(); 1909 1910(function ($) { 1911 Bw.View.Stage = function (options) { 1912 var self = this; 1913 1914 this.container = $(options.container).first(); 1915 this.autoplayEnabled = options.autoplay; 1916 this.autoplaySpeed = options.autoplaySpeed; 1917 1918 this.constructor = function () { 1919 self.container.find('.slick-slider-container.slick-initialized').slick('unslick'); 1920 1921 self.initSlider(self.container); 1922 }; 1923 1924 this.initSlider = function (sliderContainer) { 1925 const totalSlides = $(sliderContainer).find('.slide').length; 1926 1927 if (totalSlides > 1) { 1928 $(sliderContainer).find('.bfStage__controls').show(); 1929 } 1930 1931 var slickConfig = { 1932 dots: false, 1933 infinite: true, 1934 speed: 500, 1935 slidesToShow: 1, 1936 fade: true, 1937 autoplay: false, 1938 prevArrow: $(options.container).find('.bfStage__arrowPrev'), 1939 nextArrow: $(options.container).find('.bfStage__arrowNext'), 1940 cssEase: 'ease', 1941 }; 1942
1943 if (self.autoplayEnabled == 1) slickConfig.autoplay = true; 1944 if (self.autoplaySpeed > 0) slickConfig.autoplaySpeed = self.autoplaySpeed; 1945 1946 // Folgeseiten Typ 2 1947 if ($('.wrapper').hasClass('layout-2')) { 1948 // check if first element in .maincontent is .bfContainer 1949 if ($('.maincontent-inner').children().first().hasClass('bfContainer')) { 1950 self.container.addClass('no-margin-bottom'); 1951 } 1952 } 1953 1954 // Caritas 1955 if ($('.bistum-caritas').length > 0) { 1956 slickConfig.fade = false; 1957 1958 // remove custom slick controls 1959 delete slickConfig.prevArrow; 1960 delete slickConfig.nextArrow; 1961 } 1962 1963 // add accessibility labels on init 1964 $(sliderContainer).find('.slick-slider-container').on('init', function (event, slick) { 1965 $(this).find('.slick-track') 1966 .attr('role', 'region') 1967 .attr('aria-label', 'Bilderkarussell'); 1968 }); 1969 1970 $(sliderContainer).not('.slick-initialized').find('.slick-slider-container').slick(slickConfig); 1971 }; 1972 1973 this.constructor(); 1974 }; 1975})(jQuery); 1976 1977 1978jQuery.noConflict(); 1979 1980(function ($) { 1981 $('.imgtextmodule').each(function () { 1982 var self = $(this); 1983 1984 // Find images for gallery 1985 var GalleryItems = []; 1986 self.find('.gallery-thumbnail-img:not(".slick-cloned")').each(function (i) { 1987 var theSrc = { 1988 src: $(this).find('.btn.lightbox').attr('href'), 1989 title: $(this).find('img').attr('title'), 1990 type: 'image', 1991 }; 1992 GalleryItems.push(theSrc); 1993 }); 1994 1995 // Remove duplicate images 1996 GalleryItems = GalleryItems.reduce(function (previous, current) { 1997 var object = previous.filter(function (object) { 1998 return object.src === current.src; 1999 }); 2000 if (object.length == 0) { 2001 previous.push(current); 2002 } 2003 return previous; 2004 }, []); 2005 2006 // Initialize magnific popup gallery 2007 self.find('.gallery-thumbnail-img:not(".slick-cloned") a.lightbox').magnificPopup({ 2008 type: 'image', 2009 removalDelay: 250, 2010 mainClass: 'mfp-fade', 2011 gallery: { 2012 enabled: true, 2013 delegate: '.btn.lightbox', 2014 preload: [0, 1], 2015 tCounter: '<div class="mfp-counter">%curr% / %total%</div>', 2016 }, 2017 items: GalleryItems, 2018 }); 2019 2020 // Mobile 2021 var slider = self.find('.slick-slider'); 2022 2023 slider.magnificPopup({ 2024 type: 'image', 2025 delegate: '.slick-thumbnail-img:not(.slick-cloned) .lightbox', 2026 removalDelay: 250, 2027 mainClass: 'mfp-fade', 2028 gallery: { 2029 enabled: true, 2030 preload: [0, 1], 2031 tCounter: '<div class="mfp-counter">%curr% / %total%</div>', 2032 }, 2033 callbacks: { 2034 open: function () { 2035 if (typeof slick === 'function') { 2036 var current = slider.slick('slickCurrentSlide'); 2037 slider.magnificPopup('goTo', current); 2038 } 2039 }, 2040 beforeClose: function () { 2041 if (typeof slick === 'function') { 2042 slider.slick('slickGoTo', parseInt(this.index)); 2043 } 2044 }, 2045 }, 2046 }); 2047 }); 2048})(jQuery); 2049 2050 2051jQuery.noConflict(); 2052 2053(function ($) { 2054 function adjustImageHeight() { 2055 var currentModal = $('.modal.in'); 2056 var currentWindowHeight = $(window).height(); 2057 2058 if (currentModal.length > 0) { 2059 var modalHeaderHeight = currentModal.find('.modal-header').outerHeight(); 2060 var modalThumbnailsHeight = currentModal.find('.modal-thumbnail-container').outerHeight(); 2061 var availableHeight = currentWindowHeight - (modalHeaderHeight + modalThumbnailsHeight + 100); // 100px paddings 2062 } 2063 2064 // Resize images which would be higher than viewport 2065 $('.slick-slider') 2066 .find('.slick-img-responsive') 2067 .each(function () { 2068 $(this).attr('style', ''); 2069 var currentImageHeight = $(this).height(); 2070 var currentTextHeight = 0; 2071 2072 if ($(this).parent().next('.modal-text').length > 0) currentTextHeight = $(this).parent().next('.modal-text').outerHeight(); 2073 2074 var currentElementHeight = currentImageHeight + currentTextHeight; 2075 2076 if (currentElementHeight > availableHeight) { 2077 $(this).height(availableHeight - currentTextHeight); 2078 } 2079 }); 2080 2081 // force slick to recalculate height of container 2082 $('.slick-slider').slick('setPosition'); 2083 } 2084
2085 function setSlickForSingleGallery() { 2086 // Single gallery 2087 $('.bwGallery').each(function () { 2088 if ($(window).width() < 992) { 2089 var currentGalley = $(this).find('.box-item:not(.slick-initialized)'); 2090 var shownImages = currentGalley.find('.img-responsive'); 2091 var imageContainerClass = currentGalley.find('.image-container').attr('class'); 2092 2093 // Find all images in gallery (> 4 images are hidden in modal) 2094 var allImages = currentGalley.next().find('.image-container .img-responsive'); 2095 2096 // Exclude already shown images 2097 var remainingImages = allImages.filter(function (index) { 2098 if (index > shownImages.length) { 2099 return true; 2100 } 2101 }); 2102 2103 // Append remaining images in slider 2104 remainingImages.each(function (index) { 2105 var currentCopyright = $(this).next('.img-copyright').text(); 2106 var currentDescription = $(this).parent().next('.modal-text').text(); 2107 2108 if ($(this).parent().next('.modal-text').find('.image-description').length > 0) var currentDescription = $(this).parent().next('.modal-text').find('.image-description').text(); 2109 2110 var copyrightHtml; 2111 var descriptionHtml; 2112 2113 // create clone of modal image 2114 var generatedImage = $(this).clone(true); 2115 currentGalley.append(generatedImage); 2116 2117 // append copyright and description element 2118 var appendedImage = currentGalley.find(generatedImage); 2119 2120 if (currentCopyright != '') copyrightHtml = '<div class="img-copyright">' + currentCopyright + '</div>'; 2121 if (currentDescription != '') descriptionHtml = '<div class="img-description">' + currentDescription + '</div>'; 2122 2123 var imageContainer = '<div class="generated only-mobile ' + imageContainerClass + '"><div class="image">' + copyrightHtml + '</div>' + descriptionHtml + '</div>'; 2124 imageContainer = $(imageContainer); 2125 imageContainer.find('.image').prepend(appendedImage); 2126 2127 // append dynamic created element to gallery 2128 currentGalley.append(imageContainer); 2129 }); 2130 2131 currentGalley.slick({ 2132 lazyLoad: 'ondemand', 2133 adaptiveHeight: true, 2134 infinite: false, 2135 responsive: [ 2136 { 2137 breakpoint: 768, 2138 settings: { 2139 slidesToShow: 1, 2140 }, 2141 }, 2142 { 2143 breakpoint: 992, 2144 settings: { 2145 slidesToShow: 2, 2146 }, 2147 }, 2148 ], 2149 }); 2150 2151 // Adjust container height on slide change 2152 currentGalley.on('lazyLoaded', function () { 2153 setTimeout(function () { 2154 // Resize all slick images after being lazy loaded for setting dimensions 2155 adjustImageHeight(); 2156 }, 500); 2157 }); 2158 2159 // Disable Image Pop-Up on click 2160 currentGalley.find('.image a').removeClass('gallery-open-image'); 2161 } else { 2162 var currentGalley = $(this).find('.box-item.slick-initialized'); 2163 2164 if (currentGalley.length > 0) { 2165 currentGalley.slick('unslick'); 2166 currentGalley.find('.generated').remove(); 2167 currentGalley.find('.image a').addClass('gallery-open-image'); 2168 } 2169 } 2170 }); 2171 } 2172 2173 function initModalSliders() { 2174 // Bildergalerie Pop-Up öffnen 2175 if ($('.modal .modal-slick').length > 0) { 2176 $('.modal').on('shown.bs.modal', function () { 2177 // Bildergalerien laden 2178 if ($('.modal-slider-for').length > 0) { 2179 $('.modal-slider-for').each(function (key, item) { 2180 var sliderIdName = 'slider' + key; 2181 var sliderNavIdName = 'sliderNav' + key; 2182 2183 this.id = sliderIdName; 2184 $('.modal-slider-nav')[key].id = sliderNavIdName; 2185 2186 var sliderId = '#' + sliderIdName; 2187 var sliderNavId = '#' + sliderNavIdName; 2188 2189 // GroÃes Bild 2190 $(sliderId).not('.slick-initialized').slick({ 2191 lazyLoad: 'ondemand', 2192 slidesToShow: 1, 2193 slidesToScroll: 1, 2194 fade: true, 2195 asNavFor: sliderNavId, 2196 adaptiveHeight: true, 2197 }); 2198 2199 $(sliderId).on('lazyLoaded', function () { 2200 setTimeout(function () { 2201 // Resize all slick images after being lazy loaded for setting dimensions 2202 adjustImageHeight(); 2203 }, 500); 2204 }); 2205 2206 // Thumbnails (ohne lazyloading) 2207 $(sliderNavId).not('.slick-initialized').slick({ 2208 slidesToScroll: 1, 2209 asNavFor: sliderId, 2210 centerMode: false, 2211 focusOnSelect: true,
2212 arrows: false, 2213 variableWidth: true, 2214 infinite: false, 2215 }); 2216 }); 2217 2218 $('.slickPrev').click(function () { 2219 $('.slick-slider').slick('slickPrev'); 2220 }); 2221 2222 $('.slickNext').click(function () { 2223 $('.slick-slider').slick('slickNext'); 2224 }); 2225 2226 // Resize after showing modal 2227 //$('.slick').slick('setPosition'); 2228 } 2229 2230 adjustImageHeight(); 2231 }); 2232 } 2233 } 2234 2235 function initSliders() { 2236 const sliderContainers = $('.slick-slider-container').not('.slick-initialized, .slick-slider-stage'); 2237 2238 if (sliderContainers.length > 0) { 2239 let slickOptions = { 2240 adaptiveHeight: true, 2241 responsive: [], 2242 }; 2243 let optionsMd = { 2244 breakpoint: 991, 2245 settings: { 2246 adaptiveHeight: true, 2247 }, 2248 }; 2249 2250 sliderContainers.each(function () { 2251 if ($(this).attr('data-slides')) { 2252 slickOptions.slidesToShow = $(this).attr('data-slides'); 2253 } 2254 2255 // xs 2256 if ($(this).attr('data-slides-xs')) { 2257 let optionsXs = { 2258 breakpoint: 767, 2259 settings: { 2260 slidesToShow: $(this).attr('data-slides-xs'), 2261 }, 2262 }; 2263 2264 slickOptions.responsive.push(optionsXs); 2265 } 2266 2267 // md 2268 if ($(this).attr('data-slides-md')) { 2269 optionsMd.settings.slidesToShow = $(this).attr('data-slides-md'); 2270 } 2271 2272 slickOptions.responsive.push(optionsMd); 2273 2274 // xl 2275 if ($(this).attr('data-slides-xl')) { 2276 let optionsXl = { 2277 breakpoint: 1200, 2278 settings: { 2279 slidesToShow: $(this).attr('data-slides-xl'), 2280 }, 2281 }; 2282 2283 slickOptions.responsive.push(optionsXl); 2284 } 2285 2286 $(this).slick(slickOptions); 2287 }); 2288 } 2289 } 2290 2291 function preventAriaDescribedBy() { 2292 $('.slick-slider').each(function () { 2293 const $slider = $(this); 2294 const clean = () => $slider.find('.slick-slide').removeAttr('aria-describedby'); 2295 2296 clean(); 2297 $slider.on('afterChange', clean); 2298 $slider.on('init', clean); 2299 }); 2300 } 2301 2302 setSlickForSingleGallery(); 2303 initSliders(); 2304 initModalSliders(); 2305 setTimeout(preventAriaDescribedBy, 500); 2306 2307 $(document).on('ajaxPaginationTriggered', function () { 2308 initModalSliders(); 2309 }); 2310 2311 $(window).resize(function () { 2312 setTimeout(function () { 2313 setSlickForSingleGallery(); 2314 adjustImageHeight(); 2315 }, 500); 2316 }); 2317})(jQuery); 2318 2319 2320jQuery.noConflict(); 2321 2322(function ($) { 2323 Bw.View.Teasergroup = function (options) { 2324 // Paramter: container,childSelector,childClass 2325 2326 var self = this; 2327 2328 this.container = $(options.container); 2329 this.pagesContainer = this.container.find('.bwTeasergroup--pages'); 2330 this.pagesItem = this.pagesContainer.find('.bwTeasergroup--page'); 2331 this.children; 2332 this.childrenLength; 2333 this.paginationViewport = this.container.find('.bwTeasergroup--pagination'); 2334 this.paginationContainer = this.container.find('.bwPagination--container'); 2335 this.paginationList = this.paginationContainer.find('.bwPagination--list'); 2336 this.paginationItem = this.paginationContainer.find('.bwPagination--button'); 2337 this.paginationButton = this.paginationViewport.find('.bwPagination--button'); 2338 this.nextButton = this.paginationViewport.find('.bwPagination--button.next'); 2339 this.previousButton = this.paginationViewport.find('.bwPagination--button.previous'); 2340 this.currentClasses = this.container.attr('class'); 2341 this.gridClass = 'bwTeasergroup--grid-'; 2342 this.grid; 2343 this.gridSm; 2344 this.gridMd; 2345 this.gridXs = 1; 2346 this.teaserCount; 2347 this.autoplayActivated = false; 2348 this.autoplayInterval; 2349 this.onepager; 2350 this.isResponsivePaginationList = true; 2351 this.isFolgeseitenTeasergroup = self.container.hasClass('bfTeasergroup'); 2352 2353 Function.prototype.debounce = function (wait) { 2354 let timeout, 2355 debouncedFunc = this; 2356 return function () { 2357 let context = this; 2358 function later(args) { 2359 timeout = null;
2360 debouncedFunc.apply(context, args); 2361 } 2362 clearTimeout(timeout); 2363 timeout = setTimeout(later, wait, arguments); 2364 }; 2365 }; 2366 2367 this.constructor = function () { 2368 if (new RegExp(self.gridClass).test(self.currentClasses) === true) { 2369 var strStart = self.currentClasses.indexOf(self.gridClass); 2370 var strLen = self.gridClass.length; 2371 self.grid = self.currentClasses.substr(strStart + strLen, 2); 2372 } 2373 2374 self.teaserCount = self.container.find('.teaser').length; 2375 2376 // Grid tablet 2377 if (self.container.is('[class*=grid-md-]')) { 2378 let gridMd = self.container.attr('class').match(/grid-md-[1-9]/); 2379 gridMd = gridMd[0].match(/[1-9]/); 2380 self.gridMd = parseInt(gridMd[0]); 2381 } 2382 2383 // Only used within Folgeseiten 2384 if (self.container.is('[class*=grid-sm-]')) { 2385 let gridSm = self.container.attr('class').match(/grid-sm-[1-9]/); 2386 gridSm = gridSm[0].match(/[1-9]/); 2387 self.gridSm = parseInt(gridSm[0]); 2388 } 2389 2390 setTimeout(function () { 2391 // Folgeseiten only 2392 if (self.isFolgeseitenTeasergroup) { 2393 var teasergroupSliderEnabled = self.container.hasClass('sliderEnabled') === true; 2394 let grid = self.getCurrentViewportGrid(); 2395 2396 if (teasergroupSliderEnabled) { 2397 self.pagesContainer.WrapThis(grid, '.teaser', '<div class="bwTeasergroup--page bwAnnouncements--item wrapped" />', self.container); 2398 2399 // Set elements which are build in wrapThis function 2400 self.pagesItem = self.container.find('.bwTeasergroup--page'); 2401 self.paginationItem = self.paginationList.find('.bwPagination--button'); 2402 self.paginationButton = self.paginationViewport.find('.bwPagination--button'); 2403 self.buildPagination(self.pagesItem.length); 2404 } 2405 } else { 2406 // Only for EXT: bistum_baukasten 2407 // Teasergroup 1 & 3 always uses slider 2408 var teasergroupSliderEnabled = self.container.hasClass('sliderEnabled') === true || self.grid == 1 || self.grid == 3; 2409 2410 if ($('body').hasClass('tmpl-standard') == false && self.grid == 1) teasergroupSliderEnabled = false; 2411 } 2412 2413 if (teasergroupSliderEnabled) { 2414 var controlButtons = $([self.nextButton[0], self.previousButton[0]]); 2415 2416 // Teasergrid 1 contains multiple buttons 2417 /*if( self.grid == 1 ){ 2418 controlButtons = $.merge(self.nextButton, self.previousButton); 2419 }*/ 2420 2421 self.buildPagination(self.pagesItem.length); 2422 self.setCurrentIndex(0); 2423 2424 if (typeof self.nextButton[0] != 'undefined') { 2425 controlButtons.on('click', function (event) { 2426 self.onButtonClick($(this)); 2427 }); 2428 } 2429 2430 self.pagesItem.on('swipeleft', function (event) { 2431 self.onSwipe(event); 2432 }); 2433 2434 self.pagesItem.on('swiperight', function (event) { 2435 self.onSwipe(event); 2436 }); 2437 2438 if (self.container.hasClass('autoplay')) { 2439 if ($(window).width() > 991) { 2440 self.autoplayActivated = true; 2441 self.startAutoplay(); 2442 } 2443 } 2444 2445 self.handleViewportResize(); 2446 2447 // Resize 2448 $(window).resize(function () { 2449 setTimeout(function () { 2450 self.debouncedHandleViewportResize(); 2451 2452 if (self.grid == 1 && teasergroupSliderEnabled && !self.isFolgeseitenTeasergroup) { 2453 self.equalizeTeaserHeight(self.pagesItem); 2454 } 2455 }, 1000); 2456 }); 2457 } 2458 2459 if (self.grid == 1 && !self.isFolgeseitenTeasergroup) { 2460 // set quotation marks outside the box 2461 var currentHeadline = self.container.find('.teaser-headline'); 2462 var firstChar = currentHeadline.text().substr(0, 1); 2463 2464 if (firstChar == 'â' || firstChar == '"') { 2465 currentHeadline.addClass('quote-indent'); 2466 var currentHeadlineText = currentHeadline.text(); 2467 2468 currentHeadline.html(function (i, html) { 2469 return html.replace(/^(â|")/g, '<span class="quotation-mark">$1</span>'); 2470 }); 2471 } 2472 2473 if (teasergroupSliderEnabled && !self.isFolgeseitenTeasergroup) { 2474 self.equalizeTeaserHeight(self.pagesItem); 2475 } 2476 } 2477 }, 100); 2478 }; 2479 2480 this.getCurrentViewportGrid = function () { 2481 viewportGrid = self.grid; 2482 2483 if ($(window).width() > 991 && $(window).width() < 1200) { 2484 if (self.gridMd) { 2485 viewportGrid = self.gridMd; 2486 } 2487 } 2488 2489 // Grid smartphone 2490 if ($(window).width() < 992) { 2491 viewportGrid = self.gridXs; 2492 } 2493 2494 if ($(window).width() > 768 && $(window).width() < 992) { 2495 // Only used within Folgeseiten 2496 if (self.gridSm) { 2497 viewportGrid = self.gridSm; 2498 } 2499 } 2500 2501 return viewportGrid; 2502 }; 2503 2504 this.equalizeTeaserHeight = function (items) { 2505 var highestTeaserHeight = 0; 2506 2507 // Reset height for calculation of new height 2508 items.css('height', 'auto'); 2509 2510 // Find highest teaser 2511 items.each(function () { 2512 let currentTeaser = $(this); 2513 2514 if (!currentTeaser.hasClass('teaser')) currentTeaser = currentTeaser.find('.teaser'); // if pageitem instead of teaseritem is passed 2515 let currentTeaserHeight = currentTeaser.outerHeight(true); 2516 2517 currentTeaser.css('height', 'auto'); 2518 2519 if (currentTeaserHeight > highestTeaserHeight) highestTeaserHeight = currentTeaserHeight; 2520 }); 2521 2522 // Set height for all teasers 2523 items.height(highestTeaserHeight); 2524 }; 2525 2526 this.startAutoplay = function () { 2527 return false;
2528 // Start Autoplay if activated in Content Element 2529 self.autoplayInterval = setInterval(function () { 2530 var index = self.getCurrentIndex() + 1; 2531 2532 if (index < 0) index = 0; 2533 2534 if (index >= self.childrenLength) index = 0; 2535 2536 self.goto(index); 2537 2538 return true; 2539 }, 12000); 2540 }; 2541 2542 // builds pagination based oon the number of children 2543 this.buildPagination = function (pagesCount) { 2544 // Pagination items may have changed during resize 2545 self.paginationItem = self.paginationContainer.find('.bwPagination--button'); 2546 self.children = self.paginationItem; // Rohling Button 2547 self.childrenLength = self.children.length; 2548 2549 self.children = self.paginationItem; // Rohling Button 2550 self.childrenLength = self.children.length; 2551 2552 if (pagesCount > 1) { 2553 while (self.childrenLength < pagesCount) { 2554 self.childrenLength += 1; 2555 self.paginationList.append('<button class="bwPagination--item bwPagination--button">' + self.childrenLength + '</button>'); 2556 } 2557 2558 while (self.childrenLength > pagesCount) { 2559 self.children.pop().remove(); 2560 self.childrenLength -= 1; 2561 } 2562 2563 self.paginationItem = self.paginationList.find('.bwPagination--button'); 2564 2565 // Click on Pagenumber 2566 self.paginationItem.on('click', function (e) { 2567 e.stopPropagation(); 2568 self.goto($(this).index()); 2569 return true; 2570 }); 2571 } else { 2572 self.nextButton.hide(); 2573 self.previousButton.hide(); 2574 } 2575 }; 2576 2577 // Set the current child. 2578 this.setCurrent = function (child) { 2579 if (self.isLocked || self.currentPaginationItem === child) { 2580 return false; 2581 } 2582 2583 if (self.currentPaginationItem) { 2584 var oldChild = self.currentPaginationItem; 2585 var oldPage = self.currentPagesItem; 2586 2587 oldChild.removeClass('current'); 2588 oldPage.removeClass('current'); 2589 } else { 2590 var oldChild = null; 2591 var oldPage = null; 2592 } 2593 2594 self.currentPaginationItem = child; 2595 self.currentPagesItem = self.pagesItem.eq(child.index()); 2596 2597 // Teasergroup 1 contains multiple paginations 2598 if (self.grid == 1) { 2599 var childIndex = child.index(); 2600 2601 self.currentPagesItem = self.pagesItem.eq(child.index()); 2602 2603 // Switch page in every pagination 2604 self.paginationViewport.each(function () { 2605 var currentPageButton = $(this) 2606 .find('.bwPagination--button') 2607 .eq(childIndex + 1); 2608 2609 currentPageButton.addClass('current'); 2610 }); 2611 } 2612 2613 child.addClass('current'); 2614 self.currentPagesItem.addClass('current'); 2615 2616 self.handlePaginationTransition(child); 2617 self.handlePageTransition(self.currentPagesItem, oldPage); 2618 2619 return this; 2620 }; 2621 2622 this.calculateTeasergroupPadding = function () { 2623 // Set teaser-headline on same axis as backgroundline (similar to function handleViewportResize in Bw.View.Onepager) 2624 if (self.grid == 1 && self.container.parents('.bwPage').length > 0) { 2625 self.lineTop = Math.round(($(window).height() - 110) * 0.4); 2626 self.viewportWidth = $(window).width(); 2627 2628 var teasergroup = self.container; 2629 var currentBwPage = self.container.parents('.bwPage'); 2630 2631 if (self.viewportWidth > 992) { 2632 var viewportHeight = $(window).height(); 2633 var elHeight = currentBwPage.height(); 2634 var nextSectionIconSpace = 60; 2635 2636 var paddingTop = 110; 2637 var paddingBottom = paddingTop - nextSectionIconSpace; 2638 var lineHeaderHeight = 0; 2639 2640 if (self.currentPagesItem.find('.teaser:not(.subgrid-4)').length > 0) { 2641 lineHeaderHeight = self.currentPagesItem.find('.teaser-headline:first').height(); 2642 } else { 2643 var backgroundImageHeight = self.currentPagesItem.find('.teaser .image-col').height(); 2644 2645 // Set lineheaderHeight on half of the images height (center of image instead of headlines height) 2646 lineHeaderHeight = backgroundImageHeight / 2; 2647 } 2648 2649 if (lineHeaderHeight > 0) { 2650 var offsetDifference = self.lineTop - lineHeaderHeight + 110; 2651 paddingTop = offsetDifference;
2652 paddingBottom = parseInt(viewportHeight - offsetDifference - elHeight) - nextSectionIconSpace; 2653 } else { 2654 if (viewportHeight - elHeight > 110) { 2655 paddingTop = parseInt((viewportHeight - elHeight) / 2); 2656 paddingBottom = paddingTop - nextSectionIconSpace; // subtract height of advanceIcon 2657 } else { 2658 paddingBottom = 0; 2659 } 2660 } 2661 } else { 2662 paddingTop = 40; 2663 paddingBottom = 40; 2664 } 2665 } 2666 2667 return [paddingTop, paddingBottom]; 2668 }; 2669 2670 // Hint: function might be called by onepager JS 2671 this.alignTeaserheadline = function (adjustPageHeight) { 2672 var teasergroup = self.container; 2673 var currentBwPage = self.container.parents('.bwPage'); 2674 2675 // Set teaser-headline on same axis as backgroundline (similar to function handleViewportResize in Bw.View.Onepager) 2676 if (self.grid == 1 && self.container.parents('.bwPage').length > 0) { 2677 //var teasergroupPadding = self.calculateTeasergroupPadding(); 2678 var paddingTop = teasergroupPadding[0]; 2679 var paddingBottom = teasergroupPadding[1]; 2680 2681 if (typeof self.onepager !== 'undefined' && adjustPageHeight === true) { 2682 //self.onepager.checkForQuicklinksModule( currentBwPage ); 2683 //self.onepager.adjustPageHeight( currentBwPage ); 2684 } 2685 } 2686 }; 2687 2688 // Sets the index of the current child. 2689 this.setCurrentIndex = function (index) { 2690 self.setCurrent(self.paginationItem.eq(index)); 2691 }; 2692 2693 // Return the index of the current child. 2694 this.getCurrentIndex = function () { 2695 return self.currentPaginationItem.index(); 2696 }; 2697 2698 // Switches Page 2699 this.handlePageTransition = function (newChild, oldChild) { 2700
2701 if (oldChild == null) return false; 2702 2703 var oldIndex = oldChild.index(); 2704 var newIndex = newChild.index(); 2705 2706 if (oldIndex === newIndex) { 2707 return false; 2708 } 2709 2710 var transitionClass = oldIndex > newIndex ? 'transitionLeft' : 'transitionRight'; 2711 self.pagesContainer.removeClass('transitionLeft transitionRight').addClass(transitionClass + ' '); 2712 self.pagesItem.removeClass('transitionTarget transitionOrigin'); 2713 2714 // CSS Classes for Page-Items 2715 self.pagesItem.eq(newIndex).addClass('transitionTarget'); 2716 self.pagesItem.eq(oldIndex).addClass('transitionOrigin'); 2717 }; 2718 2719 // Pagination handleTransition 2720 this.handlePaginationTransition = function (newChild) { 2721 var length = self.paginationItem.length; 2722 var newIndex = self.paginationItem.index(newChild); 2723 var canGoNext = newIndex < length - 1; 2724 var canGoPrevious = newIndex > 0; 2725 2726 self.nextButton.removeAttr('disabled'); 2727 self.previousButton.removeAttr('disabled'); 2728 2729 if (!canGoNext) { 2730 self.nextButton.attr('disabled', 'disabled'); 2731 } 2732 2733 if (!canGoPrevious) { 2734 self.previousButton.attr('disabled', 'disabled'); 2735 } 2736 2737 self.updatePosition(); 2738 }; 2739 2740 this.handleTransition = function (newItem, oldItem) { 2741 if (newItem == oldItem) return false; 2742 var oldIndex = oldItem.index(); 2743 var newIndex = newItem.index(); 2744 }; 2745 2746 this.changeTeasergrid = function () { 2747 let currentTeaserPerPage = self.pagesItem.first().find('.teaser').length; 2748 let currentGrid = currentTeaserPerPage; 2749 let viewportGrid = self.getCurrentViewportGrid(); 2750 2751 if (currentGrid != viewportGrid) { 2752 // Build up pages and pagination 2753 self.paginationList.empty(); 2754 self.container.find('.teaser').unwrap(); 2755 2756 self.pagesContainer.WrapThis(viewportGrid, '.teaser', '<div class="bwTeasergroup--page bwAnnouncements--item wrapped" />'); 2757 2758 self.buildPagination(Math.ceil(self.teaserCount / viewportGrid)); 2759 2760 self.pagesItem = self.container.find('.bwTeasergroup--page'); 2761 2762 return true; 2763 } 2764 2765 return false; 2766 }; 2767 2768 this.handleViewportResize = function () { 2769 let rebuiltElement = false; 2770 2771 // Mobile 2772 if ($(window).width() < 768) { 2773 self.isResponsivePaginationList = false; 2774 } else { 2775 self.isResponsivePaginationList = true; 2776 } 2777 2778 // Change teasergrid if needed (depending on viewport grid) 2779 rebuiltElement = self.changeTeasergrid(); 2780 2781 // Mobile & Tablet 2782 if ($(window).width() < 992) { 2783 } 2784 2785 // Desktop 2786 if ($(window).width() > 991) { 2787 } 2788 2789 if (rebuiltElement == true) { 2790 // Rebind for new DOM-Elements 2791 self.pagesItem.on('swipeleft', function (event) { 2792 self.onSwipe(event); 2793 }); 2794 2795 self.pagesItem.on('swiperight', function (event) { 2796 self.onSwipe(event); 2797 }); 2798 2799 self.goto(0); 2800 } 2801 }; 2802 2803 this.debouncedHandleViewportResize = self.handleViewportResize.debounce(50); 2804 2805 this.updatePosition = function () { 2806 var itemWidth = 30; 2807 2808 let paginationContainerWidth = 5 * itemWidth; 2809 2810 /*if ( paginationContainerWidth <= 200 ) { 2811 itemWidth = 40 2812 } else if ( paginationContainerWidth == 250) { 2813 itemWidth = 50; 2814 };*/ 2815 2816 var length = self.paginationItem.length; 2817 var index = self.getCurrentIndex(); 2818 var left; 2819 2820 if (index == -1) { 2821 left = 0; 2822 } else { 2823 let listWidth = length * itemWidth; 2824 let viewportWidth = Math.min(paginationContainerWidth, listWidth); 2825 let minLeft = viewportWidth - listWidth; 2826 2827 left = index * -itemWidth + (viewportWidth - itemWidth) * 0.5; 2828 if (left > 0) left = 0; 2829 if (left < minLeft) left = minLeft; 2830 } 2831 2832 self.paginationList.attr('style', 'transform: translate(' + left + 'px, 0px)'); 2833 if (self.paginationList.parents('.bwTeasergroup').hasClass('bwTeasergroup--grid-1')) { 2834 // Set background for teaser without image 2835 let currentPage = self.pagesItem.filter('.current'); 2836 let currentTeaser = currentPage.find('.teaser'); 2837 2838 self.pagesItem.removeClass('background-blue'); 2839 2840 if (currentTeaser.length > 0 && currentTeaser.hasClass('no-image')) { 2841 currentPage.addClass('background-blue'); 2842 } 2843 } 2844 }; 2845 2846 this.onSwipe = function (event) { 2847 var index = self.currentPaginationItem.index(); 2848 var childrenLength = self.paginationItem.length; 2849 let teasersToSwipe = 1;
2850 let direction = 'next'; 2851 let target = self.nextButton; 2852 2853 if (event.type == 'swiperight') { 2854 direction = 'prev'; 2855 target = self.previousButton; 2856 } 2857 2858 if ($(window).width() < 768) { 2859 teasersToSwipe = 1; 2860 } else if ($(window).width() < 992) { 2861 teasersToSwipe = 1; 2862 } else if ($(window).width() < 1200) { 2863 teasersToSwipe = 3; 2864 } else { 2865 teasersToSwipe = parseInt(self.grid); 2866 } 2867 2868 if (direction == 'next') { 2869 index = index + teasersToSwipe; 2870 } else { 2871 index = index - teasersToSwipe; 2872 } 2873 2874 if (index < 0) index = 0; 2875 if (index > childrenLength - 1) index = childrenLength - 1; //return false; 2876 2877 self.goto(index); 2878 2879 return true; 2880 }; 2881 2882 this.onButtonClick = function (target) { 2883 var index = self.currentPaginationItem.index(); 2884 var childrenLength = self.paginationItem.length; 2885 2886 if (target[0] == self.nextButton[0]) { 2887 index += 1; 2888 } else { 2889 index -= 1; 2890 } 2891 2892 if (index < 0) return false; 2893 if (index > childrenLength - 1) return false; 2894 2895 self.goto(index); 2896 2897 return true; 2898 }; 2899 2900 this.goto = function (index) { 2901 self.setCurrentIndex(index); 2902 2903 // Stop Autoplay if activated and start interval again 2904 if (self.autoplayActivated === true) { 2905 clearInterval(self.autoplayInterval); 2906 self.startAutoplay(); 2907 } 2908 }; 2909 2910 // Wraps every nth child 2911 $.fn.WrapThis = function (arg1, arg2, wrapElement, containerElement) { 2912 var container = $(this); 2913 2914 // only for folgeseiten (does not have wrapper in template) 2915 if (containerElement) { 2916 container = containerElement; 2917 } 2918 2919 var itemLength = container.find(arg2).length; 2920 var childrenElements = container.find(arg2); 2921 2922 var remainder = itemLength % arg1; 2923 var lastArray = itemLength - remainder; 2924 2925 var arr = []; 2926 2927 if ($.isNumeric(arg1)) { 2928 childrenElements.each(function (idx, item) { 2929 let newNum = idx + 1; 2930 let wrapper = wrapElement; 2931 2932 if (newNum % arg1 !== 0 && newNum <= lastArray) { 2933 arr.push(item); 2934 } else if (newNum % arg1 == 0 && newNum <= lastArray) { 2935 arr.push(item); 2936 var column = $(this).pushStack(arr); 2937 2938 column.wrapAll(wrapper); //=If the array reaches arg1 setting then wrap the array in a column 2939 arr = []; 2940 } else if (newNum > lastArray && newNum !== itemLength) { 2941 //=If newNum is greater than the lastArray setting then start new array of elements 2942 arr.push(item); 2943 } else { 2944 //=If newNum is greater than the length of all the elements then wrap the remainder of elements in a column 2945 arr.push(item); 2946 var column = $(this).pushStack(arr); 2947 column.wrapAll(wrapper); 2948 arr = []; 2949 } 2950 }); 2951 } 2952 2953 // Override variables with new DOM-Elements 2954 self.pagesItem = self.pagesContainer.find('.bwTeasergroup--page'); 2955 self.paginationItem = self.paginationList.find('.bwPagination--button'); 2956 }; 2957 2958 this.constructor(); 2959 }; 2960})(jQuery); 2961 2962 2963jQuery.noConflict(); 2964 2965(function ($) { 2966 Bw.View.Burgermenu = function (options) { 2967 var self = this; 2968 2969 this.container = $(options.container); 2970 this.menuClass = options.menuClass; 2971 this.menu = this.container.find('.' + this.menuClass); 2972 2973 // Menutoggle 2974 this.menuToggleClass = options.menuToggleClass; 2975 this.menuToggle = $('.' + this.menuToggleClass); 2976 this.menuToggleOpenClass = 'open'; 2977 2978 // Submenus 2979 this.submenuClass = options.submenuClass; 2980 this.submenuOpenClass = 'open'; 2981 this.submenus = this.container.find('.' + this.submenuClass); 2982 2983 // Overlay 2984 this.overlayClass = options.overlayClass; 2985 this.overlayOpenClass = 'open'; 2986 this.overlay = $('.' + this.overlayClass); 2987 2988 // Links 2989 this.menuLinkClass = options.menuLinkClass; 2990 this.menuLinks = this.container.find('.' + this.menuLinkClass + '.bwBurgermenu__menuLink--sub'); 2991 this.menuLinkOpenClass = 'open'; 2992 2993 // State 2994 this.currentLevel = 1; 2995 this.menuIsOpen = false;
2996 this.trapHandler = null; 2997 2998 this.constructor = function () { 2999 // click on menu toggle 3000 this.menuToggle.click(function (event) { 3001 if (self.menuIsOpen === false) { 3002 self.openMenu(); 3003 } else { 3004 self.closeMenu(); 3005 } 3006 }); 3007 3008 // click on links 3009 this.menuLinks.click(function (event) { 3010 event.preventDefault(); 3011 3012 const currentLink = $(event.currentTarget); 3013 3014 self.onMenuLinkClick(currentLink); 3015 }); 3016 3017 self.overlay.click(function (event) { 3018 self.closeMenu(); 3019 }); 3020 }; 3021 3022 this.openMenu = function () { 3023 const focusableSelector = ` 3024 a[href], 3025 button:not([disabled]), 3026 input:not([type="hidden"]):not([disabled]), 3027 select:not([disabled]), 3028 textarea:not([disabled]), 3029 [tabindex]:not([tabindex="-1"]) 3030 `; 3031 3032 self.showOverlay(); 3033 self.menu.addClass('open'); 3034 self.menu.attr('aria-hidden', 'false'); 3035 this.menuIsOpen = true; 3036 3037 // Close menu on ESC 3038 document.addEventListener('keydown', self.onKeyDown); 3039 3040 const focusableItems = self.menu[0].querySelectorAll(focusableSelector); 3041 const closeButton = focusableItems[0]; 3042 const firstFocusable = focusableItems[1]; 3043 const lastFocusable = focusableItems[focusableItems.length - 1]; 3044 3045 if (firstFocusable) { 3046 setTimeout(() => { 3047 firstFocusable.focus(); 3048 }, 500); 3049 } 3050 3051 if (self.trapHandler) { 3052 document.removeEventListener('keydown', self.trapHandler); 3053 self.trapHandler = null; 3054 } 3055 3056 self.inMenuNavigation(firstFocusable, lastFocusable, closeButton); 3057 }; 3058 3059 this.closeMenu = function () { 3060 self.hideOverlay(); 3061 self.menu.removeClass('open'); 3062 self.menu.attr('aria-hidden', 'true'); 3063 this.menuIsOpen = false; 3064 3065 document.removeEventListener('keydown', self.onKeyDown); 3066 3067 this.menuToggle[0].focus(); 3068 }; 3069 3070 this.openSubmenu = function (submenu) { 3071 if (typeof submenu === 'undefined' || submenu.length === 0) return; 3072 3073 self.currentLevel = parseInt(submenu.attr('data-level')); 3074 3075 submenu.addClass(self.submenuOpenClass); 3076 submenu.slideDown(); 3077 }; 3078 3079 this.closeSubmenu = function (submenu, setCurrentLevel) { 3080 if (typeof submenu === 'undefined' || submenu.length === 0) return; 3081 3082 const childrenSubmenus = submenu.find('.' + self.submenuClass); 3083 const currentSubmenuLinks = submenu.find('.' + self.menuLinkClass); 3084 const submenuLevel = parseInt(submenu.attr('data-level')); 3085 3086 if (typeof setCurrentLevel !== 'undefined' && setCurrentLevel === true) { 3087 self.currentLevel = submenuLevel > 0 ? submenuLevel : 1; 3088 } 3089 3090 // hide submenu 3091 submenu.slideUp(); 3092 3093 // hide children submenus 3094 if (childrenSubmenus.length > 0) { 3095 childrenSubmenus.each(function (index) { 3096 const currentChildrenSubmenu = childrenSubmenus.eq(index); 3097 3098 self.closeSubmenu(currentChildrenSubmenu, false); 3099 }); 3100 } 3101 3102 // remove open linkclass 3103 currentSubmenuLinks.each(function (index) { 3104 const currentLink = currentSubmenuLinks.eq(index); 3105 3106 self.removeMenuLinkOpenClass(currentLink); 3107 }); 3108 }; 3109 3110 /** 3111 * Close all submenus starting from minLevel or excluded (OBSOLETE) 3112 * 3113 * @param {HTMLElement|null} excludedSubmenu - submenu which should not be closed 3114 * @param {number|undefined} minLevel - submenulevel to start from 3115 */ 3116 this.closeAllSubmenus = function (excludedSubmenu, minLevel) { 3117 let isExcluded = false; 3118 3119 self.submenus.each(function (index) { 3120 isExcluded = false; 3121 const currentSubmenu = self.submenus.eq(index); 3122 const currentSubmenuLevel = parseInt(currentSubmenu.attr('data-level')); 3123 3124 // Check if submenu is excluded or children of excluded submneu 3125 if (typeof excludedSubmenu !== 'undefined' && excludedSubmenu !== null) { 3126 // SchlieÃe nur im aktuellen Baum 3127 let parentSubmenu = excludedSubmenu.parents('.' + self.submenuClass + '[data-level="1"]'); 3128 const isWithinExcluedSubmenu = currentSubmenu.parents(excludedSubmenu); 3129 3130 if (excludedSubmenu === currentSubmenu || isWithinExcluedSubmenu.length > 0) {
3131 isExcluded = true; 3132 } 3133 } 3134 3135 // Check if submenuLevel is above minLevel 3136 if (typeof minLevel !== 'undefined') { 3137 // minLevel = 2 3138 if (currentSubmenuLevel <= minLevel) { 3139 isExcluded = true; 3140 } 3141 } 3142 3143 if (isExcluded) return; 3144 3145 self.closeSubmenu(currentSubmenu, false); 3146 }); 3147 }; 3148 3149 this.showOverlay = function () { 3150 self.overlay.addClass(this.overlayOpenClass); 3151 }; 3152 3153 this.hideOverlay = function () { 3154 self.overlay.removeClass(this.overlayOpenClass); 3155 }; 3156 3157 this.addmenuLinkOpenClass = function (link) { 3158 if (typeof link === 'undefined' || link.length === 0) return; 3159 3160 link.addClass(this.menuLinkOpenClass); 3161 }; 3162 3163 this.removeMenuLinkOpenClass = function (link) { 3164 if (typeof link === 'undefined' || link.length === 0) return; 3165 3166 link.removeClass(this.menuLinkOpenClass); 3167 }; 3168 3169 this.onMenuLinkClick = function (link) { 3170 const targetSubmenu = link.parent().find('> .' + self.submenuClass); 3171 const parentSubmenu = link.parents('ul').find('.' + self.submenuClass); 3172 const linkLevel = parseInt(link.attr('data-level')); 3173 3174 if (link.hasClass('open')) { 3175 const parentLi = link.parent().find('.' + self.submenuClass); 3176 3177 self.closeSubmenu(parentLi, false); 3178 3179 link.removeClass(self.menuLinkOpenClass); 3180 3181 self.currentLevel = linkLevel; 3182 } else { 3183 this.openSubmenu(targetSubmenu); 3184 link.addClass(self.menuLinkOpenClass); 3185 } 3186 }; 3187 3188 this.inMenuNavigation = function (firstItem, lastItem, closeItem) { 3189 if (!firstItem || !lastItem) return; 3190 3191 self.trapHandler = function (event) { 3192 if (event.key === 'Tab') { 3193 if (document.activeElement === lastItem && !event.shiftKey) { 3194 event.preventDefault(); 3195 closeItem.focus(); 3196 } else if (document.activeElement === closeItem && event.shiftKey) { 3197 event.preventDefault(); 3198 firstItem.focus(); 3199 } else if (document.activeElement === firstItem && event.shiftKey) { 3200 event.preventDefault(); 3201 lastItem.focus(); 3202 } else if (document.activeElement === closeItem && event.shiftKey) { 3203 event.preventDefault(); 3204 lastItem.focus(); 3205 } 3206 } 3207 }; 3208 3209 document.addEventListener('keydown', self.trapHandler); 3210 }; 3211 3212 3213 this.onKeyDown = function (event) { 3214 if (event.key === 'Escape' || event.keyCode === 27) { 3215 event.preventDefault(); 3216 self.closeMenu(); 3217 } 3218 }; 3219 3220 this.constructor(); 3221 }; 3222})(jQuery); 3223 3224 3225jQuery.noConflict(); 3226 3227(function ($) { 3228 Bw.Utilities.AfterPageload = function () { 3229 var self = this; 3230 3231 this.constructor = function () { 3232 // JS wird aufgerufen nachdem Classloader initialisiert hat 3233 $('div.frame-default').find('>:first-child').unwrap(); 3234 3235 // Workaround: Fix Bug for relative typolinks and missing absolute-Option (fixed in typo3 V9) 3236 $('.maincontent-inner a, .bwSubsite-footer a').each(function () { 3237 var currentLink = $(this); 3238 var currentLinkHref = $(this).attr('href'); 3239 var isRelativeAndMissingSlash = new RegExp(/^(?!\/)(?!http|https|www|javascript|mailto|tel|file|whatsapp|#).+/); 3240 3241 if (typeof currentLinkHref != 'undefined' && isRelativeAndMissingSlash.test(currentLinkHref)) { 3242 currentLink.attr('href', '/' + currentLinkHref); 3243 } 3244 }); 3245 3246 // Rewrite old anchor "format" 3247 self.checkForAnchorLinksDifferentFormat(); 3248 3249 window.onhashchange = self.checkForAnchorLinksDifferentFormat(); 3250 }; 3251 3252 // Check for old anchor links (previously created automatically by imagetextnavigation CE, anchor was technially counter not real element id) 3253 this.checkForAnchorLinksDifferentFormat = function () { 3254 var currentHash = window.location.hash; 3255 3256 if (currentHash) { 3257 var hashMatchOldFormat = currentHash.match('(#el-)([1-9].*)'); 3258 var hashMatchTypolinkPage = currentHash.match('(#c)([1-9].*)'); 3259 3260 // Check if hash is old anchor link (not real element id; schema: #el-123) 3261 if (hashMatchOldFormat) { 3262 var elementIdKey = hashMatchOldFormat[2]; 3263 var container = $('.maincontent'); 3264 3265 if ($('body').hasClass('bistum-folgeseiten')) container = $('.maincontent-inner'); 3266 3267 // Get all possible elements from imagetextnavigation and find corresponding html element 3268 var possibleElements = container.find('.container:not(.breadcrumb-container,.stage-container,.not-shown-in-nav)'); 3269 var referringElement = possibleElements.eq(elementIdKey - 1); 3270 3271 if (referringElement.length > 0) { 3272 var referringElementCurrentId = referringElement.attr('id'); 3273 var elementId = referringElementCurrentId; 3274 var chosenElement = $('#' + elementId); 3275 3276 if (chosenElement.length > 0) { 3277 console.log('Anchor has been transformed. Original: ' + currentHash + ' / new: #' + elementId); 3278 3279 // Set hash for jump to element 3280 window.location.hash = elementId; 3281 3282 $('html, body').animate( 3283 { 3284 scrollTop: $('#' + elementId).offset().top - parseInt($('.maincontent').css('padding-top')), 3285 }, 3286 300, 3287 'swing' 3288 ); 3289 } 3290 } 3291 } 3292 3293 // Redirect Workaround for kalenderblatt 3294 if (currentHash == '#kalenderblatt' && $('body').hasClass('page-105')) { 3295 window.location.href = '/service/kalenderblatt'; 3296 } 3297 3298 // Check if hash is generated from RTE or LinkWizard (schema: #c123) 3299 // Ggf. überflüÃig nach Umbenennung aller IDs der Inhaltselemente zum TYPO3 Standard-Schema 3300 /*if( hashMatchTypolinkPage ){ 3301 var elementIdKey = hashMatchTypolinkPage[2]; 3302 3303 // Get all possible elements from imagetextnavigation and find corresponding html element 3304 var possibleElements = $('.maincontent .container:not(.breadcrumb-container,.stage-container,.not-shown-in-nav)'); 3305 3306 if( $('body').hasClass('bistum-folgeseiten') ){ 3307 possibleElements = $('.maincontent-inner .container:not(.breadcrumb-container,.stage-container,.not-shown-in-nav)'); 3308 } 3309 3310 var referringElement = possibleElements.filter(function(){ 3311 if( $(this).attr('id') == 'c' + elementIdKey ) return true; 3312 }); 3313 3314 if( referringElement.length > 0 ){ 3315 var referringElementCurrentId = referringElement.attr('id'); 3316 var elementId = referringElementCurrentId; 3317 var chosenElement = $('#' + elementId); 3318 3319 if( chosenElement.length > 0 ){ 3320 // Set hash for jump to element 3321 window.location.hash = elementId; 3322 3323 newScrollTop = $('#' + elementId).offset().top - parseInt( $('.maincontent').css('padding-top') ); 3324 3325 $('html, body').animate({ 3326 scrollTop: newScrollTop 3327 }, 300, 'swing'); 3328 } 3329 } 3330 }*/ 3331 } 3332 }; 3333 3334 this.constructor(); 3335 }; 3336})(jQuery); 3337 3338
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.