MenuEditor Quick Reference
Visual editor for creating and managing hierarchical navigation menus
Key Features
- Drag-and-drop menu structure editing
- Tree-based menu visualization
- Create multi-level menu hierarchies
- Save menus as JSON definitions
- Load and edit existing menu definitions
- Live preview of menu structure
Server-Side Usage:
// Get the MenuEditor API
var MenuEditor = js.getObject("/OpenForum/AddOn/MenuEditor","MenuEditor.sjs");
// Load menu definition
var menu = MenuEditor.loadMenu("/MyPage", "menu.json");
// Save menu definition
MenuEditor.saveMenu("/MyPage", "menu.json", menuData);
// Create menu structure
var menuStructure = {
name: "Main Menu",
children: [
{name: "Home", link: "/Home"},
{name: "About", link: "/About"}
]
};
MenuEditor.saveMenu("/MyPage", "menu.json", menuStructure);
Client-Side Usage:
// Load menu
JSON.get('/OpenForum/AddOn/MenuEditor/Load', null,
'pageName=/MyPage&fileName=menu.json')
.onSuccess(function(menu) {
console.log('Menu loaded:', menu);
}).go();
// Save menu
JSON.post('/OpenForum/AddOn/MenuEditor/Save', null,
'pageName=/MyPage&fileName=menu.json&data=' JSON.stringify(menuData))
.onSuccess(function(result) {
console.log('Menu saved');
}).go();
Menu Definition Format
{
"name": "Root",
"children": [
{"name": "Item 1", "link": "/Page1"},
{"name": "Item 2", "link": "/Page2",
"children": [
{"name": "Sub Item", "link": "/Page3"}
]
}
]
}