var Admin = Admin || {}; Admin.Navigation = (function () { var buildMap = function () { var map = {}; var linkElements = $("a.nav-link"); linkElements.each(function () { var parents = $(this).parentsUntil(".nav-sidebar"); var href; var title; var parent; var grandParent; switch (parents.length) { // items in level one case 1: { href = $(parents).find("a").attr("href"); title = $(parents).find("a").find("p").html(); map[href] = { title: title, link: href, parent: null, grandParent: null }; break; } // items in level two, these items have parent but have not grand parent case 3: { href = $(parents).eq(0).find("a").attr("href"); title = $(parents).eq(0).find("a").find("p").html(); parent = $(parents).eq(2).find("a").find("p").html(); parent = parent.substring(0, parent.indexOf("