Instantly share code, notes, and snippets.
Created
February 10, 2011 14:48
-
Star
0
(0)
You must be signed in to star a gist -
Fork
0
(0)
You must be signed in to fork a gist
-
Save jaredwilli/820633 to your computer and use it in GitHub Desktop.
WordPress navmenu sortable drag/drop script unpacked
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var wpNavMenu; | |
(function (b) { | |
var a = wpNavMenu = { | |
options: { | |
menuItemDepthPerLevel: 30, | |
globalMaxDepth: 11 | |
}, | |
menuList: undefined, | |
targetList: undefined, | |
menusChanged: false, | |
isRTL: !! ("undefined" != typeof isRtl && isRtl), | |
negateIfRTL: ("undefined" != typeof isRtl && isRtl) ? -1 : 1, | |
init: function () { | |
a.menuList = b("#menu-to-edit"); | |
a.targetList = a.menuList; | |
this.jQueryExtensions(); | |
this.attachMenuEditListeners(); | |
this.setupInputWithDefaultTitle(); | |
this.attachQuickSearchListeners(); | |
this.attachThemeLocationsListeners(); | |
this.attachTabsPanelListeners(); | |
this.attachUnsavedChangesListener(); | |
if (a.menuList.length) { | |
this.initSortables() | |
} | |
this.initToggles(); | |
this.initTabManager() | |
}, | |
jQueryExtensions: function () { | |
b.fn.extend({ | |
menuItemDepth: function () { | |
var c = a.isRTL ? this.eq(0).css("margin-right") : this.eq(0).css("margin-left"); | |
return a.pxToDepth(c && -1 != c.indexOf("px") ? c.slice(0, -2) : 0) | |
}, | |
updateDepthClass: function (d, c) { | |
return this.each(function () { | |
var e = b(this); | |
c = c || e.menuItemDepth(); | |
b(this).removeClass("menu-item-depth-" + c).addClass("menu-item-depth-" + d) | |
}) | |
}, | |
shiftDepthClass: function (c) { | |
return this.each(function () { | |
var d = b(this), | |
e = d.menuItemDepth(); | |
b(this).removeClass("menu-item-depth-" + e).addClass("menu-item-depth-" + (e + c)) | |
}) | |
}, | |
childMenuItems: function () { | |
var c = b(); | |
this.each(function () { | |
var d = b(this), | |
f = d.menuItemDepth(), | |
e = d.next(); | |
while (e.length && e.menuItemDepth() > f) { | |
c = c.add(e); | |
e = e.next() | |
} | |
}); | |
return c | |
}, | |
updateParentMenuItemDBId: function () { | |
return this.each(function () { | |
var e = b(this), | |
c = e.find(".menu-item-data-parent-id"), | |
f = e.menuItemDepth(), | |
d = e.prev(); | |
if (f == 0) { | |
c.val(0) | |
} else { | |
while (!d[0] || !d[0].className || -1 == d[0].className.indexOf("menu-item") || (d.menuItemDepth() != f - 1)) { | |
d = d.prev() | |
} | |
c.val(d.find(".menu-item-data-db-id").val()) | |
} | |
}) | |
}, | |
hideAdvancedMenuItemFields: function () { | |
return this.each(function () { | |
var c = b(this); | |
b(".hide-column-tog").not(":checked").each(function () { | |
c.find(".field-" + b(this).val()).addClass("hidden-field") | |
}) | |
}) | |
}, | |
addSelectedToMenu: function (c) { | |
if (0 == b("#menu-to-edit").length) { | |
return false | |
} | |
return this.each(function () { | |
var e = b(this), | |
d = {}, | |
g = e.find(".tabs-panel-active .categorychecklist li input:checked"), | |
f = new RegExp("menu-item\\[([^\\]]*)"); | |
c = c || a.addMenuItemToBottom; | |
if (!g.length) { | |
return false | |
} | |
e.find("img.waiting").show(); | |
b(g).each(function () { | |
var i = b(this), | |
h = f.exec(i.attr("name")), | |
j = "undefined" == typeof h[1] ? 0 : parseInt(h[1], 10); | |
if (this.className && -1 != this.className.indexOf("add-to-top")) { | |
c = a.addMenuItemToTop | |
} | |
d[j] = i.closest("li").getItemData("add-menu-item", j) | |
}); | |
a.addItemToMenu(d, c, function () { | |
g.removeAttr("checked"); | |
e.find("img.waiting").hide() | |
}) | |
}) | |
}, | |
getItemData: function (f, g) { | |
f = f || "menu-item"; | |
var d = {}, | |
e, c = ["menu-item-db-id", "menu-item-object-id", "menu-item-object", "menu-item-parent-id", "menu-item-position", "menu-item-type", "menu-item-title", "menu-item-url", "menu-item-description", "menu-item-attr-title", "menu-item-target", "menu-item-classes", "menu-item-xfn"]; | |
if (!g && f == "menu-item") { | |
g = this.find(".menu-item-data-db-id").val() | |
} | |
if (!g) { | |
return d | |
} | |
this.find("input").each(function () { | |
var h; | |
e = c.length; | |
while (e--) { | |
if (f == "menu-item") { | |
h = c[e] + "[" + g + "]" | |
} else { | |
if (f == "add-menu-item") { | |
h = "menu-item[" + g + "][" + c[e] + "]" | |
} | |
} | |
if (this.name && h == this.name) { | |
d[c[e]] = this.value | |
} | |
} | |
}); | |
return d | |
}, | |
setItemData: function (c, d, e) { | |
d = d || "menu-item"; | |
if (!e && d == "menu-item") { | |
e = b(".menu-item-data-db-id", this).val() | |
} | |
if (!e) { | |
return this | |
} | |
this.find("input").each(function () { | |
var f = b(this), | |
g; | |
b.each(c, function (h, i) { | |
if (d == "menu-item") { | |
g = h + "[" + e + "]" | |
} else { | |
if (d == "add-menu-item") { | |
g = "menu-item[" + e + "][" + h + "]" | |
} | |
} | |
if (g == f.attr("name")) { | |
f.val(i) | |
} | |
}) | |
}); | |
return this | |
} | |
}) | |
}, | |
initToggles: function () { | |
postboxes.add_postbox_toggles("nav-menus"); | |
columns.useCheckboxesForHidden(); | |
columns.checked = function (c) { | |
b(".field-" + c).removeClass("hidden-field") | |
}; | |
columns.unchecked = function (c) { | |
b(".field-" + c).addClass("hidden-field") | |
}; | |
a.menuList.hideAdvancedMenuItemFields() | |
}, | |
initSortables: function () { | |
var p = 0, | |
e, t, d, l, o, f, c, i, s, m = a.menuList.offset().left, | |
h = b("body"), | |
q, n = r(); | |
m += a.isRTL ? a.menuList.width() : 0; | |
a.menuList.sortable({ | |
handle: ".menu-item-handle", | |
placeholder: "sortable-placeholder", | |
start: function (A, z) { | |
var u, x, w, v, y; | |
if (a.isRTL) { | |
z.item[0].style.right = "auto" | |
} | |
s = z.item.children(".menu-item-transport"); | |
e = z.item.menuItemDepth(); | |
j(z, e); | |
w = (z.item.next()[0] == z.placeholder[0]) ? z.item.next() : z.item; | |
v = w.childMenuItems(); | |
s.append(v); | |
u = s.outerHeight(); | |
u += (u > 0) ? (z.placeholder.css("margin-top").slice(0, -2) * 1) : 0; | |
u += z.helper.outerHeight(); | |
i = u; | |
u -= 2; | |
z.placeholder.height(u); | |
q = e; | |
v.each(function () { | |
var B = b(this).menuItemDepth(); | |
q = (B > q) ? B : q | |
}); | |
x = z.helper.find(".menu-item-handle").outerWidth(); | |
x += a.depthToPx(q - e); | |
x -= 2; | |
z.placeholder.width(x); | |
y = z.placeholder.next(); | |
y.css("margin-top", i + "px"); | |
z.placeholder.detach(); | |
b(this).sortable("refresh"); | |
z.item.after(z.placeholder); | |
y.css("margin-top", 0); | |
k(z) | |
}, | |
stop: function (x, w) { | |
var v, u = p - e; | |
v = s.children().insertAfter(w.item); | |
if (u != 0) { | |
w.item.updateDepthClass(p); | |
v.shiftDepthClass(u); | |
g(u) | |
} | |
a.registerChange(); | |
w.item.updateParentMenuItemDBId(); | |
w.item[0].style.top = 0; | |
if (a.isRTL) { | |
w.item[0].style.left = "auto"; | |
w.item[0].style.right = 0 | |
} | |
a.refreshMenuTabs(true) | |
}, | |
change: function (v, u) { | |
if (!u.placeholder.parent().hasClass("menu")) { | |
(l.length) ? l.after(u.placeholder) : a.menuList.prepend(u.placeholder) | |
} | |
k(u) | |
}, | |
sort: function (w, v) { | |
var y = v.helper.offset(), | |
u = a.isRTL ? y.left + v.helper.width() : y.left, | |
x = a.negateIfRTL * a.pxToDepth(u - m); | |
if (x > d || y.top < f) { | |
x = d | |
} else { | |
if (x < t) { | |
x = t | |
} | |
} | |
if (x != p) { | |
j(v, x) | |
} | |
if (c && y.top + i > c) { | |
o.after(v.placeholder); | |
k(v); | |
b(this).sortable("refreshPositions") | |
} | |
} | |
}); | |
function k(u) { | |
var v; | |
l = u.placeholder.prev(); | |
o = u.placeholder.next(); | |
if (l[0] == u.item[0]) { | |
l = l.prev() | |
} | |
if (o[0] == u.item[0]) { | |
o = o.next() | |
} | |
f = (l.length) ? l.offset().top + l.height() : 0; | |
c = (o.length) ? o.offset().top + o.height() / 3 : 0; | |
t = (o.length) ? o.menuItemDepth() : 0; | |
if (l.length) { | |
d = ((v = l.menuItemDepth() + 1) > a.options.globalMaxDepth) ? a.options.globalMaxDepth : v | |
} else { | |
d = 0 | |
} | |
} | |
function j(u, v) { | |
u.placeholder.updateDepthClass(v, p); | |
p = v | |
} | |
function r() { | |
if (!h[0].className) { | |
return 0 | |
} | |
var u = h[0].className.match(/menu-max-depth-(\d+)/); | |
return u && u[1] ? parseInt(u[1]) : 0 | |
} | |
function g(u) { | |
var v, w = n; | |
if (u === 0) { | |
return | |
} else { | |
if (u > 0) { | |
v = q + u; | |
if (v > n) { | |
w = v | |
} | |
} else { | |
if (u < 0 && q == n) { | |
while (!b(".menu-item-depth-" + w, a.menuList).length && w > 0) { | |
w-- | |
} | |
} | |
} | |
} | |
h.removeClass("menu-max-depth-" + n).addClass("menu-max-depth-" + w); | |
n = w | |
} | |
}, | |
attachMenuEditListeners: function () { | |
var c = this; | |
b("#update-nav-menu").bind("click", function (d) { | |
if (d.target && d.target.className) { | |
if (-1 != d.target.className.indexOf("item-edit")) { | |
return c.eventOnClickEditLink(d.target) | |
} else { | |
if (-1 != d.target.className.indexOf("menu-save")) { | |
return c.eventOnClickMenuSave(d.target) | |
} else { | |
if (-1 != d.target.className.indexOf("menu-delete")) { | |
return c.eventOnClickMenuDelete(d.target) | |
} else { | |
if (-1 != d.target.className.indexOf("item-delete")) { | |
return c.eventOnClickMenuItemDelete(d.target) | |
} else { | |
if (-1 != d.target.className.indexOf("item-cancel")) { | |
return c.eventOnClickCancelLink(d.target) | |
} | |
} | |
} | |
} | |
} | |
} | |
}) | |
}, | |
setupInputWithDefaultTitle: function () { | |
var c = "input-with-default-title"; | |
b("." + c).each(function () { | |
var f = b(this), | |
e = f.attr("title"), | |
d = f.val(); | |
f.data(c, e); | |
if ("" == d) { | |
f.val(e) | |
} else { | |
if (e == d) { | |
return | |
} else { | |
f.removeClass(c) | |
} | |
} | |
}).focus(function () { | |
var d = b(this); | |
if (d.val() == d.data(c)) { | |
d.val("").removeClass(c) | |
} | |
}).blur(function () { | |
var d = b(this); | |
if ("" == d.val()) { | |
d.addClass(c).val(d.data(c)) | |
} | |
}) | |
}, | |
attachThemeLocationsListeners: function () { | |
var d = b("#nav-menu-theme-locations"), | |
c = {}; | |
c.action = "menu-locations-save"; | |
c["menu-settings-column-nonce"] = b("#menu-settings-column-nonce").val(); | |
d.find("input[type=submit]").click(function () { | |
d.find("select").each(function () { | |
c[this.name] = b(this).val() | |
}); | |
d.find(".waiting").show(); | |
b.post(ajaxurl, c, function (e) { | |
d.find(".waiting").hide() | |
}); | |
return false | |
}) | |
}, | |
attachQuickSearchListeners: function () { | |
var c; | |
b(".quick-search").keypress(function (f) { | |
var d = b(this); | |
if (13 == f.which) { | |
a.updateQuickSearchResults(d); | |
return false | |
} | |
if (c) { | |
clearTimeout(c) | |
} | |
c = setTimeout(function () { | |
a.updateQuickSearchResults(d) | |
}, 400) | |
}).attr("autocomplete", "off") | |
}, | |
updateQuickSearchResults: function (d) { | |
var c, g, e = 2, | |
f = d.val(); | |
if (f.length < e) { | |
return | |
} | |
c = d.parents(".tabs-panel"); | |
g = { | |
action: "menu-quick-search", | |
"response-format": "markup", | |
menu: b("#menu").val(), | |
"menu-settings-column-nonce": b("#menu-settings-column-nonce").val(), | |
q: f, | |
type: d.attr("name") | |
}; | |
b("img.waiting", c).show(); | |
b.post(ajaxurl, g, function (h) { | |
a.processQuickSearchQueryResponse(h, g, c) | |
}) | |
}, | |
addCustomLink: function (c) { | |
var e = b("#custom-menu-item-url").val(), | |
d = b("#custom-menu-item-name").val(); | |
c = c || a.addMenuItemToBottom; | |
if ("" == e || "http://" == e) { | |
return false | |
} | |
b(".customlinkdiv img.waiting").show(); | |
this.addLinkToMenu(e, d, c, function () { | |
b(".customlinkdiv img.waiting").hide(); | |
b("#custom-menu-item-name").val("").blur(); | |
b("#custom-menu-item-url").val("http://") | |
}) | |
}, | |
addLinkToMenu: function (e, d, c, f) { | |
c = c || a.addMenuItemToBottom; | |
f = f || | |
function () {}; | |
a.addItemToMenu({ | |
"-1": { | |
"menu-item-type": "custom", | |
"menu-item-url": e, | |
"menu-item-title": d | |
} | |
}, c, f) | |
}, | |
addItemToMenu: function (e, c, g) { | |
var f = b("#menu").val(), | |
d = b("#menu-settings-column-nonce").val(); | |
c = c || | |
function () {}; | |
g = g || | |
function () {}; | |
params = { | |
action: "add-menu-item", | |
menu: f, | |
"menu-settings-column-nonce": d, | |
"menu-item": e | |
}; | |
b.post(ajaxurl, params, function (h) { | |
var i = b("#menu-instructions"); | |
c(h, params); | |
if (!i.hasClass("menu-instructions-inactive") && i.siblings().length) { | |
i.addClass("menu-instructions-inactive") | |
} | |
g() | |
}) | |
}, | |
addMenuItemToBottom: function (c, d) { | |
b(c).hideAdvancedMenuItemFields().appendTo(a.targetList) | |
}, | |
addMenuItemToTop: function (c, d) { | |
b(c).hideAdvancedMenuItemFields().prependTo(a.targetList) | |
}, | |
attachUnsavedChangesListener: function () { | |
b("#menu-management input, #menu-management select, #menu-management, #menu-management textarea").change(function () { | |
a.registerChange() | |
}); | |
if (0 != b("#menu-to-edit").length) { | |
window.onbeforeunload = function () { | |
if (a.menusChanged) { | |
return navMenuL10n.saveAlert | |
} | |
} | |
} else { | |
b("#menu-settings-column").find("input,select").attr("disabled", "disabled").end().find("a").attr("href", "#").unbind("click") | |
} | |
}, | |
registerChange: function () { | |
a.menusChanged = true | |
}, | |
attachTabsPanelListeners: function () { | |
b("#menu-settings-column").bind("click", function (h) { | |
var f, d, i, c, g = b(h.target); | |
if (g.hasClass("nav-tab-link")) { | |
d = /#(.*)$/.exec(h.target.href); | |
if (d && d[1]) { | |
d = d[1] | |
} else { | |
return false | |
} | |
i = g.parents(".inside").first(); | |
b("input", i).removeAttr("checked"); | |
b(".tabs-panel-active", i).removeClass("tabs-panel-active").addClass("tabs-panel-inactive"); | |
b("#" + d, i).removeClass("tabs-panel-inactive").addClass("tabs-panel-active"); | |
b(".tabs", i).removeClass("tabs"); | |
g.parent().addClass("tabs"); | |
b(".quick-search", i).focus(); | |
return false | |
} else { | |
if (g.hasClass("select-all")) { | |
f = /#(.*)$/.exec(h.target.href); | |
if (f && f[1]) { | |
c = b("#" + f[1] + " .tabs-panel-active .menu-item-title input"); | |
if (c.length === c.filter(":checked").length) { | |
c.removeAttr("checked") | |
} else { | |
c.attr("checked", "checked") | |
} | |
return false | |
} | |
} else { | |
if (g.hasClass("submit-add-to-menu")) { | |
a.registerChange(); | |
if (h.target.id && "submit-customlinkdiv" == h.target.id) { | |
a.addCustomLink(a.addMenuItemToBottom) | |
} else { | |
if (h.target.id && -1 != h.target.id.indexOf("submit-")) { | |
b("#" + h.target.id.replace(/submit-/, "")).addSelectedToMenu(a.addMenuItemToBottom) | |
} | |
} | |
return false | |
} else { | |
if (g.hasClass("page-numbers")) { | |
b.post(ajaxurl, h.target.href.replace(/.*\?/, "").replace(/action=([^&]*)/, "") + "&action=menu-get-metabox", function (m) { | |
if (-1 == m.indexOf("replace-id")) { | |
return | |
} | |
var l = b.parseJSON(m), | |
e = document.getElementById(l["replace-id"]), | |
k = document.createElement("div"), | |
j = document.createElement("div"); | |
if (!l.markup || !e) { | |
return | |
} | |
j.innerHTML = l.markup ? l.markup : ""; | |
e.parentNode.insertBefore(k, e); | |
k.parentNode.removeChild(e); | |
k.parentNode.insertBefore(j, k); | |
k.parentNode.removeChild(k) | |
}); | |
return false | |
} | |
} | |
} | |
} | |
}) | |
}, | |
initTabManager: function () { | |
var h = b(".nav-tabs-wrapper"), | |
j = h.children(".nav-tabs"), | |
g = j.children(".nav-tab-active"), | |
m = j.children(".nav-tab"), | |
e = 0, | |
o, f, l, d, k, i = {}, | |
c = a.isRTL ? "margin-right" : "margin-left", | |
p = a.isRTL ? "margin-left" : "margin-right", | |
n = 2; | |
a.refreshMenuTabs = function (q) { | |
var t = h.width(), | |
s = 0, | |
r = {}; | |
f = h.offset().left; | |
o = f + t; | |
if (!q) { | |
g.makeTabVisible() | |
} | |
if (m.last().isTabVisible()) { | |
s = h.width() - e; | |
s = s > 0 ? 0 : s; | |
r[c] = s + "px"; | |
j.animate(r, 100, "linear") | |
} | |
if (t > e) { | |
l.add(d).hide() | |
} else { | |
l.add(d).show() | |
} | |
}; | |
b.fn.extend({ | |
makeTabVisible: function () { | |
var u = this.eq(0), | |
v, s, r = {}, | |
q = 0; | |
if (!u.length) { | |
return this | |
} | |
v = u.offset().left; | |
s = v + u.outerWidth(); | |
if (s > o) { | |
q = o - s | |
} else { | |
if (v < f) { | |
q = f - v | |
} | |
} | |
if (!q) { | |
return this | |
} | |
r[c] = "+=" + a.negateIfRTL * q + "px"; | |
j.animate(r, Math.abs(q) * n, "linear"); | |
return this | |
}, | |
isTabVisible: function () { | |
var r = this.eq(0), | |
s = r.offset().left, | |
q = s + r.outerWidth(); | |
return (q <= o && s >= f) ? true : false | |
} | |
}); | |
m.each(function () { | |
e += b(this).outerWidth(true) | |
}); | |
i.padding = 0; | |
i[p] = (-1 * e) + "px"; | |
j.css(i); | |
l = b('<div class="nav-tabs-arrow nav-tabs-arrow-left"><a>«</a></div>'); | |
d = b('<div class="nav-tabs-arrow nav-tabs-arrow-right"><a>»</a></div>'); | |
h.wrap('<div class="nav-tabs-nav"/>').parent().prepend(l).append(d); | |
a.refreshMenuTabs(); | |
b(window).resize(function () { | |
if (k) { | |
clearTimeout(k) | |
} | |
k = setTimeout(a.refreshMenuTabs, 200) | |
}); | |
b.each([{ | |
arrow: l, | |
next: "next", | |
last: "first", | |
operator: "+=" | |
}, { | |
arrow: d, | |
next: "prev", | |
last: "last", | |
operator: "-=" | |
}], function () { | |
var q = this; | |
this.arrow.mousedown(function () { | |
var t = Math.abs(parseInt(j.css(c))), | |
r = t, | |
s = {}; | |
if ("-=" == q.operator) { | |
r = Math.abs(e - h.width()) - t | |
} | |
if (!r) { | |
return | |
} | |
s[c] = q.operator + r + "px"; | |
j.animate(s, r * n, "linear") | |
}).mouseup(function () { | |
var s, r; | |
j.stop(true); | |
s = m[q.last](); | |
while ((r = s[q.next]()) && r.length && !r.isTabVisible()) { | |
s = r | |
} | |
s.makeTabVisible() | |
}) | |
}) | |
}, | |
eventOnClickEditLink: function (d) { | |
var c, e, f = /#(.*)$/.exec(d.href); | |
if (f && f[1]) { | |
c = b("#" + f[1]); | |
e = c.parent(); | |
if (0 != e.length) { | |
if (e.hasClass("menu-item-edit-inactive")) { | |
if (!c.data("menu-item-data")) { | |
c.data("menu-item-data", c.getItemData()) | |
} | |
c.slideDown("fast"); | |
e.removeClass("menu-item-edit-inactive").addClass("menu-item-edit-active") | |
} else { | |
c.slideUp("fast"); | |
e.removeClass("menu-item-edit-active").addClass("menu-item-edit-inactive") | |
} | |
return false | |
} | |
} | |
}, | |
eventOnClickCancelLink: function (d) { | |
var c = b(d).closest(".menu-item-settings"); | |
c.setItemData(c.data("menu-item-data")); | |
return false | |
}, | |
eventOnClickMenuSave: function (e) { | |
var f = "", | |
c = b("#menu-name"), | |
d = c.val(); | |
if (!d || d == c.attr("title") || !d.replace(/\s+/, "")) { | |
c.parent().addClass("form-invalid"); | |
return false | |
} | |
b("#nav-menu-theme-locations select").each(function () { | |
f += '<input type="hidden" name="' + this.name + '" value="' + b(this).val() + '" />' | |
}); | |
b("#update-nav-menu").append(f); | |
a.menuList.find(".menu-item-data-position").val(function (g) { | |
return g + 1 | |
}); | |
window.onbeforeunload = null; | |
return true | |
}, | |
eventOnClickMenuDelete: function (c) { | |
if (confirm(navMenuL10n.warnDeleteMenu)) { | |
window.onbeforeunload = null; | |
return true | |
} | |
return false | |
}, | |
eventOnClickMenuItemDelete: function (c) { | |
var d = parseInt(c.id.replace("delete-", ""), 10); | |
a.removeMenuItem(b("#menu-item-" + d)); | |
a.registerChange(); | |
return false | |
}, | |
processQuickSearchQueryResponse: function (g, k, c) { | |
var e, i, f = {}, | |
d = document.getElementById("nav-menu-meta"), | |
j = new RegExp("menu-item\\[([^\\]]*)", "g"), | |
h = b("<div>").html(g).find("li"), | |
l; | |
if (!h.length) { | |
b(".categorychecklist", c).html("<li><p>" + navMenuL10n.noResultsFound + "</p></li>"); | |
b("img.waiting", c).hide(); | |
return | |
} | |
h.each(function () { | |
l = b(this); | |
e = j.exec(l.html()); | |
if (e && e[1]) { | |
i = e[1]; | |
while (d.elements["menu-item[" + i + "][menu-item-type]"] || f[i]) { | |
i-- | |
} | |
f[i] = true; | |
if (i != e[1]) { | |
l.html(l.html().replace(new RegExp("menu-item\\[" + e[1] + "\\]", "g"), "menu-item[" + i + "]")) | |
} | |
} | |
}); | |
b(".categorychecklist", c).html(h); | |
b("img.waiting", c).hide() | |
}, | |
removeMenuItem: function (d) { | |
var c = d.childMenuItems(); | |
d.addClass("deleting").animate({ | |
opacity: 0, | |
height: 0 | |
}, 350, function () { | |
var e = b("#menu-instructions"); | |
d.remove(); | |
c.shiftDepthClass(-1).updateParentMenuItemDBId(); | |
if (!e.siblings().length) { | |
e.removeClass("menu-instructions-inactive") | |
} | |
}) | |
}, | |
depthToPx: function (c) { | |
return c * a.options.menuItemDepthPerLevel | |
}, | |
pxToDepth: function (c) { | |
return Math.floor(c / a.options.menuItemDepthPerLevel) | |
} | |
}; | |
b(document).ready(function () { | |
wpNavMenu.init() | |
}) | |
})(jQuery); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment