if (!("ace" in window)) { window.ace = {} } ace.config = { cookie_expiry: 604800, storage_method: 2 }; ace.settings = { is: function(b, a) { return (ace.data.get("settings", b + "-" + a) == 1) }, exists: function(b, a) { return (ace.data.get("settings", b + "-" + a) !== null) }, set: function(b, a) { ace.data.set("settings", b + "-" + a, 1) }, unset: function(b, a) { ace.data.set("settings", b + "-" + a, -1) }, remove: function(b, a) { ace.data.remove("settings", b + "-" + a) }, navbar_fixed: function(a) { a = a || false; if (!a && ace.settings.is("sidebar", "fixed")) { ace.settings.sidebar_fixed(false) } var b = document.getElementById("navbar"); if (a) { if (!ace.hasClass(b, "navbar-fixed-top")) { ace.addClass(b, "navbar-fixed-top") } if (!ace.hasClass(document.body, "navbar-fixed")) { ace.addClass(document.body, "navbar-fixed") } ace.settings.set("navbar", "fixed") } else { ace.removeClass(b, "navbar-fixed-top"); ace.removeClass(document.body, "navbar-fixed"); ace.settings.unset("navbar", "fixed") } document.getElementById("ace-settings-navbar").checked = a }, breadcrumbs_fixed: function(a) { a = a || false; if (a && !ace.settings.is("sidebar", "fixed")) { ace.settings.sidebar_fixed(true) } var b = document.getElementById("breadcrumbs"); if (a) { if (!ace.hasClass(b, "breadcrumbs-fixed")) { ace.addClass(b, "breadcrumbs-fixed") } if (!ace.hasClass(document.body, "breadcrumbs-fixed")) { ace.addClass(document.body, "breadcrumbs-fixed") } ace.settings.set("breadcrumbs", "fixed") } else { ace.removeClass(b, "breadcrumbs-fixed"); ace.removeClass(document.body, "breadcrumbs-fixed"); ace.settings.unset("breadcrumbs", "fixed") } document.getElementById("ace-settings-breadcrumbs").checked = a }, sidebar_fixed: function(a) { a = a || false; if (!a && ace.settings.is("breadcrumbs", "fixed")) { ace.settings.breadcrumbs_fixed(false) } if (a && !ace.settings.is("navbar", "fixed")) { ace.settings.navbar_fixed(true) } var b = document.getElementById("sidebar"); if (a) { if (!ace.hasClass(b, "sidebar-fixed")) { ace.addClass(b, "sidebar-fixed") } ace.settings.set("sidebar", "fixed") } else { ace.removeClass(b, "sidebar-fixed"); ace.settings.unset("sidebar", "fixed") } document.getElementById("ace-settings-sidebar").checked = a }, main_container_fixed: function(a) { a = a || false; var c = document.getElementById("main-container"); var b = document.getElementById("navbar-container"); if (a) { if (!ace.hasClass(c, "container")) { ace.addClass(c, "container") } if (!ace.hasClass(b, "container")) { ace.addClass(b, "container") } ace.settings.set("main-container", "fixed") } else { ace.removeClass(c, "container"); ace.removeClass(b, "container"); ace.settings.unset("main-container", "fixed") } document.getElementById("ace-settings-add-container").checked = a; if (navigator.userAgent.match(/webkit/i)) { var d = document.getElementById("sidebar"); ace.toggleClass(d, "menu-min"); setTimeout(function() { ace.toggleClass(d, "menu-min") }, 0) } }, sidebar_collapsed: function(c) { c = c || false; var e = document.getElementById("sidebar"); var d = document.getElementById("sidebar-collapse").querySelector('[class*="icon-"]'); var b = d.getAttribute("data-icon1"); var a = d.getAttribute("data-icon2"); if (c) { ace.addClass(e, "menu-min"); ace.removeClass(d, b); ace.addClass(d, a); ace.settings.set("sidebar", "collapsed") } else { ace.removeClass(e, "menu-min"); ace.removeClass(d, a); ace.addClass(d, b); ace.settings.unset("sidebar", "collapsed") } }, }; ace.settings.check = function(c, e) { if (!ace.settings.exists(c, e)) { return } var a = ace.settings.is(c, e); var b = { "navbar-fixed": "navbar-fixed-top", "sidebar-fixed": "sidebar-fixed", "breadcrumbs-fixed": "breadcrumbs-fixed", "sidebar-collapsed": "menu-min", "main-container-fixed": "container" }; var d = document.getElementById(c); if (a != ace.hasClass(d, b[c + "-" + e])) { ace.settings[c.replace("-", "_") + "_" + e](a) } }; ace.data_storage = function(e, c) { var b = "ace."; var d = null; var a = 0; if ((e == 1 || e === c) && "localStorage" in window && window.localStorage !== null) { d = ace.storage; a = 1 } else { if (d == null && (e == 2 || e === c) && "cookie" in document && document.cookie !== null) { d = ace.cookie; a = 2 } } this.set = function(h, g, i, k) { if (!d) { return } if (i === k) { i = g; g = h; if (i == null) { d.remove(b + g) } else { if (a == 1) { d.set(b + g, i) } else { if (a == 2) { d.set(b + g, i, ace.config.cookie_expiry) } } } } else { if (a == 1) { if (i == null) { d.remove(b + h + "." + g) } else { d.set(b + h + "." + g, i) } } else { if (a == 2) { var j = d.get(b + h); var f = j ? JSON.parse(j) : {}; if (i == null) { delete f[g]; if (ace.sizeof(f) == 0) { d.remove(b + h); return } } else { f[g] = i } d.set(b + h, JSON.stringify(f), ace.config.cookie_expiry) } } } }; this.get = function(h, g, j) { if (!d) { return null } if (g === j) { g = h; return d.get(b + g) } else { if (a == 1) { return d.get(b + h + "." + g) } else { if (a == 2) { var i = d.get(b + h); var f = i ? JSON.parse(i) : {}; return g in f ? f[g] : null } } } }; this.remove = function(g, f, h) { if (!d) { return } if (f === h) { f = g; this.set(f, null) } else { this.set(g, f, null) } } }; ace.cookie = { get: function(c) { var d = document.cookie, g, f = c + "=", a; if (!d) { return } a = d.indexOf("; " + f); if (a == -1) { a = d.indexOf(f); if (a != 0) { return null } } else { a += 2 } g = d.indexOf(";", a); if (g == -1) { g = d.length } return decodeURIComponent(d.substring(a + f.length, g)) }, set: function(b, e, a, g, c, f) { var h = new Date(); if (typeof(a) == "object" && a.toGMTString) { a = a.toGMTString() } else { if (parseInt(a, 10)) { h.setTime(h.getTime() + (parseInt(a, 10) * 1000)); a = h.toGMTString() } else { a = "" } } document.cookie = b + "=" + encodeURIComponent(e) + ((a) ? "; expires=" + a : "") + ((g) ? "; path=" + g : "") + ((c) ? "; domain=" + c : "") + ((f) ? "; secure" : "") }, remove: function(a, b) { this.set(a, "", -1000, b) } }; ace.storage = { get: function(a) { return window.localStorage.getItem(a) }, set: function(a, b) { window.localStorage.setItem(a, b) }, remove: function(a) { window.localStorage.removeItem(a) } }; ace.sizeof = function(c) { var b = 0; for (var a in c) { if (c.hasOwnProperty(a)) { b++ } } return b }; ace.hasClass = function(b, a) { return (" " + b.className + " ").indexOf(" " + a + " ") > -1 }; ace.addClass = function(c, b) { if (!ace.hasClass(c, b)) { var a = c.className; c.className = a + (a.length ? " " : "") + b } }; ace.removeClass = function(b, a) { ace.replaceClass(b, a) }; ace.replaceClass = function(c, b, d) { var a = new RegExp(("(^|\\s)" + b + "(\\s|$)"), "i"); c.className = c.className.replace(a, function(e, g, f) { return d ? (g + d + f) : " " }).replace(/^\s+|\s+$/g, "") }; ace.toggleClass = function(b, a) { if (ace.hasClass(b, a)) { ace.removeClass(b, a) } else { ace.addClass(b, a) } }; ace.data = new ace.data_storage(ace.config.storage_method);