1(function (root, factory) { 2 if (typeof define === "function" && define.amd) { 3 define(["jquery"], factory); 4 } else if (typeof exports === "object") { 5 module.exports = factory(require("jquery")); 6 } else { 7 root.jquery_mmenu_all_min_js = factory(root.jQuery); 8 } 9})(this, function (jQuery) { 10 /* 11 * jQuery mmenu v6.0.0 12 * @requires jQuery 1.7.0 or later 13 * 14 * mmenu.frebsite.nl 15 * 16 * Copyright (c) Fred Heusschen 17 * www.frebsite.nl 18 * 19 * License: CC-BY-NC-4.0 20 * http://creativecommons.org/licenses/by-nc/4.0/ 21 */ 22 !(function (e) { 23 function t() { 24 e[n].glbl || 25 ((r = { $wndw: e(window), $docu: e(document), $html: e("html"), $body: e("body") }), 26 (s = {}), 27 (a = {}), 28 (o = {}), 29 e.each([s, a, o], function (e, t) { 30 t.add = function (e) { 31 e = e.split(" "); 32 for (var n = 0, i = e.length; n < i; n++) t[e[n]] = t.mm(e[n]); 33 }; 34 }), 35 (s.mm = function (e) { 36 return "mm-" + e; 37 }), 38 s.add("wrapper menu panels panel nopanel highest opened subopened navbar hasnavbar title btn prev next listview nolistview inset vertical selected divider spacer hidden fullsubopen noanimation"), 39 (s.umm = function (e) { 40 return "mm-" == e.slice(0, 3) && (e = e.slice(3)), e; 41 }), 42 (a.mm = function (e) { 43 return "mm-" + e; 44 }), 45 a.add("parent child"), 46 (o.mm = function (e) { 47 return e + ".mm"; 48 }), 49 o.add("transitionend webkitTransitionEnd click scroll resize keydown mousedown mouseup touchstart touchmove touchend orientationchange"), 50 (e[n]._c = s), 51 (e[n]._d = a), 52 (e[n]._e = o), 53 (e[n].glbl = r)); 54 } 55 var n = "mmenu", 56 i = "6.0.0"; 57 if (!(e[n] && e[n].version > i)) { 58 (e[n] = function (e, t, n) { 59 return ( 60 (this.$menu = e), 61 (this._api = ["bind", "getInstance", "initPanels", "openPanel", "closePanel", "closeAllPanels", "setSelected"]), 62 (this.opts = t), 63 (this.conf = n), 64 (this.vars = {}), 65 (this.cbck = {}), 66 (this.mtch = {}), 67 "function" == typeof this.___deprecated && this.___deprecated(), 68 this._initAddons(), 69 this._initExtensions(), 70 this._initMenu(), 71 this._initPanels(), 72 this._initOpened(), 73 this._initAnchors(), 74 this._initMatchMedia(), 75 "function" == typeof this.___debug && this.___debug(), 76 this 77 ); 78 }), 79 (e[n].version = i), 80 (e[n].addons = {}), 81 (e[n].uniqueId = 0), 82 (e[n].defaults = { extensions: [], initMenu: function () {}, initPanels: function () {}, navbar: { add: !0, title: "Menu", titleLink: "parent" }, onClick: { setSelected: !0 }, slidingSubmenus: !0 }), 83 (e[n].configuration = { 84 classNames: { divider: "Divider", inset: "Inset", nolistview: "NoListview", nopanel: "NoPanel", panel: "Panel", selected: "Selected", spacer: "Spacer", vertical: "Vertical" }, 85 clone: !1, 86 openingInterval: 25, 87 panelNodetype: "ul, ol, div", 88 transitionDuration: 400, 89 }), 90 (e[n].prototype = { 91 getInstance: function () { 92 return this; 93 }, 94 initPanels: function (e) { 95 this._initPanels(e); 96 }, 97 openPanel: function (t, i) { 98 if ((this.trigger("openPanel:before", t), t && t.length && (t.is("." + s.panel) || (t = t.closest("." + s.panel)), t.is("." + s.panel)))) { 99 var o = this; 100 if (("boolean" != typeof i && (i = !0), t.hasClass(s.vertical))) 101 t 102 .add(t.parents("." + s.vertical)) 103 .removeClass(s.hidden) 104 .parent("li") 105 .addClass(s.opened),
106 this.openPanel( 107 t 108 .parents("." + s.panel) 109 .not("." + s.vertical) 110 .first() 111 ), 112 this.trigger("openPanel:start", t), 113 this.trigger("openPanel:finish", t); 114 else { 115 if (t.hasClass(s.opened)) return; 116 var r = this.$pnls.children("." + s.panel), 117 l = r.filter("." + s.opened); 118 if (!e[n].support.csstransitions) return l.addClass(s.hidden).removeClass(s.opened), t.removeClass(s.hidden).addClass(s.opened), this.trigger("openPanel:start", t), void this.trigger("openPanel:finish", t); 119 r.not(t).removeClass(s.subopened); 120 for (var d = t.data(a.parent); d; ) (d = d.closest("." + s.panel)), d.is("." + s.vertical) || d.addClass(s.subopened), (d = d.data(a.parent)); 121 r.removeClass(s.highest).not(l).not(t).addClass(s.hidden), t.removeClass(s.hidden); 122 var c = function () { 123 l.removeClass(s.opened), 124 t.addClass(s.opened), 125 t.hasClass(s.subopened) ? (l.addClass(s.highest), t.removeClass(s.subopened)) : (l.addClass(s.subopened), t.addClass(s.highest)), 126 this.trigger("openPanel:start", t); 127 }, 128 h = function () { 129 l.removeClass(s.highest).addClass(s.hidden), t.removeClass(s.highest), this.trigger("openPanel:finish", t); 130 }; 131 i && !t.hasClass(s.noanimation) 132 ? setTimeout(function () { 133 o.__transitionend( 134 t, 135 function () { 136 h.call(o); 137 }, 138 o.conf.transitionDuration 139 ), 140 c.call(o); 141 }, this.conf.openingInterval) 142 : (c.call(this), h.call(this)); 143 } 144 this.trigger("openPanel:after", t); 145 } 146 }, 147 closePanel: function (e) { 148 this.trigger("closePanel:before", e); 149 var t = e.parent(); 150 t.hasClass(s.vertical) && (t.removeClass(s.opened), this.trigger("closePanel", e)), this.trigger("closePanel:after", e); 151 }, 152 closeAllPanels: function () { 153 this.trigger("closeAllPanels:before"), 154 this.$pnls 155 .find("." + s.listview) 156 .children() 157 .removeClass(s.selected) 158 .filter("." + s.vertical) 159 .removeClass(s.opened); 160 var e = this.$pnls.children("." + s.panel), 161 t = e.first(); 162 this.$pnls 163 .children("." + s.panel) 164 .not(t) 165 .removeClass(s.subopened) 166 .removeClass(s.opened) 167 .removeClass(s.highest) 168 .addClass(s.hidden), 169 this.openPanel(t), 170 this.trigger("closeAllPanels:after"); 171 }, 172 togglePanel: function (e) { 173 var t = e.parent(); 174 t.hasClass(s.vertical) && this[t.hasClass(s.opened) ? "closePanel" : "o
174penPanel"](e); 175 }, 176 setSelected: function (e) { 177 this.trigger("setSelected:before", e), 178 this.$menu 179 .find("." + s.listview) 180 .children("." + s.selected) 181 .removeClass(s.selected), 182 e.addClass(s.selected), 183 this.trigger("setSelected:after", e); 184 }, 185 bind: function (e, t) { 186 (this.cbck[e] = this.cbck[e] || []), this.cbck[e].push(t); 187 }, 188 trigger: function () { 189 var e = this, 190 t = Array.prototype.slice.call(arguments), 191 n = t.shift(); 192 if (this.cbck[n]) for (var i = 0, s = this.cbck[n].length; i < s; i++) this.cbck[n][i].apply(e, t); 193 }, 194 matchMedia: function (e, t, n) { 195 var i = { yes: t, no: n }; 196 (this.mtch[e] = this.mtch[e] || []), this.mtch[e].push(i); 197 }, 198 _initAddons: function () { 199 this.trigger("initAddons:before"); 200 var t; 201 for (t in e[n].addons) e[n].addons[t].add.call(this), (e[n].addons[t].add = function () {}); 202 for (t in e[n].addons) e[n].addons[t].setup.call(this); 203 this.trigger("initAddons:after"); 204 }, 205 _initExtensions: function () { 206 this.trigger("initExtensions:before"); 207 var e = this; 208 this.opts.extensions.constructor === Array && (this.opts.extensions = { all: this.opts.extensions }); 209 for (var t in this.opts.extensions) 210 (this.opts.extensions[t] = this.opts.extensions[t].length ? "mm-" + this.opts.extensions[t].join(" mm-") : ""), 211 this.opts.extensions[t] && 212 !(function (t) { 213 e.matchMedia( 214 t, 215 function () { 216 this.$menu.addClass(this.opts.extensions[t]); 217 }, 218 function () { 219 this.$menu.removeClass(this.opts.extensions[t]); 220 } 221 ); 222 })(t); 223 this.trigger("initExtensions:after"); 224 }, 225 _initMenu: function () { 226 this.trigger("initMenu:before"); 227 this.conf.clone && 228 ((this.$orig = this.$menu), 229 (this.$menu = this.$orig.clone()), 230 this.$menu 231 .add(this.$menu.find("[id]")) 232 .filter("[id]") 233 .each(function () { 234 e(this).attr("id", s.mm(e(this).attr("id"))); 235 })), 236 this.opts.initMenu.call(this, this.$menu, this.$orig), 237 this.$menu.attr("id", this.$menu.attr("id") || this.__getUniqueId()), 238 (this.$pnls = e('<div class="' + s.panels + '" />') 239 .append(this.$menu.children(this.conf.panelNodetype)) 240 .prependTo(this.$menu)); 241 var t = [s.menu]; 242 this.opts.slidingSubmenus || t.push(s.vertical), this.$menu.addClass(t.join(" ")).parent().addClass(s.wrapper), this.trigger("initMenu:after"); 243 }, 244 _initPanels: function (t) { 245 this.trigger("initPanels:before", t), (t = t || this.$pnls.children(this.conf.panelNodetype)); 246 var n = e(), 247 i = this, 248 a = function (t) { 249 t.filter(this.conf.panelNodetype).each(function () { 250 if ((($panel = i._initPanel(e(this))), $panel)) { 251 i._initNavbar($panel), i._initListview($panel), (n = n.add($panel)); 252 var t = $panel 253 .children("." + s.listview) 254 .children("li") 255 .children(i.conf.panelNodeType) 256 .add($panel.children("." + i.conf.classNames.panel)); 257 t.length && a.call(i, t); 258 } 259 }); 260 }; 261 a.call(this, t), this.opts.initPanels.call(this, n), this.trigger("initPanels:after", n); 262 }, 263 _initPanel: function (e) { 264 this.trigger("initPanel:before", e); 265 if ( 266 (this.__refactorClass(e, this.conf.classNames.panel, "panel"), 267 this.__refactorClass(e, this.conf.classNames.nopanel, "nopanel"), 268 this.__refactorClass(e, this.conf.classNames.vertical, "vertical"), 269 this.__refactorClass(e, this.conf.classNames.inset, "inset"), 270 e.filter("." + s.inset).addClass(s.nopanel), 271 e.hasClass(s.nopanel)) 272 ) 273 return !1; 274 if (e.hasClass(s.panel)) return e; 275 var t = e.hasClass(s.vertical) || !this.opts.slidingSubmenus; 276 e.removeClass(s.vertical); 277 var n = e.attr("id") || this.__getUniqueId(); 278 e.removeAttr("id"), e.is("ul, ol") && (e.wrap("<div />"), (e = e.parent())), e.addClass(s.panel + " " + s.hidden).attr("id", n); 279 var i = e.parent("li"); 280 return t ? e.add(i).addClass(s.vertical) : e.appendTo(this.$pnls), i.length && (i.data(a.child, e), e.data(a.parent, i)), this.trigger("initPanel:after", e), e; 281 }, 282 _initNavbar: function (t) { 283 if ((this.trigger("initNavbar:before", t), !t.children("." + s.navbar).length)) { 284 var i = t.data(a.parent), 285 o = e('<div class="' + s.navbar + '" />'), 286 r = e[n].i18n(this.opts.navbar.title), 287 l = !1; 288 if (i && i.length) { 289 if (i.hasClass(s.vertical)) return; 290 if (i.parent().is("." + s.listview)) var d = i.children("a, span").not("." + s.next); 291 else var d = i.closest("." + s.panel).find('a[href="#' + t.attr("id") + '"]'); 292 (d = d.first()), (i = d.closest("." + s.panel)); 293 var c = i.attr("id"); 294 switch (((r = d.text()), this.opts.navbar.titleLink)) { 295 case "anchor": 296 l = d.attr("href"); 297 break; 298 case "parent": 299 l = "#" + c; 300 } 301 o.append('<a class="' + s.btn + " " + s.prev + '" href="#' + c + '" />'); 302 } else if (!this.opts.navbar.title) return; 303 this.opts.navbar.add && t.addClass(s.hasnavbar), o.append('<a class="' + s.title + '"' + (l ? ' href="' + l + '"' : "") + ">" + r + "</a>").prependTo(t), this.trigger("initNavbar:after", t); 304 } 305 }, 306 _initListview: function (t) { 307 this.trigger("initListview:before", t); 308 var n = this.__childAddBack(t, "ul, ol"); 309 this.__refactorClass(n, this.conf.classNames.nolistview, "nolistview"), n.filter("." + this.conf.classNames.inset).addClass(s.nolistview); 310 var i = n 311 .not("." + s.nolistview) 312 .addClass(s.listview) 313 .children(); 314 this.__refactorClass(i, this.conf.classNames.selected, "selected"), this.__refactorClass(i, this.conf.classNames.divider, "divider"), this.__refactorClass(i, this.conf.classNames.spacer, "spacer"); 315 var o = t.data(a.parent); 316 if (o && o.parent().is("." + s.listview) && !o.children("." + s.next).length) { 317 var r = o.children("a, span").first(), 318 l = e('<a class="' + s.next + '" href="#' + t.attr("id") + '" />').insertBefore(r); 319 r.is("span") && l.addClass(s.fullsubopen); 320 } 321 this.trigger("initListview:after", t); 322 }, 323 _initOpened: function () { 324 this.trigger("initOpened:before"); 325 var e = this.$pnls 326 .find("." + s.listview) 327 .children("." + s.selected) 328 .removeClass(s.selected) 329 .last() 330 .addClass(s.selected), 331 t = e.length ? e.closest("." + s.panel) : this.$pnls.children("." + s.panel).first();
332 this.openPanel(t, !1), this.trigger("initOpened:after"); 333 }, 334 _initAnchors: function () { 335 var t = this; 336 r.$body.on(o.click + "-oncanvas", "a[href]", function (i) { 337 var a = e(this), 338 o = !1, 339 r = t.$menu.find(a).length; 340 for (var l in e[n].addons) 341 if (e[n].addons[l].clickAnchor.call(t, a, r)) { 342 o = !0; 343 break; 344 } 345 var d = a.attr("href"); 346 if (!o && r && d.length > 1 && "#" == d.slice(0, 1)) 347 try { 348 var c = e(d, t.$menu); 349 c.is("." + s.panel) && ((o = !0), t[a.parent().hasClass(s.vertical) ? "togglePanel" : "openPanel"](c)); 350 } catch (h) {}
351 if ((o && i.preventDefault(), !o && r && a.is("." + s.listview + " > li > a") && !a.is('[rel="external"]') && !a.is('[target="_blank"]'))) { 352 t.__valueOrFn(t.opts.onClick.setSelected, a) && t.setSelected(e(i.target).parent()); 353 var f = t.__valueOrFn(t.opts.onClick.preventDefault, a, "#" == d.slice(0, 1)); 354 f && i.preventDefault(), t.__valueOrFn(t.opts.onClick.close, a, f) && t.close(); 355 } 356 }); 357 }, 358 _initMatchMedia: function () { 359 var e = this; 360 this._fireMatchMedia(), 361 r.$wndw.on(o.resize, function (t) { 362 e._fireMatchMedia(); 363 }); 364 }, 365 _fireMatchMedia: function () { 366 for (var e in this.mtch) for (var t = window.matchMedia && window.matchMedia(e).matches ? "yes" : "no", n = 0; n < this.mtch[e].length; n++) this.mtch[e][n][t].call(this); 367 }, 368 _getOriginalMenuId: function () { 369 var e = this.$menu.attr("id"); 370 return this.conf.clone && e && e.length && (e = s.umm(e)), e; 371 }, 372 __api: function () { 373 var t = this, 374 n = {}; 375 return ( 376 e.each(this._api, function (e) { 377 var i = this; 378 n[i] = function () { 379 var e = t[i].apply(t, arguments); 380 return "undefined" == typeof e ? n : e; 381 }; 382 }), 383 n 384 ); 385 }, 386 __valueOrFn: function (e, t, n) { 387 return "function" == typeof e ? e.call(t[0]) : "undefined" == typeof e && "undefined" != typeof n ? n : e; 388 }, 389 __refactorClass: function (e, t, n) { 390 return e 391 .filter("." + t) 392 .removeClass(t) 393 .addClass(s[n]); 394 }, 395 __findAddBack: function (e, t) { 396 return e.find(t).add(e.filter(t)); 397 }, 398 __childAddBack: function (e, t) { 399 return e.children(t).add(e.filter(t)); 400 }, 401 __filterListItems: function (e) { 402 return e.not("." + s.divider).not("." + s.hidden); 403 }, 404 __filterListItemAnchors: function (e) { 405 return this.__filterListItems(e) 406 .children("a") 407 .not("." + s.next); 408 }, 409 __transitionend: function (e, t, n) { 410 var i = !1, 411 s = function (n) { 412 ("undefined" != typeof n && n.target != e[0]) || (i || (e.unbind(o.transitionend), e.unbind(o.webkitTransitionEnd), t.call(e[0])), (i = !0)); 413 }; 414 e.on(o.transitionend, s), e.on(o.webkitTransitionEnd, s), setTimeout(s, 1.1 * n); 415 }, 416 __getUniqueId: function () { 417 return s.mm(e[n].uniqueId++); 418 }, 419 }), 420 (e.fn[n] = function (i, s) { 421 t(), (i = e.extend(!0, {}, e[n].defaults, i)), (s = e.extend(!0, {}, e[n].configuration, s)); 422 var a = e(); 423 return ( 424 this.each(function () { 425 var t = e(this); 426 if (!t.data(n)) { 427 var o = new e[n](t, i, s); 428 o.$menu.data(n, o.__api()), (a = a.add(o.$menu)); 429 } 430 }), 431 a 432 ); 433 }), 434 (e[n].i18n = (function () { 435 var t = {}; 436 return function (n) { 437 switch (typeof n) { 438 case "object": 439 return e.extend(t, n), t; 440 case "string": 441 return t[n] || n; 442 case "undefined": 443 default: 444 return t; 445 } 446 }; 447 })()), 448 (e[n].support = { 449 touch: "ontouchstart" in window || navigator.msMaxTouchPoints || !1, 450 csstransitions: (function () { 451 return "undefined" == typeof Modernizr || "undefined" == typeof Modernizr.csstransitions || Modernizr.csstransitions; 452 })(), 453 csstransforms: (function () { 454 return "undefined" == typeof Modernizr || "undefined" == typeof Modernizr.csstransforms || Modernizr.csstransforms; 455 })(), 456 csstransforms3d: (function () { 457 return "undefined" == typeof Modernizr || "undefined" == typeof Modernizr.csstransforms3d || Modernizr.csstransforms3d; 458 })(), 459 }); 460 var s, a, o, r; 461 } 462 })(jQuery) 463 /* 464 * jQuery mmenu offCanvas add-on 465 * mmenu.frebsite.nl 466 * 467 * Copyright (c) Fred Heusschen 468 */, 469 (function (e) { 470 var t = "mmenu", 471 n = "offCanvas"; 472 (e[t].addons[n] = { 473 setup: function () { 474 if (this.opts[n]) { 475 var s = this, 476 a = this.opts[n], 477 r = this.conf[n]; 478 (o = e[t].glbl), 479 (this._api = e.merge(this._api, ["open", "close", "setPage"])), 480 "object" != typeof a && (a = {}), 481 ("top" != a.position && "bottom" != a.position) || (a.zposition = "front"), 482 (a = this.opts[n] = e.extend(!0, {}, e[t].defaults[n], a)), 483 "string" != typeof r.pageSelector && (r.pageSelector = "> " + r.pageNodetype), 484 (o.$allMenus = (o.$allMenus || e()).add(this.$menu)), 485 (this.vars.opened = !1); 486 var l = [i.offcanvas]; 487 "left" != a.position && l.push(i.mm(a.position)), 488 "back" != a.zposition && l.push(i.mm(a.zposition)), 489 e[t].support.csstransforms || l.push(i["no-csstransforms"]), 490 e[t].support.csstransforms3d || l.push(i["no-csstransforms3d"]), 491 this.bind("initMenu:after", function () { 492 this.setPage(o.$page), 493 this._initBlocker(), 494 this["_initWindow_" + n](), 495 this.$menu 496 .addClass(l.join(" ")) 497 .parent("." + i.wrapper) 498 .removeClass(i.wrapper), 499 this.$menu[r.menuInsertMethod](r.menuInsertSelector); 500 var e = window.location.hash; 501 if (e) { 502 var t = this._getOriginalMenuId(); 503 t && t == e.slice(1) && this.open(); 504 } 505 }), 506 this.bind("initExtensions:after", function () { 507 for (var e = [i.mm("widescreen"), i.mm("iconbar")], t = 0; t < e.length; t++) 508 for (var n in this.opts.extensions) 509 if (this.opts.extensions[n].indexOf(e[t]) > -1) { 510 !(function (t, n) { 511 s.matchMedia( 512 t, 513 function () { 514 o.$html.addClass(e[n]); 515 }, 516 function () { 517 o.$html.removeClass(e[n]); 518 } 519 ); 520 })(n, t); 521 break; 522 } 523 }), 524 this.bind("open:start:sr-aria", function () { 525 this.__sr_aria(this.$menu, "hidden", !1); 526 }), 527 this.bind("close:finish:sr-aria", function () { 528 this.__sr_aria(this.$menu, "hidden", !0); 529 }), 530 this.bind("initMenu:after:sr-aria", function () { 531 this.__sr_aria(this.$menu, "hidden", !0); 532 }); 533 } 534 }, 535 add: function () { 536 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("offcanvas slideout blocking modal background opening blocker page no-csstransforms3d"), s.add("style"); 537 }, 538 clickAnchor: function (e, t) { 539 var s = this; 540 if (this.opts[n]) { 541 var a = this._getOriginalMenuId(); 542 if (a && e.is('[href="#' + a + '"]')) { 543 if (t) return !0; 544 var r = e.closest("." + i.menu); 545 if (r.length) { 546 var l = r.data("mmenu"); 547 if (l && l.close) 548 return ( 549 l.close(), 550 s.__transitionend( 551 r, 552 function () { 553 s.open(); 554 }, 555 s.conf.transitionDuration 556 ), 557 !0 558 ); 559 } 560 return this.open(), !0; 561 } 562 if (o.$page) return (a = o.$page.first().attr("id")), a && e.is('[href="#' + a + '"]') ? (this.close(), !0) : void 0; 563 } 564 }, 565 }), 566 (e[t].defaults[n] = { position: "left", zposition: "back", blockUI: !0, moveBackgroun
566d: !0 }), 567 (e[t].configuration[n] = { pageNodetype: "div", pageSelector: null, noPageSelector: [], wrapPageIfNeeded: !0, menuInsertMethod: "prependTo", menuInsertSelector: "body" }), 568 (e[t].prototype.open = function () { 569 if ((this.trigger("open:before"), !this.vars.opened)) { 570 var e = this; 571 this._openSetup(), 572 setTimeout(function () { 573 e._openFinish(); 574 }, this.conf.openingInterval), 575 this.trigger("open:after"); 576 } 577 }), 578 (e[t].prototype._openSetup = function () { 579 var t = this, 580 r = this.opts[n]; 581 this.closeAllOthers(), 582 o.$page.each(function () { 583 e(this).data(s.style, e(this).attr("style") || ""); 584 }), 585 o.$wndw.trigger(a.resize + "-" + n, [!0]); 586 var l = [i.opened]; 587 r.blockUI && l.push(i.blocking), 588 "modal" == r.blockUI && l.push(i.modal), 589 r.moveBackground && l.push(i.background), 590 "left" != r.position && l.push(i.mm(this.opts[n].position)), 591 "back" != r.zposition && l.push(i.mm(this.opts[n].zposition)), 592 o.$html.addClass(l.join(" ")), 593 setTimeout(function () { 594 t.vars.opened = !0; 595 }, this.conf.openingInterval), 596 this.$menu.addClass(i.opened); 597 }), 598 (e[t].prototype._openFinish = function () { 599 var e = this; 600 this.__transitionend( 601 o.$page.first(), 602 function () { 603 e.trigger("open:finish"); 604 }, 605 this.conf.transitionDuration 606 ), 607 this.trigger("open:start"), 608 o.$html.addClass(i.opening); 609 }), 610 (e[t].prototype.close = function () { 611 if ((this.trigger("close:before"), this.vars.opened)) { 612 var t = this; 613 this.__transitionend( 614 o.$page.first(), 615 function () { 616 t.$menu.removeClass(i.opened); 617 var a = [i.opened, i.blocking, i.modal, i.background, i.mm(t.opts[n].position), i.mm(t.opts[n].zposition)]; 618 o.$html.removeClass(a.join(" ")), 619 o.$page.each(function () { 620 e(this).attr("style", e(this).data(s.style)); 621 }), 622 (t.vars.opened = !1), 623 t.trigger("close:finish"); 624 }, 625 this.conf.transitionDuration 626 ), 627 this.trigger("close:start"), 628 o.$html.removeClass(i.opening), 629 this.trigger("close:after"); 630 } 631 }), 632 (e[t].prototype.closeAllOthers = function () { 633 o.$allMenus.not(this.$menu).each(function () { 634 var n = e(this).data(t); 635 n && n.close && n.close(); 636 }); 637 }), 638 (e[t].prototype.setPage = function (t) { 639 this.trigger("setPage:before", t); 640 var s = this, 641 a = this.conf[n]; 642 (t && t.length) || 643 ((t = o.$body.find(a.pageSelector)), a.noPageSelector.length && (t = t.not(a.noPageSelector.join(", "))), t.length > 1 && a.wrapPageIfNeeded && (t = t.wrapAll("<" + this.conf[n].pageNodetype + " />").parent())), 644 t.each(function () { 645 e(this).attr("id", e(this).attr("id") || s.__getUniqueId()); 646 }), 647 t.addClass(i.page + " " + i.slideout), 648 (o.$page = t), 649 this.trigger("setPage:after", t); 650 }), 651 (e[t].prototype["_initWindow_" + n] = function () { 652 o.$wndw.off(a.keydown + "-" + n).on(a.keydown + "-" + n, function (e) { 653 if (o.$html.hasClass(i.opened) && 9 == e.keyCode) return e.preventDefault(), !1; 654 }); 655 var e = 0; 656 o.$wndw.off(a.resize + "-" + n).on(a.resize + "-" + n, function (t, n) { 657 if (1 == o.$page.length && (n || o.$html.hasClass(i.opened))) { 658 var s = o.$wndw.height(); 659 (n || s != e) && ((e = s), o.$page.css("minHeight", s)); 660 } 661 }); 662 }), 663 (e[t].prototype._initBlocker = function () { 664 var t = this; 665 this.opts[n].blockUI &&
666 (o.$blck || (o.$blck = e('<div id="' + i.blocker + '" class="' + i.slideout + '" />')), 667 o.$blck 668 .appendTo(o.$body) 669 .off(a.touchstart + "-" + n + " " + a.touchmove + "-" + n) 670 .on(a.touchstart + "-" + n + " " + a.touchmove + "-" + n, function (e) { 671 e.preventDefault(), e.stopPropagation(), o.$blck.trigger(a.mousedown + "-" + n); 672 }) 673 .off(a.mousedown + "-" + n) 674 .on(a.mousedown + "-" + n, function (e) { 675 e.preventDefault(), o.$html.hasClass(i.modal) || (t.closeAllOthers(), t.close()); 676 })); 677 }); 678 var i, s, a, o; 679 })(jQuery) 680 /* 681 * jQuery mmenu scrollBugFix add-on 682 * mmenu.frebsite.nl 683 * 684 * Copyright (c) Fred Heusschen 685 */, 686 (function (e) { 687 var t = "mmenu", 688 n = "scrollBugFix"; 689 (e[t].addons[n] = { 690 setup: function () { 691 var s = this.opts[n]; 692 this.conf[n]; 693 (o = e[t].glbl), 694 e[t].support.touch && 695 this.opts.offCanvas && 696 this.opts.offCanvas.blockUI && 697 ("boolean" == typeof s && (s = { fix: s }), 698 "object" != typeof s && (s = {}), 699 (s = this.opts[n] = e.extend(!0, {}, e[t].defaults[n], s)), 700 s.fix && 701 (this.bind("open:start", function () { 702 this.$pnls.children("." + i.opened).scrollTop(0); 703 }), 704 this.bind("initMenu:after", function () { 705 this["_initWindow_" + n](); 706 }))); 707 }, 708 add: function () { 709 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e); 710 }, 711 clickAnchor: function (e, t) {}, 712 }), 713 (e[t].defaults[n] = { fix: !0 }), 714 (e[t].prototype["_initWindow_" + n] = function () { 715 o.$docu.off(a.touchmove + "-" + n).on(a.touchmove + "-" + n, function (e) { 716 o.$html.hasClass(i.opened) && e.preventDefault(); 717 }); 718 var t = !1; 719 o.$body 720 .off(a.touchstart + "-" + n) 721 .on(a.touchstart + "-" + n, "." + i.panels + "> ." + i.opened, function (e) { 722 o.$html.hasClass(i.opened) && 723 (t || 724 ((t = !0), 725 0 === e.currentTarget.scrollTop ? (e.currentTarget.scrollTop = 1) : e.currentTarget.scrollHeight === e.currentTarget.scrollTop + e.currentTarget.offsetHeight && (e.currentTarget.scrollTop -= 1), 726 (t = !1))); 727 }) 728 .off(a.touchmove + "-" + n) 729 .on(a.touchmove + "-" + n, "." + i.panels + "> ." + i.opened, function (t) { 730 o.$html.hasClass(i.opened) && e(this)[0].scrollHeight > e(this).innerHeight() && t.stopPropagation(); 731 }), 732 o.$wndw.off(a.orientationchange + "-" + n).on(a.orientationchange + "-" + n, function () { 733 that.$pnls 734 .children("." + i.opened) 735 .scrollTop(0) 736 .css({ "-webkit-overflow-scrolling": "auto" }) 737 .css({ "-webkit-overflow-scrolling": "touch" }); 738 }); 739 }); 740 var i, s, a, o; 741 })(jQuery) 742 /* 743 * jQuery mmenu screenReader add-on 744 * mmenu.frebsite.nl 745 * 746 * Copyright (c) Fred Heusschen 747 */, 748 (function (e) { 749 var t = "mmenu", 750 n = "screenReader"; 751 (e[t].addons[n] = { 752 setup: function () { 753 var s = this, 754 a = this.opts[n], 755 r = this.conf[n]; 756 (o = e[t].glbl), 757 "boolean" == typeof a && (a = { aria: a, text: a }), 758 "object" != typeof a && (a = {}), 759 (a = this.opts[n] = e.extend(!0, {}, e[t].defaults[n], a)), 760 a.aria && 761 (this.bind("initAddons:after", function () { 762 this.bind("initMenu:after", function () { 763 this.trigger("initMenu:after:sr-aria"); 764 }), 765 this.bind("initNavbar:after", function () { 766 this.trigger("initNavbar:after:sr-aria", arguments[0]); 767 }), 768 this.bind("openPanel:start", function () { 769 this.trigger("openPanel:start:sr-aria", arguments[0]); 770 }), 771 this.bind("close:start", function () { 772 this.trigger("close:start:sr-aria"); 773 }), 774 this.bind("close:finish", function () { 775 this.trigger("close:finish:sr-aria"); 776 }), 777 this.bind("open:start", function () { 778 this.trigger("open:start:sr-aria"); 779 }), 780 this.bind("open:finish", function () { 781 this.trigger("open:finish:sr-aria"); 782 }); 783 }), 784 this.bind("updateListview", function () { 785 this.$pnls 786 .find("." + i.listview) 787 .children() 788 .each(function () { 789 s.__sr_aria(e(this), "hidden", e(this).is("." + i.hidden)); 790 }); 791 }), 792 this.bind("openPanel:start", function (e) { 793 var t = this.$menu 794 .find("." + i.panel) 795 .not(e) 796 .not(e.parents("." + i.panel)), 797 n = e.add(e.find("." + i.vertical + "." + i.opened).children("." + i.panel)); 798 this.__sr_aria(t, "hidden", !0), this.__sr_aria(n, "hidden", !1); 799 }), 800 this.bind("closePanel", function (e) { 801 this.__sr_aria(e, "hidden", !0); 802 }), 803 this.bind("initPanels:after", function (t) { 804 var n = t.find("." + i.prev + ", ." + i.next).each(function () { 805 s.__sr_aria(e(this), "owns", e(this).attr("href").replace("#", "")); 806 }); 807 this.__sr_aria(n, "haspopup", !0); 808 }), 809 this.bind("initNavbar:after", function (e) { 810 var t = e.children("." + i.navbar); 811 this.__sr_aria(t, "hidden", !e.hasClass(i.hasnavbar)); 812 }), 813 a.text && 814 (this.bind("initlistview:after", function (e) { 815 var t = e 816 .find("." + i.listview) 817 .find("." + i.fullsubopen) 818 .parent() 819 .children("span"); 820 this.__sr_aria(t, "hidden", !0); 821 }), 822 "parent" == this.opts.navbar.titleLink && 823 this.bind("initNavbar:after", function (e) { 824 var t = e.children("." + i.navbar), 825 n = !!t.children("." + i.prev).length; 826 this.__sr_aria(t.children("." + i.title), "hidden", n); 827 }))), 828 a.text && 829 (this.bind("initAddons:after", function () { 830 this.bind("setPage:after", function () { 831 this.trigger("setPage:after:sr-text", arguments[0]); 832 }); 833 }), 834 this.bind("initNavbar:after", function (n) { 835 var s = n.children("." + i.navbar), 836 a = s.children("." + i.title).text(), 837 o = e[t].i18n(r.text.closeSubmenu); 838 a && (o += " (" + a + ")"), s.children("." + i.prev).html(this.__sr_text(o)); 839 }), 840 this.bind("initlistview:after", function (n) { 841 n.find("." + i.listview) 842 .children("li") 843 .children("." + i.next) 844 .each(function () { 845 var n = e(this), 846 a = $prev.nextAll("span, a").first().text(), 847 o = e[t].i18n(r.text[$prev.parent().is("." + i.vertical) ? "toggleSubmenu" : "openSubmenu"]); 848 a && (o += " (" + a + ")"), n.html(s.__sr_text(o)); 849 }); 850 })); 851 }, 852 add: function () { 853 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("sronly"); 854 }, 855 clickAnchor: function (e, t) {}, 856 }), 857 (e[t].defaults[n] = { aria: !0, text: !0 }), 858 (e[t].configuration[n] = { text: { closeMenu: "Close menu",
858closeSubmenu: "Close submenu", openSubmenu: "Open submenu", toggleSubmenu: "Toggle submenu" } }), 859 (e[t].prototype.__sr_aria = function (e, t, n) { 860 e.prop("aria-" + t, n)[n ? "attr" : "removeAttr"]("aria-" + t, n); 861 }), 862 (e[t].prototype.__sr_text = function (e) { 863 return '<span class="' + i.sronly + '">' + e + "</span>"; 864 }); 865 var i, s, a, o; 866 })(jQuery) 867 /* 868 * jQuery mmenu autoHeight add-on 869 * mmenu.frebsite.nl 870 * 871 * Copyright (c) Fred Heusschen 872 */, 873 (function (e) { 874 var t = "mmenu", 875 n = "autoHeight"; 876 (e[t].addons[n] = { 877 setup: function () { 878 var s = this.opts[n]; 879 this.conf[n]; 880 if ( 881 ((o = e[t].glbl), 882 "boolean" == typeof s && s && (s = { height: "auto" }), 883 "string" == typeof s && (s = { height: s }), 884 "object" != typeof s && (s = {}), 885 (s = this.opts[n] = e.extend(!0, {}, e[t].defaults[n], s)), 886 "auto" == s.height || "highest" == s.height) 887 ) { 888 this.bind("initMenu:after", function () { 889 this.$menu.addClass(i.autoheight); 890 }); 891 var a = function (t) { 892 if (!this.opts.offCanvas || this.vars.opened) { 893 var n = Math.max(parseInt(this.$pnls.css("top"), 10), 0) || 0, 894 a = Math.max(parseInt(this.$pnls.css("bottom"), 10), 0) || 0, 895 o = 0; 896 this.$menu.addClass(i.measureheight), 897 "auto" == s.height 898 ? ((t = t || this.$pnls.children("." + i.opened)), 899 t.is("." + i.vertical) && 900 (t = t 901 .parents("." + i.panel) 902 .not("." + i.vertical) 903 .first()), 904 (o = t.outerHeight())) 905 : "highest" == s.height && 906 this.$pnls.children().each(function () { 907 var t = e(this); 908 t.is("." + i.vertical) && 909 (t = t 910 .parents("." + i.panel) 911 .not("." + i.vertical) 912 .first()), 913 (o = Math.max(o, t.outerHeight())); 914 }), 915 this.$menu.height(o + n + a).removeClass(i.measureheight); 916 } 917 }; 918 this.opts.offCanvas && this.bind("open:start", a), 919 "highest" == s.height && this.bind("initPanels:after", a), 920 "auto" == s.height && (this.bind("updateListview", a), this.bind("openPanel:start", a), this.bind("closePanel:finish", a)); 921 } 922 }, 923 add: function () { 924 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("autoheight measureheight"), a.add("resize"); 925 }, 926 clickAnchor: function (e, t) {}, 927 }), 928 (e[t].defaults[n] = { height: "default" }); 929 var i, s, a, o; 930 })(jQuery) 931 /* 932 * jQuery mmenu backButton add-on 933 * mmenu.frebsite.nl 934 * 935 * Copyright (c) Fred Heusschen 936 */, 937 (function (e) { 938 var t = "mmenu", 939 n = "backButton"; 940 (e[t].addons[n] = { 941 setup: function () { 942 if (this.opts.offCanvas) { 943 var s = this, 944 a = this.opts[n]; 945 this.conf[n]; 946 if (((o = e[t].glbl), "boolean" == typeof a && (a = { close: a }), "object" != typeof a && (a = {}), (a = e.extend(!0, {}, e[t].defaults[n], a)), a.close)) { 947 var r = "#" + s.$menu.attr("id"); 948 this.bind("open:finish", function (e) { 949 location.hash != r && history.pushState(null, document.title, r); 950 }), 951 e(window).on("popstate", function (e) { 952 o.$html.hasClass(i.opened) ? (e.stopPropagation(), s.close()) : location.hash == r && (e.stopPropagation(), s.open()); 953 }); 954 } 955 } 956 }, 957 add: function () { 958 return window.history && window.history.pushState ? ((i = e[t]._c), (s = e[t]._d), void (a = e[t]._e)) : void (e[t].addons[n].setup = function () {}); 959 }, 960 clickAnchor: function (e, t) {}, 961 }), 962 (e[t].defaults[n] = { close: !1 }); 963 var i, s, a, o; 964 })(jQuery) 965 /* 966 * jQuery mmenu columns add-on 967 * mmenu.frebsite.nl 968 * 969 * Copyright (c) Fred Heusschen 970 */, 971 (function (e) { 972 var t = "mmenu", 973 n = "columns"; 974 (e[t].addons[n] = { 975 setup: function () { 976 var s = this.opts[n]; 977 this.conf[n]; 978 if ( 979 ((o = e[t].glbl), 980 "boolean" == typeof s && (s = { add: s }), 981 "number" == typeof s && (s = { add: !0, visible: s }), 982 "object" != typeof s && (s = {}), 983 "number" == typeof s.visible && (s.visible = { min: s.visible, max: s.visible }), 984 (s = this.opts[n] = e.extend(!0, {}, e[t].defaults[n], s)), 985 s.add) 986 ) { 987 (s.visible.min = Math.max(1, Math.min(6, s.visible.min))), (s.visible.max = Math.max(s.visible.min, Math.min(6, s.visible.max))); 988 for (var a = this.opts.offCanvas ? this.$menu.add(o.$html) : this.$menu, r = [], l = 0; l <= s.visible.max; l++) r.push(i.columns + "-" + l); 989 r = r.join(" "); 990 var d = function (e) { 991 var t = this.$pnls.children("." + i.subopened).length; 992 e && !e.hasClass(i.subopened) && t++, (t = Math.min(s.visible.max, Math.max(s.visible.min, t))), a.removeClass(r).addClass(i.columns + "-" + t); 993 }, 994 c = function () { 995 a.removeClass(r); 996 }, 997 h = function (t) { 998 this.$pnls 999 .children("." + i.panel) 1000 .removeClass(r) 1001 .filter("." + i.subopened) 1002 .add(t) 1003 .slice(-s.visible.max) 1004 .each(function (t) { 1005 e(this).addClass(i.columns + "-" + t); 1006 }); 1007 }; 1008 this.bind("initMenu:after", function () { 1009 this.$menu.addClass(i.columns); 1010 }), 1011 this.bind("initPanels:after", function (e) { 1012 h.call(this, this.$pnls.children("." + i.opened)); 1013 }), 1014 this.bind("open:start", d), 1015 this.bind("openPanel:start", d), 1016 this.bind("openPanel:start", h), 1017 this.bind("close:finish", c), 1018 this.opts.offCanvas || openMenu.call(this); 1019 } 1020 }, 1021 add: function () { 1022 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("columns"); 1023 }, 1024 clickAnchor: function (t, s) { 1025 if (!this.opts[n].add) return !1; 1026 if (s) { 1027 var a = t.attr("href"); 1028 if (a.length > 1 && "#" == a.slice(0, 1)) 1029 try { 1030 var o = e(a, this.$menu); 1031 if (o.is("." + i.panel)) 1032 for ( 1033 var r = 1034 parseInt( 1035 t 1036 .closest("." + i.panel) 1037 .attr("class") 1038 .split(i.columns + "-")[1] 1039 .split(" ")[0], 1040 10 1041 ) + 1; 1042 r !== !1; 1043 1044 ) { 1045 var l = this.$pnls.children("." + i.columns + "-" + r); 1046 if (!l.length) { 1047 r = !1; 1048 break; 1049 } 1050 r++, l.removeClass(i.subopened).removeClass(i.opened).removeClass(i.highest).addClass(i.hidden); 1051 } 1052 } catch (d) {} 1053 } 1054 }, 1055 }), 1056 (e[t].defaults[n] = { add: !1, visible: { min: 1, max: 3 } }); 1057 var i, s, a, o; 1058 })(jQuery) 1059 /* 1060 * jQuery mmenu counters add-on 1061 * mmenu.frebsite.nl 1062 * 1063 * Copyright (c) Fred Heusschen 1064 */, 1065 (function (e) { 1066 var t = "mmenu", 1067 n = "counters"; 1068 (e[t].addons[n] = { 1069 setup: function () { 1070 var a = this, 1071 r = this.opts[n]; 1072 this.conf[n]; 1073 if ( 1074 ((o = e[t].glbl), 1075 "boolean" == typeof r && (r = { add: r, update: r }), 1076 "object" != typeof r && (r = {}), 1077 (r = this.opts[n] = e.extend(!0, {}, e[t].defaults[n], r)), 1078 this.bind("initListview:after", function (t) { 1079 this.__refactorClass(e("em", t), this.conf.classNames[n].counter, "counter"); 1080 }), 1081 r.add && 1082 this.bind("initListview:after", function (t) { 1083 var n; 1084 switch (r.addTo) { 1085 case "panels": 1086 n = t; 1087 break; 1088 default: 1089 n = t.filter(r.addTo); 1090 } 1091 n.each(function () { 1092 var t = e(this).data(s.parent); 1093 t && (t.children("em." + i.counter).length || t.prepend(e('<em class="' + i.counter + '" />'))); 1094 }); 1095 }), 1096 r.update) 1097 ) { 1098 var l = function (t) { 1099 (t = t || this.$pnls.children("." + i.panel)), 1100 t.each(function () { 1101 var t = e(this), 1102 n = t.data(s.parent); 1103 if (n) { 1104 var o = n.children("em." + i.counter); 1105 o.length && ((t = t.children("." + i.listview)), t.length && o.html(a.__filterListItems(t.children()).length)); 1106 } 1107 }); 1108 }; 1109 this.bind("initListview:after", l), this.bind("updateListview", l); 1110 } 1111 }, 1112 add: function () { 1113 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("counter search noresultsmsg"); 1114 }, 1115 clickAnchor: function (e, t) {}, 1116 }), 1117 (e[t].defaults[n] = { add: !1, addTo: "panels", count: !1 }), 1118 (e[t].configuration.classNames[n] = { counter: "Counter" }); 1119 var i, s, a, o; 1120 })(jQuery) 1121 /* 1122 * jQuery mmenu dividers add-on 1123 * mmenu.frebsite.nl 1124 * 1125 * Copyright (c) Fred Heusschen 1126 */, 1127 (function (e) { 1128 var t = "mmenu", 1129 n = "dividers"; 1130 (e[t].addons[n] = { 1131 setup: function () { 1132 var s = this, 1133 r = this.opts[n]; 1134 this.conf[n]; 1135 if ( 1136 ((o = e[t].glbl), 1137 "boolean" == typeof r && (r = { add: r, fixed: r }), 1138 "object" != typeof r && (r = {}), 1139 (r = this.opts[n] = e.extend(!0, {}, e[t].defaults[n], r)), 1140 this.bind("initListview:after", function (e) { 1141 this.__refactorClass(e.find("li"), this.conf.classNames[n].collapsed, "collapsed"); 1142 }), 1143 r.add && 1144 this.bind("initListview:after", function (t) { 1145 var n; 1146 switch (r.addTo) { 1147 case "panels": 1148 n = t; 1149 break; 1150 default: 1151 n = t.filter(r.addTo); 1152 } 1153 n.length && 1154 n 1155 .find("." + i.listview) 1156 .find("." + i.divider) 1157 .remove() 1158 .end() 1159 .each(function () { 1160 var t = ""; 1161 s.__filterListItems(e(this).children()).each(function () { 1162 var n = e.trim(e(this).children("a, span").text()).slice(0, 1).toLowerCase(); 1163 n != t && n.length && ((t = n), e('<li class="' + i.divider + '">' + n + "</li>").insertBefore(this)); 1164 }); 1165 }); 1166 }), 1167 r.collapse && 1168 this.bind("initListview:after", function (t) { 1169 t.find("." + i.divider).each(function () { 1170 var t = e(this), 1171 n = t.nextUntil("." + i.divider, "." + i.collapsed); 1172 n.length && (t.children("." + i.next).length || (t.wrapInner("<span />"), t.prepend('<a href="#" class="' + i.next + " " + i.fullsubopen + '" />'))); 1173 }); 1174 }), 1175 r.fixed) 1176 ) { 1177 this.bind("initPanels:after", function () { 1178 "undefined" == typeof this.$fixeddivider && 1179 (this.$fixeddivider = e('<ul class="' + i.listview + " " + i.fixeddivider + '"><li class="' + i.divider + '"></li></ul>') 1180 .prependTo(this.$pnls) 1181 .children()); 1182 }); 1183 var l = function (t) { 1184 if (((t = t || this.$pnls.children("." + i.opened)), !t.is(":hidden"))) { 1185
1185 var n = t 1186 .children("." + i.listview) 1187 .children("." + i.divider) 1188 .not("." + i.hidden), 1189 s = t.scrollTop() || 0, 1190 a = ""; 1191 n.each(function () { 1192 e(this).position().top + s < s + 1 && (a = e(this).text()); 1193 }), 1194 this.$fixeddivider.text(a), 1195 this.$pnls[a.length ? "addClass" : "removeClass"](i.hasdividers); 1196 } 1197 }; 1198 this.bind("open:start", l), 1199 this.bind("openPanel:start", l), 1200 this.bind("updateListview", l), 1201 this.bind("initPanel:after", function (e) { 1202 e.off(a.scroll + "-" + n + " " + a.touchmove + "-" + n).on(a.scroll + "-" + n + " " + a.touchmove + "-" + n, function (t) { 1203 l.call(s, e); 1204 }); 1205 }); 1206 } 1207 }, 1208 add: function () { 1209 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("collapsed uncollapsed fixeddivider hasdividers"), a.add("scroll"); 1210 }, 1211 clickAnchor: function (e, t) { 1212 if (this.opts[n].collapse && t) { 1213 var s = e.parent(); 1214 if (s.is("." + i.divider)) { 1215 var a = s.nextUntil("." + i.divider, "." + i.collapsed); 1216 return s.toggleClass(i.opened), a[s.hasClass(i.opened) ? "addClass" : "removeClass"](i.uncollapsed), !0; 1217 } 1218 } 1219 return !1; 1220 }, 1221 }), 1222 (e[t].defaults[n] = { add: !1, addTo: "panels", fixed: !1, collapse: !1 }), 1223 (e[t].configuration.classNames[n] = { collapsed: "Collapsed" }); 1224 var i, s, a, o; 1225 })(jQuery) 1226 /* 1227 * jQuery mmenu drag add-on 1228 * mmenu.frebsite.nl 1229 * 1230 * Copyright (c) Fred Heusschen 1231 */, 1232 (function (e) { 1233 function t(e, t, n) { 1234 return e < t && (e = t), e > n && (e = n), e; 1235 } 1236 function n(n, i, s) { 1237 var r, 1238 l, 1239 d, 1240 c, 1241 h, 1242 f = this, 1243 u = {}, 1244 p = 0, 1245 v = !1, 1246 m = !1, 1247 b = 0, 1248 g = 0; 1249 switch (this.opts.offCanvas.position) { 1250 case "left": 1251 case "right": 1252 (u.events = "panleft panright"), (u.typeLower = "x"), (u.typeUpper = "X"), (m = "width"); 1253 break; 1254 case "top": 1255 case "bottom": 1256 (u.events = "panup pandown"), (u.typeLower = "y"), (u.typeUpper = "Y"), (m = "height"); 1257 } 1258 switch (this.opts.offCanvas.position) { 1259 case "right": 1260 case "bottom": 1261 (u.negative = !0), 1262 (c = function (e) { 1263 e >= s.$wndw[m]() - n.maxStartPos && (p = 1); 1264 }); 1265 break; 1266 default: 1267 (u.negative = !1), 1268 (c = function (e) { 1269 e <= n.maxStartPos && (p = 1); 1270 }); 1271 } 1272 switch (this.opts.offCanvas.position) { 1273 case "left": 1274 (u.open_dir = "right"), (u.close_dir = "left"); 1275 break; 1276 case "right": 1277 (u.open_dir = "left"), (u.close_dir = "right"); 1278 break; 1279 case "top": 1280 (u.open_dir = "down"), (u.close_dir = "up"); 1281 break; 1282 case "bottom": 1283 (u.open_dir = "up"), (u.close_dir = "down"); 1284 } 1285 switch (this.opts.offCanvas.zposition) { 1286 case "front": 1287 h = function () { 1288 return this.$menu; 1289 }; 1290 break; 1291 default: 1292 h = function () { 1293 return e("." + o.slideout); 1294 }; 1295 } 1296 var _ = this.__valueOrFn(n.node, this.$menu, s.$page); 1297 "string" == typeof _ && (_ = e(_)); 1298 var C = new Hammer(_[0], this.opts[a].vendors.hammer); 1299 C.on("panstart", function (e) { 1300 c(e.center[u.typeLower]), (s.$slideOutNodes = h()), (v = u.open_dir); 1301 }) 1302 .on(u.events + " panend", function (e) { 1303 p > 0 && e.preventDefault(); 1304 }) 1305 .on(u.events, function (e) { 1306 if (((r = e["delta" + u.typeUpper]), u.negative && (r = -r), r != b && (v = r >= b ? u.open_dir : u.close_dir), (b = r), b > n.threshold && 1 == p)) { 1307 if (s.$html.hasClass(o.opened)) return; 1308 (p = 2), f._openSetup(), f.trigger("open:start"), s.$html.addClass(o.dragging), (g = t(s.$wndw[m]() * i[m].perc, i[m].min, i[m].max)); 1309 } 1310 2 == p && 1311 ((l = t(b, 10, g) - ("front" == f.opts.offCanvas.zposition ? g : 0)), 1312 u.negative && (l = -l), 1313 (d = "translate" + u.typeUpper + "(" + l + "px )"), 1314 s.$slideOutNodes.css({ "-webkit-transform": "-webkit-" + d, transform: d })); 1315 }) 1316 .on("panend", function (e) { 1317 2 == p && (s.$html.removeClass(o.dragging), s.$slideOutNodes.css("transform", ""), f[v == u.open_dir ? "_openFinish" : "close"]()), (p = 0); 1318 }); 1319 } 1320 function i(e, t, n, i) { 1321 var s = this, 1322 l = e.data(r.parent); 1323 if (l) { 1324 l = l.closest("." + o.panel); 1325 var d = new Hammer(e[0], s.opts[a].vendors.hammer), 1326 c = null; 1327 d.on("panright", function (e) { 1328 c ||
1329 (s.openPanel(l), 1330 (c = setTimeout(function () { 1331 clearTimeout(c), (c = null); 1332 }, s.conf.openingInterval + s.conf.transitionDuration))); 1333 }); 1334 } 1335 } 1336 var s = "mmenu", 1337 a = "drag"; 1338 (e[s].addons[a] = { 1339 setup: function () { 1340 if (this.opts.offCanvas) { 1341 var t = this.opts[a], 1342 o = this.conf[a]; 1343 (d = e[s].glbl), 1344 "boolean" == typeof t && (t = { menu: t, panels: t }), 1345 "object" != typeof t && (t = {}), 1346 "boolean" == typeof t.menu && (t.menu = { open: t.menu }), 1347 "object" != typeof t.menu && (t.menu = {}), 1348 "boolean" == typeof t.panels && (t.panels = { close: t.panels }), 1349 "object" != typeof t.panels && (t.panels = {}), 1350 (t = this.opts[a] = e.extend(!0, {}, e[s].defaults[a], t)), 1351 t.menu.open && 1352 this.bind("setPage:after", function () { 1353 n.call(this, t.menu, o.menu, d); 1354 }), 1355 t.panels.close && 1356 this.bind("initPanel:after", function (e) { 1357 i.call(this, e, t.panels, o.panels, d); 1358 }); 1359 } 1360 }, 1361 add: function () { 1362 return "function" != typeof Hammer || Hammer.VERSION < 2 ? ((e[s].addons[a].add = function () {}), void (e[s].addons[a].setup = function () {})) : ((o = e[s]._c), (r = e[s]._d), (l = e[s]._e), void o.add("dragging")); 1363 }, 1364 clickAnchor: function (e, t) {}, 1365 }), 1366 (e[s].defaults[a] = { menu: { open: !1, maxStartPos: 100, threshold: 50 }, panels: { close: !1 }, vendors: { hammer: {} } }), 1367 (e[s].configuration[a] = { menu: { width: { perc: 0.8, min: 140, max: 440 }, height: { perc: 0.8, min: 140, max: 880 } }, panels: {} }); 1368 var o, r, l, d; 1369 })(jQuery) 1370 /* 1371 * jQuery mmenu dropdown add-on 1372 * mmenu.frebsite.nl 1373 * 1374 * Copyright (c) Fred Heusschen 1375 */, 1376 (function (e) { 1377 var t = "mmenu", 1378 n = "dropdown"; 1379 (e[t].addons[n] = { 1380 setup: function () { 1381 if (this.opts.offCanvas) { 1382 var r = this, 1383 l = this.opts[n], 1384 d = this.conf[n]; 1385 if ( 1386 ((o = e[t].glbl), 1387 "boolean" == typeof l && l && (l = { drop: l }), 1388 "object" != typeof l && (l = {}), 1389 "string" == typeof l.position && (l.position = { of: l.position }), 1390 (l = this.opts[n] = e.extend(!0, {}, e[t].defaults[n], l)), 1391 l.drop) 1392 ) { 1393 var c; 1394 this.bind("initMenu:after", function () { 1395 if ((this.$menu.addClass(i.dropdown), l.tip && this.$menu.addClass(i.tip), "string" != typeof l.position.of)) { 1396 var t = this._getOriginalMenuId(); 1397 t && t.length && (l.position.of = '[href="#' + t + '"]'); 1398 } 1399 "string" == typeof l.position.of && 1400 ((c = e(l.position.of)), 1401 (l.event = l.event.split(" ")), 1402 1 == l.event.length && (l.event[1] = l.event[0]), 1403 "hover" == l.event[0] && 1404 c.on(a.mouseenter + "-" + n, function () { 1405 r.open(); 1406 }), 1407 "hover" == l.event[1] && 1408 this.$menu.on(a.mouseleave + "-" + n, function () { 1409 r.close(); 1410 })); 1411 }), 1412 this.bind("open:start", function () { 1413 this.$menu.data(s.style, this.$menu.attr("style") || ""), o.$html.addClass(i.dropdown); 1414 }), 1415 this.bind("close:finish", function () { 1416 this.$menu.attr("style", this.$menu.data(s.style)), o.$html.removeClass(i.dropdown); 1417 }); 1418 var h = function (e, t) { 1419 var n = t[0], 1420 s = t[1], 1421 a = "x" == e ? "scrollLeft" : "scrollTop", 1422 r = "x" == e ? "outerWidth" : "outerHeight", 1423 h = "x" == e ? "left" : "top", 1424 f = "x" == e ? "right" : "bottom", 1425 u = "x" == e ? "width" : "height", 1426 p = "x" == e ? "maxWidth" : "maxHeight", 1427 v = null, 1428 m = o.$wndw[a](), 1429 b = (c.offset()[h] -= m), 1430 g = b + c[r](), 1431 _ = o.$wndw[u](), 1432 C = d.offset.button[e] + d.offset.viewport[e]; 1433 if (l.position[e]) 1434 switch (l.position[e]) {
1435 case "left": 1436 case "bottom": 1437 v = "after"; 1438 break; 1439 case "right": 1440 case "top": 1441 v = "before"; 1442 } 1443 null === v && (v = b + (g - b) / 2 < _ / 2 ? "after" : "before"); 1444 var y, w; 1445 return ( 1446 "after" == v 1447 ? ((y = "x" == e ? b : g), (w = _ - (y + C)), (n[h] = y + d.offset.button[e]), (n[f] = "auto"), s.push(i["x" == e ? "tipleft" : "tiptop"])) 1448 : ((y = "x" == e ? g : b), (w = y - C), (n[f] = "calc( 100% - " + (y - d.offset.button[e]) + "px )"), (n[h] = "auto"), s.push(i["x" == e ? "tipright" : "tipbottom"])), 1449 (n[p] = Math.min(d[u].max, w)), 1450 [n, s] 1451 ); 1452 }, 1453 f = function (e) { 1454 if (this.vars.opened) { 1455 this.$menu.attr("style", this.$menu.data(s.style)); 1456 var t = [{}, []]; 1457 (t = h.call(this, "y", t)), 1458 (t = h.call(this, "x", t)), 1459 this.$menu.css(t[0]), 1460 l.tip && this.$menu.removeClass(i.tipleft + " " + i.tipright + " " + i.tiptop + " " + i.tipbottom).addClass(t[1].join(" ")); 1461 } 1462 }; 1463 this.bind("open:start", f), 1464 o.$wndw.on(a.resize + "-" + n, function (e) { 1465 f.call(r); 1466 }), 1467 this.opts.offCanvas.blockUI || 1468 o.$wndw.on(a.scroll + "-" + n, function (e) { 1469 f.call(r); 1470 }); 1471 } 1472 } 1473 }, 1474 add: function () { 1475 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("dropdown tip tipleft tipright tiptop tipbottom"), a.add("mouseenter mouseleave resize scroll"); 1476 }, 1477 clickAnchor: function (e, t) {}, 1478 }), 1479 (e[t].defaults[n] = { drop: !1, event: "click", position: {}, tip: !0 }), 1480 (e[t].configuration[n] = { offset: { button: { x: -10, y: 10 }, viewport: { x: 20, y: 20 } }, height: { max: 880 }, width: { max: 440 } }); 1481 var i, s, a, o; 1482 })(jQuery) 1483 /* 1484 * jQuery mmenu fixedElements add-on 1485 * mmenu.frebsite.nl 1486 * 1487 * Copyright (c) Fred Heusschen 1488 */, 1489 (function (e) { 1490 var t = "mmenu", 1491 n = "fixedElements"; 1492 (e[t].addons[n] = { 1493 setup: function () { 1494 if (this.opts.offCanvas) { 1495 var i = this.opts[n], 1496 s = this.conf[n]; 1497 (o = e[t].glbl), (i = this.opts[n] = e.extend(!0, {}, e[t].defaults[n], i)); 1498 var a = function (e) { 1499 var t = this.conf.classNames[n].fixed; 1500 this.__refactorClass(e.find("." + t), t, "slideout")[s.elemInsertMethod](s.elemInsertSelector); 1501 }; 1502 this.bind("setPage:after", a); 1503 } 1504 }, 1505 add: function () { 1506 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("fixed"); 1507 }, 1508 clickAnchor: function (e, t) {}, 1509 }), 1510 (e[t].configuration[n] = { elemInsertMethod: "appendTo", elemInsertSelector: "body" }), 1511 (e[t].configuration.classNames[n] = { fixed: "Fixed" }); 1512 var i, s, a, o; 1513 })(jQuery) 1514 /* 1515 * jQuery mmenu iconPanels add-on 1516 * mmenu.frebsite.nl 1517 * 1518 * Copyright (c) Fred Heusschen 1519 */, 1520 (function (e) { 1521 var t = "mmenu", 1522 n = "iconPanels"; 1523 (e[t].addons[n] = { 1524 setup: function () { 1525 var s = this, 1526 a = this.opts[n]; 1527 this.conf[n]; 1528 if ( 1529 ((o = e[t].glbl), 1530 "boolean" == typeof a && (a = { add: a }), 1531 "number" == typeof a && (a = { add: !0, visible: a }), 1532 "object" != typeof a && (a = {}), 1533 (a = this.opts[n] = e.extend(!0, {}, e[t].defaults[n], a)), 1534 a.visible++, 1535 a.add) 1536 ) { 1537 for (var r = [], l = 0; l <= a.visible;
1537 l++) r.push(i.iconpanel + "-" + l); 1538 r = r.join(" "); 1539 var d = function (t) { 1540 t.hasClass(i.vertical) || 1541 s.$pnls 1542 .children("." + i.panel) 1543 .removeClass(r) 1544 .filter("." + i.subopened) 1545 .removeClass(i.hidden) 1546 .add(t) 1547 .not("." + i.vertical) 1548 .slice(-a.visible) 1549 .each(function (t) { 1550 e(this).addClass(i.iconpanel + "-" + t); 1551 }); 1552 }; 1553 this.bind("initMenu:after", function () { 1554 this.$menu.addClass(i.iconpanel); 1555 }), 1556 this.bind("openPanel:start", d), 1557 this.bind("initPanels:after", function (e) { 1558 d.call(s, s.$pnls.children("." + i.opened)); 1559 }), 1560 this.bind("initListview:after", function (e) { 1561 e.hasClass(i.vertical) || e.children("." + i.subblocker).length || e.prepend('<a href="#' + e.closest("." + i.panel).attr("id") + '" class="' + i.subblocker + '" />'); 1562 }); 1563 } 1564 }, 1565 add: function () { 1566 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("iconpanel subblocker"); 1567 }, 1568 clickAnchor: function (e, t) {}, 1569 }), 1570 (e[t].defaults[n] = { add: !1, visible: 3 }); 1571 var i, s, a, o; 1572 })(jQuery) 1573 /* 1574 * jQuery mmenu keyboardNavigation add-on 1575 * mmenu.frebsite.nl 1576 * 1577 * Copyright (c) Fred Heusschen 1578 */, 1579 (function (e) { 1580 function t(t, n) { 1581 t = t || this.$pnls.children("." + a.opened); 1582 var i = e(), 1583 s = this.$menu.children("." + a.mm("navbars-top") + ", ." + a.mm("navbars-bottom")).children("." + a.navbar); 1584 s.find(d).filter(":focus").length || 1585 ("default" == n && 1586 ((i = t 1587 .children("." + a.listview) 1588 .find("a[href]") 1589 .not("." + a.hidden)), 1590 i.length || (i = t.find(d).not("." + a.hidden)), 1591 i.length || (i = s.find(d).not("." + a.hidden))), 1592 i.length || (i = this.$menu.children("." + a.tabstart)), 1593 i.first().focus()); 1594 } 1595 function n(e) { 1596 e || (e = this.$pnls.children("." + a.opened)); 1597 var t = this.$pnls.children("." + a.panel), 1598 n = t.not(e); 1599 n.find(d).attr("tabindex", -1), 1600 e.find(d).attr("tabindex", 0), 1601 e.find("." + a.mm("toggle") + ", ." + a.mm("check")).attr("tabindex", -1), 1602 e 1603 .children("." + a.navbar) 1604 .children("." + a.title) 1605 .attr("tabindex", -1); 1606 } 1607 var i = "mmenu", 1608 s = "keyboardNavigation"; 1609 (e[i].addons[s] = { 1610 setup: function () { 1611 var o = this.opts[s]; 1612 this.conf[s]; 1613 if (((l = e[i].glbl), ("boolean" != typeof o && "string" != typeof o) || (o = { enable: o }), "object" != typeof o && (o = {}), (o = this.opts[s] = e.extend(!0, {}, e[i].defaults[s], o)), o.enable)) { 1614 var r = e('<button class="' + a.tabstart + '" tabindex="0" type="button" />'), 1615 d = e('<button class="' + a.tabend + '" tabindex="0" type="button" />'); 1616 this.bind("initMenu:after", function () { 1617 o.enhance && this.$menu.addClass(a.keyboardfocus), this["_initWindow_" + s](o.enhance); 1618 }), 1619 this.bind("initOpened:before", function () { 1620 this.$menu 1621 .prepend(r) 1622 .append(d) 1623 .children("." + a.mm("navbars-top") + ", ." + a.mm("navbars-bottom")) 1624 .children("." + a.navbar) 1625 .children("a." + a.title) 1626 .attr("tabindex", -1); 1627 }), 1628 this.bind("open:start", function () { 1629 n.call(this); 1630 }), 1631 this.bind("open:finish", function () { 1632 t.call(this, null, o.enable); 1633 }), 1634 this.bind("openPanel:start", function (e) { 1635 n.call(this, e); 1636 }), 1637 this.bind("openPanel:finish", function (e) { 1638 t.call(this, e, o.enable); 1639 }), 1640 this.bind("initOpened:after", function () { 1641 this.__sr_aria(this.$menu.children("." + a.mm("tabstart") + ", ." + a.mm("tabend")), "hidden", !0); 1642 }); 1643 } 1644 }, 1645 add: function () { 1646 (a = e[i]._c), (o = e[i]._d), (r = e[i]._e), a.add("tabstart tabend keyboardfocus"), r.add("focusin keydown"); 1647 }, 1648 clickAnchor: function (e, t) {}, 1649 }), 1650 (e[i].defaults[s] = { enable: !1, enhance: !1 }), 1651 (e[i].configuration[s] = {}), 1652 (e[i].prototype["_initWindow_" + s] = function (t) { 1653 l.$wndw.off(r.keydown + "-offCanvas"), 1654 l.$wndw.off(r.focusin + "-" + s).on(r.focusin + "-" + s, function (t) { 1655 if (l.$html.hasClass(a.opened)) { 1656 var n = e(t.target); 1657 n.is("." + a.tabend) && 1658 n 1659 .parent() 1660 .find("." + a.tabstart) 1661 .focus(); 1662 } 1663 }), 1664 l.$wndw.off(r.keydown + "-" + s).on(r.keydown + "-" + s, function (t) { 1665 var n = e(t.target), 1666 i = n.closest("." + a.menu); 1667 if (i.length) { 1668 i.data("mmenu"); 1669 if (n.is("input, textarea")); 1670 else 1671 switch (t.keyCode) { 1672 case 13: 1673 (n.is(".mm-toggle") || n.is(".mm-check")) && n.trigger(r.click); 1674 break; 1675 case 32: 1676 case 37: 1677 case 38: 1678 case 39: 1679 case 40: 1680 t.preventDefault(); 1681 } 1682 } 1683 }), 1684 t && 1685 l.$wndw.off(r.keydown + "-" + s).on(r.keydown + "-" + s, function (t) { 1686 var n = e(t.target), 1687 i = n.closest("." + a.menu); 1688 if (i.length) { 1689 var s = i.data("mmenu"); 1690 if (n.is("input, textarea")) 1691 switch (t.keyCode) { 1692 case 27: 1693 n.val(""); 1694 } 1695 else 1696 switch (t.keyCode) { 1697 case 8: 1698 var r = n.closest("." + a.panel).data(o.parent); 1699 r && r.length && s.openPanel
1699(r.closest("." + a.panel)); 1700 break; 1701 case 27: 1702 i.hasClass(a.offcanvas) && s.close(); 1703 } 1704 } 1705 }); 1706 }); 1707 var a, 1708 o, 1709 r, 1710 l, 1711 d = "input, select, textarea, button, label, a[href]"; 1712 })(jQuery) 1713 /* 1714 * jQuery mmenu lazySubmenus add-on 1715 * mmenu.frebsite.nl 1716 * 1717 * Copyright (c) Fred Heusschen 1718 */, 1719 (function (e) { 1720 var t = "mmenu", 1721 n = "lazySubmenus"; 1722 (e[t].addons[n] = { 1723 setup: function () { 1724 var s = this.opts[n]; 1725 this.conf[n]; 1726 (o = e[t].glbl), 1727 "boolean" == typeof s && (s = { load: s }), 1728 "object" != typeof s && (s = {}), 1729 (s = this.opts[n] = e.extend(!0, {}, e[t].defaults[n], s)), 1730 s.load && 1731 (this.bind("initMenu:after", function () { 1732 this.$pnls 1733 .find("li") 1734 .children(this.conf.panelNodetype) 1735 .not("." + i.inset) 1736 .not("." + i.nolistview) 1737 .not("." + i.nopanel) 1738 .addClass(i.lazysubmenu + " " + i.nolistview + " " + i.nopanel); 1739 }), 1740 this.bind("initPanels:before", function (e) { 1741 (e = e || this.$pnls.children(this.conf.panelNodetype)), 1742 this.__findAddBack(e, "." + i.lazysubmenu) 1743 .not("." + i.lazysubmenu + " ." + i.lazysubmenu) 1744 .removeClass(i.lazysubmenu + " " + i.nolistview + " " + i.nopanel); 1745 }), 1746 this.bind("initOpened:before", function () { 1747 var e = this.$pnls.find("." + this.conf.classNames.selected).closest("." + i.lazysubmenu); 1748 e.length && this.initPanels(e); 1749 }), 1750 this.bind("openPanel:before", function (e) { 1751 ($panels = this.__findAddBack(e, "." + i.lazysubmenu).not("." + i.lazysubmenu + " ." + i.lazysubmenu)), $panels.length && this.initPanels($panels); 1752 })); 1753 }, 1754 add: function () { 1755 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("lazysubmenu"), s.add("lazysubmenu"); 1756 }, 1757 clickAnchor: function (e, t) {}, 1758 }), 1759 (e[t].defaults[n] = { load: !1 }), 1760 (e[t].configuration[n] = {}); 1761 var i, s, a, o; 1762 })(jQuery) 1763 /* 1764 * jQuery mmenu navbar add-on 1765 * mmenu.frebsite.nl 1766 * 1767 * Copyright (c) Fred Heusschen 1768 */, 1769 (function (e) { 1770 var t = "mmenu", 1771 n = "navbars"; 1772 (e[t].addons[n] = { 1773 setup: function () { 1774 var s = this, 1775 a = this.opts[n], 1776 r = this.conf[n]; 1777 if (((o = e[t].glbl), "undefined" != typeof a)) { 1778 a instanceof Array || (a = [a]); 1779 var l = {}, 1780 d = {}; 1781 a.length && 1782 (e.each(a, function (o) { 1783 var c = a[o]; 1784 "boolean" == typeof c && c && (c = {}), 1785 "object" != typeof c && (c = {}), 1786 "undefined" == typeof c.content && (c.content = ["prev", "title"]), 1787 c.content instanceof Array || (c.content = [c.content]), 1788 (c = e.extend(!0, {}, s.opts.navbar, c)); 1789 var h = e('<div class="' + i.navbar + '" />'), 1790 f = c.height; 1791 "number" != typeof f && (f = 1), (f = Math.min(4, Math.max(1, f))), h.addClass(i.navbar + "-size-" + f); 1792 var u = c.position; 1793 "bottom" != u && (u = "top"), l[u] || (l[u] = 0), (l[u] += f), d[u] || (d[u] = e('<div class="' + i.navbars + "-" + u + '" />')), d[u].append(h); 1794 for (var p = 0, v = 0, m = c.content.length; v < m; v++) { 1795 var b = e[t].addons[n][c.content[v]] || !1; 1796 b ? (p += b.call(s, h, c, r)) : ((b = c.content[v]), b instanceof e || (b = e(c.content[v])), h.append(b)); 1797 } 1798 (p += Math.ceil(h.children().not("." + i.btn).length / f)), p > 1 && h.addClass(i.navbar + "-content-" + p), h.children("." + i.btn).length && h.addClass(i.hasbtns); 1799 }), 1800 this.bind("initMenu:after", function () { 1801 for (var e in l) this.$menu.addClass(i.hasnavbar + "-" + e + "-" + l[e]), this.$menu["bottom" == e ? "append" : "prepend"](d[e]); 1802 })); 1803 } 1804 }, 1805 add: function () { 1806 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("navbars close hasbtns"); 1807 }, 1808 clickAnchor: function (e, t) {}, 1809 }), 1810 (e[t].configuration[n] = { breadcrumbSeparator: "/" }), 1811 (e[t].configuration.classNames[n] = {}); 1812 var i, s, a, o; 1813 })(jQuery) 1814 /* 1815 * jQuery mmenu navbar add-on breadcrumbs content 1816 * mmenu.frebsite.nl 1817 * 1818 * Copyright (c) Fred Heusschen 1819 */, 1820 (function (e) { 1821 var t = "mmenu", 1822 n = "navbars", 1823 i = "breadcrumbs"; 1824 e[t].addons[n][i] = function (n, i, s) { 1825 var a = this, 1826 o = e[t]._c, 1827 r = e[t]._d; 1828 o.add("breadcrumbs separator"); 1829 var l = e('<span class="' + o.breadcrumbs + '" />').appendTo(n); 1830 return ( 1831 this.bind("initNavbar:after", function (t) { 1832 t.removeClass(o.hasnavbar); 1833 for (var n = [], i = e('<span class="' + o.breadcrumbs + '"></span>'), a = t, l = !0; a && a.length; ) { 1834 if ((a.is("." + o.panel) || (a = a.closest("." + o.panel)), !a.hasClass(o.vertical))) { 1835 var d = a 1836 .children("." + o.navbar) 1837 .children("." + o.title) 1838 .text(); 1839 n.unshift(l ? "<span>" + d + "</span>" : '<a href="#' + a.attr("id") + '">' + d + "</a>"), (l = !1); 1840 } 1841 a = a.data(r.parent); 1842 } 1843 i.append(n.join('<span class="' + o.separator + '">' + s.breadcrumbSeparator + "</span>")).appendTo(t.children("." + o.navbar)); 1844 }), 1845 this.bind("openPanel:start", function (e) { 1846 l.html( 1847 e 1848 .children("." + o.navbar) 1849 .children("." + o.breadcrumbs) 1850 .html() || "" 1851 ); 1852 }), 1853 this.bind("initNavbar:after:sr-aria", function (t) { 1854 t.children("." + o.navbar) 1855 .children("." + o.breadcrumbs) 1856 .children("a") 1857 .each(function () { 1858 a.__sr_aria(e(this), "owns", e(this).attr("href").slice(1)); 1859 }); 1860 }), 1861 0 1862 ); 1863 }; 1864 })(jQuery) 1865 /* 1866 * jQuery mmenu navbar add-on close content 1867 * mmenu.frebsite.nl 1868 * 1869 * Copyright (c) Fred Heusschen 1870 */, 1871 (function (e) { 1872 var t = "mmenu", 1873 n = "navbars", 1874 i = "close"; 1875 e[t].addons[n][i] = function (n, i) { 1876 var s = e[t]._c, 1877 a = (e[t].glbl, e('<a class="' + s.close + " " + s.btn + '" href="#" />').appendTo(n)); 1878 return ( 1879 this.bind("setPage:after", function (e) { 1880 a.attr("href", "#" + e.attr("id")); 1881 }), 1882 this.bind("setPage:after:sr-text", function (n) { 1883 a.html(this.__sr_text(e[t].i18n(this.conf.screenReader.text.closeMenu))), this.__sr_aria(a, "owns", a.attr("href").slice(1)); 1884 }), 1885 -1 1886 ); 1887 }; 1888 })(jQuery) 1889 /* 1890 * jQuery mmenu navbar add-on next content 1891 * mmenu.frebsite.nl 1892 * 1893 * Copyright (c) Fred Heusschen 1894 */, 1895 (function (e) { 1896 var t = "mmenu", 1897 n = "navbars", 1898 i = "next"; 1899 (e[t].addons[n][i] = function (i, s) { 1900 var a, 1901 o, 1902 r, 1903 l = e[t]._c, 1904 d = e('<a class="' + l.next + " " + l.btn + '" href="#" />').appendTo(i); 1905 return ( 1906 this.bind("openPanel:start", function (e) { 1907 (a = e.find("." + this.conf.classNames[n].panelNext)), (o = a.attr("href")), (r = a.html()), d[o ? "attr" : "removeAttr"]("href", o), d[o || r ? "removeClass" : "addClass"](l.hidden), d.html(r); 1908 }), 1909 this.bind("openPanel:start:sr-aria", function (e) { 1910 this.__sr_aria(d, "hidden", d.hasClass(l.hidden)), this.__sr_aria(d, "owns", (d.attr("href") || "").slice(1)); 1911 }), 1912 -1 1913 ); 1914 }), 1915 (e[t].configuration.classNames[n].panelNext = "Next"); 1916 })(jQuery) 1917 /* 1918 * jQuery mmenu navbar add-on prev content 1919 * mmenu.frebsite.nl 1920 * 1921 * Copyright (c) Fred Heusschen 1922 */, 1923 (function (e) { 1924 var t = "mmenu", 1925 n = "navbars", 1926 i = "prev"; 1927 (e[t].addons[n][i] = function (i, s) { 1928 var a = e[t]._c, 1929 o = e('<a class="' + a.prev + " " + a.btn + '" href="#" />').appendTo(i); 1930 this.bind("initNavbar:after", function (e) { 1931 e.removeClass(a.hasnavbar); 1932 }); 1933 var r, l, d; 1934 return ( 1935 this.bind("openPanel:start", function (e) { 1936 e.hasClass(a.vertical) || 1937 ((r = e.find("." + this.conf.classNames[n].panelPrev)), 1938 r.length || (r = e.children("." + a.navbar).children("." + a.prev)), 1939 (l = r.attr("href")), 1940 (d = r.html()), 1941 o[l ? "attr" : "removeAttr"]("href", l), 1942 o[l || d ? "removeClass" : "addClass"](a.hidden), 1943 o.html(d)); 1944 }), 1945 this.bind("initNavbar:after:sr-aria", function (e) { 1946 var t = e.children("." + a.navbar); 1947 this.__sr_aria(t, "hidden", !0); 1948 }), 1949 this.bind("openPanel:start:sr-aria", function (e) { 1950 this.__sr_aria(o, "hidden", o.hasClass(a.hidden)), this.__sr_aria(o, "owns", (o.attr("href") || "").slice(1)); 1951 }), 1952 -1 1953 ); 1954 }), 1955 (e[t].configuration.classNames[n].panelPrev = "Prev"); 1956 })(jQuery) 1957 /* 1958 * jQuery mmenu navbar add-on searchfield content 1959 * mmenu.frebsite.nl 1960 * 1961 * Copyright (c) Fred Heusschen 1962 */, 1963 (function (e) { 1964 var t = "mmenu", 1965 n = "navbars", 1966 i = "searchfield"; 1967 e[t].addons[n][i] = function (n, i) { 1968 var s = e[t]._c, 1969 a = e('<div class="' + s.search + '" />').appendTo(n); 1970 return "object" != typeof this.opts.searchfield && (this.opts.searchfield = {}), (this.opts.searchfield.add = !0), (this.opts.searchfield.addTo = a), 0; 1971 }; 1972 })(jQuery) 1973 /* 1974 * jQuery mmenu navbar add-on title content 1975 * mmenu.frebsite.nl 1976 * 1977 * Copyright (c) Fred Heusschen 1978 */, 1979 (function (e) { 1980 var t = "mmenu", 1981 n = "navbars", 1982 i = "title"; 1983 (e[t].addons[n][i] = function (i, s) { 1984 var a, 1985 o, 1986 r, 1987 l = e[t]._c, 1988 d = e('<a class="' + l.title + '" />').appendTo(i); 1989 this.bind("openPanel:start", function (e) { 1990 e.hasClass(l.vertical) || 1991 ((r = e.find("." + this.conf.classNames[n].panelTitle)), 1992 r.length || (r = e.children("." + l.navbar).children("." + l.title)), 1993 (a = r.attr("href")), 1994 (o = r.html() || s.title), 1995 d[a ? "attr" : "removeAttr"]("href", a), 1996 d[a || o ? "removeClass" : "addClass"](l.hidden), 1997 d.html(o)); 1998 }); 1999 var c; 2000 return ( 2001 this.bind("openPanel:start:sr-aria", function (e) { 2002 if ( 2003 this.opts.screenReader.text && 2004 (c || 2005 (c = this.$menu 2006 .children("." + l.navbars + "-top, ." + l.navbars + "-bottom") 2007 .children("." + l.navbar) 2008 .children("." + l.prev)), 2009 c.length) 2010 ) { 2011 var t = !0; 2012 "parent" == this.opts.navbar.titleLink && (t = !c.hasClass(l.hidden)), this.__sr_aria(d, "hidden", t); 2013 } 2014 }), 2015 0 2016 ); 2017 }), 2018 (e[t].configuration.classNames[n].panelTitle = "Title"); 2019 })(jQuery) 2020 /* 2021 * jQuery mmenu pageScroll add-on 2022 * mmenu.frebsite.nl 2023 * 2024 * Copyright (c) Fred Heusschen 2025 */, 2026 (function (e) { 2027 function t(e) { 2028 d && d.length && d.is(":visible") && l.$html.add(l.$body).animate({ scrollTop: d.offset().top + e }), (d = !1); 2029 } 2030 function n(e) { 2031 try { 2032 return !("#" == e || "#" != e.slice(0, 1) || !l.$page.find(e).length); 2033 } catch (t) { 2034 return !1; 2035 } 2036 } 2037 var i = "mmenu", 2038 s = "pageScroll"; 2039 (e[i].addons[s] = { 2040 setup: function () { 2041 var o = this, 2042 d = this.opts[s], 2043 c = this.conf[s]; 2044 if ( 2045 ((l = e[i].glbl), 2046 "boolean" == typeof d && (d = { scroll: d }), 2047 (d = this.opts[s] = e.extend(!0, {}, e[i].defaults[s], d)), 2048 d.scroll && 2049 this.bind("close:finish", function () { 2050 t(c.scrollOffset); 2051 }), 2052 d.update) 2053 ) { 2054 var o = this, 2055 h = [], 2056 f = []; 2057 o.bind("initListview:after", function (t) { 2058 o.__filterListItemAnchors(t.find("." + a.listview).children("li")).each(function () { 2059 var t = e(this).attr("href"); 2060 n(t) && h.push(t); 2061 }), 2062 (f = h.reverse()); 2063 }); 2064 var u = -1; 2065 l.$wndw.on(r.scroll + "-" + s, function (t) { 2066 for (var n
2066= l.$wndw.scrollTop(), i = 0; i < f.length; i++) 2067 if (e(f[i]).offset().top < n + c.updateOffset) { 2068 u !== i && 2069 ((u = i), 2070 o.setSelected( 2071 o 2072 .__filterListItemAnchors( 2073 o.$pnls 2074 .children("." + a.opened) 2075 .find("." + a.listview) 2076 .children("li") 2077 ) 2078 .filter('[href="' + f[i] + '"]') 2079 .parent() 2080 )); 2081 break; 2082 } 2083 }); 2084 } 2085 }, 2086 add: function () { 2087 (a = e[i]._c), (o = e[i]._d), (r = e[i]._e); 2088 }, 2089 clickAnchor: function (i, o) { 2090 if (((d = !1), o && this.opts[s].scroll && this.opts.offCanvas && l.$page && l.$page.length)) { 2091 var r = i.attr("href"); 2092 n(r) && ((d = e(r)), l.$html.hasClass(a.mm("widescreen")) && t(this.conf[s].scrollOffset)); 2093 } 2094 }, 2095 }), 2096 (e[i].defaults[s] = { scroll: !1, update: !1 }), 2097 (e[i].configuration[s] = { scrollOffset: 0, updateOffset: 50 }); 2098 var a, 2099 o, 2100 r, 2101 l, 2102 d = !1; 2103 })(jQuery) 2104 /* 2105 * jQuery mmenu RTL add-on 2106 * mmenu.frebsite.nl 2107 * 2108 * Copyright (c) Fred Heusschen 2109 */, 2110 (function (e) { 2111 var t = "mmenu", 2112 n = "rtl"; 2113 (e[t].addons[n] = { 2114 setup: function () { 2115 var s = this.opts[n]; 2116 this.conf[n]; 2117 (o = e[t].glbl), 2118 "object" != typeof s && (s = { use: s }), 2119 (s = this.opts[n] = e.extend(!0, {}, e[t].defaults[n], s)), 2120 "boolean" != typeof s.use && (s.use = "rtl" == (o.$html.attr("dir") || "").toLowerCase()), 2121 s.use && 2122 this.bind("initMenu:after", function () { 2123 this.$menu.addClass(i.rtl); 2124 }); 2125 }, 2126 add: function () { 2127 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("rtl"); 2128 }, 2129 clickAnchor: function (e, t) {}, 2130 }), 2131 (e[t].defaults[n] = { use: "detect" }); 2132 var i, s, a, o; 2133 })(jQuery) 2134 /* 2135 * jQuery mmenu searchfield add-on 2136 * mmenu.frebsite.nl 2137 * 2138 * Copyright (c) Fred Heusschen 2139 */, 2140 (function (e) { 2141 function t(e) { 2142 switch (e) { 2143 case 9: 2144 case 16: 2145 case 17: 2146 case 18: 2147 case 37: 2148 case 38: 2149 case 39: 2150 case 40: 2151 return !0; 2152 } 2153 return !1; 2154 } 2155 var n = "mmenu", 2156 i = "searchfield"; 2157 (e[n].addons[i] = { 2158 setup: function () { 2159 var l = this, 2160 d = this.opts[i], 2161 c = this.conf[i]; 2162 (r = e[n].glbl), 2163 "boolean" == typeof d && (d = { add: d }), 2164 "object" != typeof d && (d = {}), 2165 "boolean" == typeof d.resultsPanel && (d.resultsPanel = { add: d.resultsPanel }), 2166 (d = this.opts[i] = e.extend(!0, {}, e[n].defaults[i], d)), 2167 (c = this.conf[i] = e.extend(!0, {}, e[n].configuration[i], c)), 2168 this.bind("close:start", function () { 2169 this.$menu 2170 .find("." + s.search) 2171 .find("input") 2172 .blur(); 2173 }), 2174 this.bind("initPanels:after", function (r) { 2175 if (d.add) { 2176 var h; 2177 switch (d.addTo) { 2178 case "panels": 2179 h = r; 2180 break; 2181 default: 2182 h = this.$menu.find(d.addTo); 2183 } 2184 if ( 2185 (h.each(function () { 2186 var t = e(this); 2187 if (!t.is("." + s.panel) || !t.is("." + s.vertical)) { 2188 if (!t.children("." + s.search).length) { 2189 var i = l.__valueOrFn(c.clear, t), 2190 a = l.__valueOrFn(c.form, t), 2191 r = l.__valueOrFn(c.input, t), 2192 h = l.__valueOrFn(c.submit, t), 2193 f = e("<" + (a ? "form" : "div") + ' class="' + s.search + '" />'), 2194 u = e('<input placeholder="' + e[n].i18n(d.placeholder) + '" type="text" autocomplete="off" />'); 2195 f.append(u); 2196 var p; 2197 if (r) for (p in r) u.attr(p, r[p]); 2198 if ( 2199 (i && 2200 e('<a class="' + s.btn + " " + s.clear + '" href="#" />') 2201 .appendTo(f) 2202 .on(o.click + "-searchfield", function (e) { 2203 e.preventDefault(), u.val("").trigger(o.keyup + "-searchfield"); 2204 }), 2205 a) 2206 ) { 2207 for (p in a) f.attr(p, a[p]); 2208 h && 2209 !i && 2210 e('<a class="' + s.btn + " " + s.next + '" href="#" />') 2211 .appendTo(f) 2212 .on(o.click + "-searchfield", function (e) { 2213 e.preventDefault(), f.submit(); 2214 }); 2215 } 2216 t.hasClass(s.search) ? t.replaceWith(f) : t.prepend(f).addClass(s.hassearch); 2217 } 2218 if (d.noResults) { 2219 var v = t.closest("." + s.panel).length; 2220 if ((v || (t = l.$pnls.children("." + s.panel).first()), !t.children("." + s.noresultsmsg).length)) { 2221 var m = t.children("." + s.listview).first(); 2222 e('<div class="' + s.noresultsmsg + " " + s.hidden + '" />') 2223 .append(e[n].i18n(d.noResults)) 2224 [m.length ? "insertAfter" : "prependTo"](m.length ? m : t); 2225 } 2226 } 2227 } 2228 }), 2229 d.search) 2230 ) { 2231 if (d.resultsPanel.add) { 2232 d.showSubPanels = !1; 2233 var f = this.$pnls.children("." + s.resultspanel); 2234 f.length || 2235 ((f = e('<div class="' + s.panel + " " + s.resultspanel + " " + s.noanimation + " " + s.hidden + '" />') 2236 .appendTo(this.$pnls) 2237 .append('<div class="' + s.navbar + " " + s.hidden + '"><a class="' + s.title + '">' + e[n].i18n(d.resultsPanel.title) + "</a></div>") 2238 .append('<ul class="' + s.listview + '" />') 2239 .append( 2240 this.$pnls 2241 .find("." + s.noresultsmsg) 2242 .first() 2243 .clone() 2244 )), 2245 this.initPanels(f)); 2246 } 2247 this.$menu.find("." + s.search).each(function () { 2248 var n, 2249 r, 2250 c = e(this), 2251 h = c.closest("." + s.panel).length; 2252 h ? ((n = c.closest("." + s.panel)), (r = n)) : ((n = e("." + s.panel, l.$menu)), (r = l.$menu)), d.resultsPanel.add && (n = n.not(f)); 2253 var u = c.children("input"), 2254 p = l.__findAddBack(n, "." + s.listview).children("li"), 2255 v = p.filter("." + s.divider), 2256 m = l.__filterListItems(p), 2257 b = "a", 2258 g = b + ", span", 2259 _ = "", 2260 C = function () { 2261 var t = u.val().toLowerCase(); 2262 if (t != _) { 2263 if ( 2264 ((_ = t), 2265 d.resultsPanel.add && f.children("." + s.listview).empty(), 2266 n.scrollTop(0), 2267 m 2268 .add(v) 2269 .addClass(s.hidden) 2270 .find("." + s.fullsubopensearch) 2271 .removeClass(s.fullsubopen + " " + s.fullsubopensearch), 2272 m.each(function () { 2273 var t = e(this), 2274 n = b; 2275 (d.showTextItems || (d.showSubPanels && t.find("." + s.next))) && (n = g); 2276 var i = t.data(a.searchtext) || t.children(n).text(); 2277 i.toLowerCase().indexOf(_) > -1 && t.add(t.prevAll("." + s.divider).first()).removeClass(s.hidden); 2278 }), 2279 d.showSubPanels && 2280 n.each(function (t) { 2281 var n = e(this); 2282 l.__filterListItems(n.find("." + s.listview).children()).each(function () { 2283 var t = e(this), 2284 n = t.data(a.child); 2285 t.removeClass(s.nosubresults), 2286 n && 2287 n 2288 .find("." + s.listview) 2289 .children() 2290 .removeClass(s.hidden); 2291 }); 2292 }), 2293 d.resultsPanel.add) 2294 ) 2295 if ("" === _) this.closeAllPanels(), this.openPanel
2295(this.$pnls.children("." + s.subopened).last()); 2296 else { 2297 var i = e(); 2298 n.each(function () { 2299 var t = l 2300 .__filterListItems( 2301 e(this) 2302 .find("." + s.listview) 2303 .children() 2304 ) 2305 .not("." + s.hidden) 2306 .clone(!0); 2307 t.length && 2308 (d.resultsPanel.dividers && 2309 (i = i.add( 2310 '<li class="' + 2311 s.divider + 2312 '">' + 2313 e(this) 2314 .children("." + s.navbar) 2315 .children("." + s.title) 2316 .text() + 2317 "</li>" 2318 )), 2319 (i = i.add(t))); 2320 }), 2321 i.find("." + s.next).remove(), 2322 f.children("." + s.listview).append(i), 2323 this.openPanel(f); 2324 } 2325 else 2326 e(n.get().reverse()).each(function (t) { 2327 var n = e(this), 2328 i = n.data(a.parent); 2329 i && 2330 (l.__filterListItems(n.find("." + s.listview).children()).length 2331 ? (i.hasClass(s.hidden) && 2332 i 2333 .children("." + s.next) 2334 .not("." + s.fullsubopen) 2335 .addClass(s.fullsubopen) 2336 .addClass(s.fullsubopensearch), 2337 i 2338 .removeClass(s.hidden) 2339 .removeClass(s.nosubresults) 2340 .prevAll("." + s.divider) 2341 .first() 2342 .removeClass(s.hidden)) 2343 : h || 2344 (n.hasClass(s.opened) && 2345 setTimeout(function () { 2346 l.openPanel
2346(i.closest("." + s.panel)); 2347 }, (t + 1) * (1.5 * l.conf.openingInterval)), 2348 i.addClass(s.nosubresults))); 2349 }); 2350 r.find("." + s.noresultsmsg)[m.not("." + s.hidden).length ? "addClass" : "removeClass"](s.hidden), this.trigger("updateListview"); 2351 } 2352 }; 2353 u.off(o.keyup + "-" + i + " " + o.change + "-" + i) 2354 .on(o.keyup + "-" + i, function (e) { 2355 t(e.keyCode) || C.call(l); 2356 }) 2357 .on(o.change + "-" + i, function (e) { 2358 C.call(l); 2359 }); 2360 var y = c.children("." + s.btn); 2361 y.length && 2362 u.on(o.keyup + "-" + i, function (e) { 2363 y[u.val().length ? "removeClass" : "addClass"](s.hidden); 2364 }), 2365 u.trigger(o.keyup + "-" + i); 2366 }); 2367 } 2368 } 2369 }); 2370 }, 2371 add: function () { 2372 (s = e[n]._c), (a = e[n]._d), (o = e[n]._e), s.add("clear search hassearch resultspanel noresultsmsg noresults nosubresults fullsubopensearch"), a.add("searchtext"), o.add("change keyup"); 2373 }, 2374 clickAnchor: function (e, t) {}, 2375 }), 2376 (e[n].defaults[i] = { add: !1, addTo: "panels", placeholder: "Search", noResults: "No results found.", resultsPanel: { add: !1, dividers: !0, title: "Search results" }, search: !0, showTextItems: !1, showSubPanels: !0 }), 2377 (e[n].configuration[i] = { clear: !1, form: !1, input: !1, submit: !1 }); 2378 var s, a, o, r; 2379 })(jQuery) 2380 /* 2381 * jQuery mmenu sectionIndexer add-on 2382 * mmenu.frebsite.nl 2383 * 2384 * Copyright (c) Fred Heusschen 2385 */, 2386 (function (e) { 2387 var t = "mmenu", 2388 n = "sectionIndexer"; 2389 (e[t].addons[n] = { 2390 setup: function () { 2391 var s = this, 2392 r = this.opts[n]; 2393 this.conf[n]; 2394 (o = e[t].glbl), 2395 "boolean" == typeof r && (r = { add: r }), 2396 "object" != typeof r && (r = {}), 2397 (r = this.opts[n] = e.extend(!0, {}, e[t].defaults[n], r)), 2398 this.bind("initPanels:after", function (t) { 2399 if (r.add) { 2400 var o; 2401 switch (r.addTo) { 2402 case "panels": 2403 o = t; 2404 break; 2405 default: 2406 o = e(r.addTo, this.$menu).filter("." + i.panel); 2407 } 2408 o 2409 .find("." + i.divider) 2410 .closest("." + i.panel) 2411 .addClass(i.hasindexer), 2412 this.$indexer || 2413 ((this.$indexer = e('<div class="' + i.indexer + '" />') 2414 .prependTo(this.$pnls) 2415 .append( 2416 '<a href="#a">a</a><a href="#b">b</a><a href="#c">c</a><a href="#d">d</a><a href="#e">e</a><a href="#f">f</a><a href="#g">g</a><a href="#h">h</a><a href="#i">i</a><a href="#j">j</a><a href="#k">k</a><a href="#l">l</a><a href="#m">m</a><a href="#n">n</a><a href="#o">o</a><a href="#p">p</a><a href="#q">q</a><a href="#r">r</a><a href="#s">s</a><a href="#t">t</a><a href="#u">u</a><a href="#v">v</a><a href="#w">w</a><a href="#x">x</a><a href="#y">y</a><a href="#z">z</a>' 2417 )), 2418 this.$indexer.children().on(a.mouseover + "-" + n + " " + i.touchstart + "-" + n, function (t) { 2419 var n = e(this).attr("href").slice(1), 2420 a = s.$pnls.children("." + i.opened), 2421 o = a.find("." + i.listview), 2422 r = !1, 2423 l = a.scrollTop(); 2424 a.scrollTop(0), 2425 o 2426 .children("." + i.divider) 2427 .not("." + i.hidden) 2428 .each(function () { 2429 r === !1 && n == e(this).text().slice(0, 1).toLowerCase() && (r = e(this).position().top); 2430 }), 2431 a.scrollTop(r !== !1 ? r : l); 2432 })); 2433 var l = function (e) { 2434 (e = e || this.$pnls.children("." + i.opened)), this.$menu[(e.hasClass(i.hasindexer) ? "add" : "remove") + "Class"](i.hasindexer); 2435 }; 2436 this.bind("openPanel:start", l), this.bind("initPanels:after", l); 2437 } 2438 }); 2439 }, 2440 add: function () { 2441 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("indexer hasindexer"), a.add("mouseover touchstart"); 2442 }, 2443 clickAnchor: function (e, t) { 2444 if (e.parent().is("." + i.indexer)) return !0; 2445 }, 2446 }), 2447 (e[t].defaults[n] = { add: !1, addTo: "panels" }); 2448 var i, s, a, o; 2449 })(jQuery) 2450 /* 2451 * jQuery mmenu setSelected add-on 2452 * mmenu.frebsite.nl 2453 * 2454 * Copyright (c) Fred Heusschen 2455 */, 2456 (function (e) { 2457 var t = "mmenu", 2458 n = "setSelected"; 2459 (e[t].addons[n] = { 2460 setup: function () { 2461 var a = this, 2462 r = this.opts[n]; 2463 this.conf[n]; 2464 if (((o = e[t].glbl), "boolean" == typeof r && (r = { hover: r, parent: r }), "object" != typeof r && (r = {}), (r = this.opts[n] = e.extend(!0, {}, e[t].defaults[n], r)), "detect" == r.current)) { 2465 var l = function (e) { 2466 e = e.split("?")[0].split("#")[0]; 2467 var t = a.$menu.find('a[href="' + e + '"], a[href="' + e + '/"]'); 2468 t.length ? a.setSelected(t.parent(), !0) : ((e = e.split("/").slice(0, -1)), e.length && l(e.join("/"))); 2469 }; 2470 this.bind("initMenu:after", function () { 2471 l(window.location.href); 2472 }); 2473 } else 2474 r.current || 2475 this.bind("initListview:after", function (e) { 2476 $panels 2477 .find("." + i.listview) 2478 .children("." + i.selected) 2479 .removeClass(i.selected); 2480 }); 2481 r.hover && 2482 this.bind("initMenu:after", function () { 2483 this.$menu.addClass(i.hoverselected); 2484 }), 2485 r.parent && 2486 (this.bind("openPanel:finish", function (e) { 2487 this.$pnls 2488 .find("." + i.listview) 2489 .find("." + i.next) 2490 .removeClass(i.selected); 2491 for (var t = e.data(s.parent); t; ) 2492 t 2493 .not("." + i.vertical) 2494 .children("." + i.next) 2495 .addClass(i.selected), 2496 (t = t.closest("." + i.panel).data(s.parent)); 2497 }), 2498 this.bind("initMenu:after", function () { 2499 this.$menu.addClass(i.parentselected); 2500 })); 2501 }, 2502 add: function () { 2503 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("hoverselected parentselected"); 2504 }, 2505 clickAnchor: function (e, t) {}, 2506 }), 2507 (e[t].defaults[n] = { current: !0, hover: !1, parent: !1 }); 2508 var i, s, a, o; 2509 })(jQuery) 2510 /* 2511 * jQuery mmenu toggles add-on 2512 * mmenu.frebsite.nl 2513 * 2514 * Copyright (c) Fred Heusschen 2515 */, 2516 (function (e) { 2517 var t = "mmenu", 2518 n = "toggles"; 2519 (e[t].addons[n] = { 2520 setup: function () { 2521 var s = this; 2522 this.opts[n], this.conf[n]; 2523 (o = e[t].glbl), 2524 this.bind("initListview:after", function (t) { 2525 this.__refactorClass(t.find("input"), this.conf.classNames[n].toggle, "toggle"), 2526 this.__refactorClass(t.find("input"), this.conf.classNames[n].check, "check"), 2527 t.find("input." + i.toggle + ", input." + i.check).each(function () { 2528 var t = e(this), 2529 n = t.closest("li"), 2530 a = t.hasClass(i.toggle) ? "toggle" : "check", 2531 o = t.attr("id") || s.__getUniqueId(); 2532 n.children('label[for="' + o + '"]').length || (t.attr("id", o), n.prepend(t), e('<label for="' + o + '" class="' + i[a] + '"></label>').insertBefore(n.children("a, span").last())); 2533 }); 2534 }); 2535 }, 2536 add: function () { 2537 (i = e[t]._c), (s = e[t]._d), (a = e[t]._e), i.add("toggle check"); 2538 }, 2539 clickAnchor: function (e, t) {}, 2540 }), 2541 (e[t].configuration.classNames[n] = { toggle: "Toggle", check: "Check" }); 2542 var i, s, a, o; 2543 })(jQuery); 2544 return true; 2545});
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.