$(function() { var currentModule = startMenu['module'], currentMethod = startMenu['method'], $mainMenu = $('#mainmenu'), $moduleMenu = $('#modulemenu'), $featureMenu = $('#featurebar'), $loadingIcon = $('#loadingIcon'), $menuEditor = $('#menuEditor'); var menuConfig = { 'main': null, 'module': {}, 'feature': {} }; var updateConfig = function($menu) { var moduleName = $menu.data('module'), methodName = $menu.data('method'); var menu = []; $menu.children('.nav').children('li:not(.drag-shadow)').each(function() { var $e = $(this); var item = $e.children('a').data('menu'); item.order = $e.attr('data-order'); menu.push(item); }); if(moduleName === 'main') menuConfig.main = menu; else if(methodName) menuConfig['feature'][moduleName][methodName] = menu; else menuConfig['module'][moduleName] = menu; } var updateMenu = function(moduleName, methodName, items) { var $menu = moduleName === 'main' ? $mainMenu : (methodName ? $featureMenu : $moduleMenu); var items = items || (moduleName === 'main' ? menuConfig.main : (methodName ? menuConfig['feature'][moduleName][methodName] : menuConfig['module'][moduleName])); $menu.data({'module': moduleName, 'method': methodName}); if(items) { var $nav = $('