From 019deb30240acb9f16592e19a1858c6a1f94f54f Mon Sep 17 00:00:00 2001 From: echicken <echicken@bbs.electronicchicken.com> Date: Fri, 23 Aug 2019 12:51:57 -0400 Subject: [PATCH] Move navbar related functions into navbar component file. --- web/components/.examples/navbar.xjs | 34 ++++++++++++++++++++++++++++ web/root/index.xjs | 35 ++--------------------------- 2 files changed, 36 insertions(+), 33 deletions(-) diff --git a/web/components/.examples/navbar.xjs b/web/components/.examples/navbar.xjs index 23c9eec77f..b2bbdd12d5 100644 --- a/web/components/.examples/navbar.xjs +++ b/web/components/.examples/navbar.xjs @@ -1,3 +1,37 @@ +<?xjs function _subMenu(obj, title, path) { ?> + <li class="dropdown<?xjs if (path.match(/\//g).length > 1) write('-submenu'); ?>"> + <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> + <?xjs write(title.replace(/^.*\-/, '')); ?> + <span class="caret"></span> + </a> + <ul class="dropdown-menu"> + <?xjs _menu(obj.list, path); ?> + </ul> + </li> +<?xjs } ?> + +<?xjs + function _menu(obj, path) { + Object.keys(obj).forEach(function (e) { + if (obj[e].type == 'list') { + _subMenu(obj[e], e, (path || '') + e + '/'); + } else { +?> + <li> + <?xjs if (obj[e].type == 'link') { ?> + <a class="dropdown-item" href="./?page=<?xjs write(obj[e].page); ?>" target="_blank"> + <?xjs } else { ?> + <a class="dropdown-item" href="./?page=<?xjs write((path || '') + obj[e].page); ?>"> + <?xjs } ?> + <? write(e); ?> + </a> + </li> + <?xjs + } + }); + } +?> + <nav class="navbar navbar-default navbar-fixed-top"> <div class="container<?xjs if (settings.layout_full_width) write('-fluid'); ?>"> <div class="navbar-header"> diff --git a/web/root/index.xjs b/web/root/index.xjs index 313db93d4e..4e3f3b3f4a 100644 --- a/web/root/index.xjs +++ b/web/root/index.xjs @@ -19,42 +19,11 @@ var page_ctrl = getCtrlLine(settings.web_pages + page); ?> -<?xjs function _subMenu(obj, title, path) { ?> - <li class="dropdown<?xjs if (path.match(/\//g).length > 1) write('-submenu'); ?>"> - <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> - <?xjs write(title.replace(/^.*\-/, '')); ?> - <span class="caret"></span> - </a> - <ul class="dropdown-menu"> - <?xjs _menu(obj.list, path); ?> - </ul> - </li> -<?xjs } ?> - <?xjs - function _menu(obj, path) { - Object.keys(obj).forEach(function (e) { - if (obj[e].type == 'list') { - _subMenu(obj[e], e, (path || '') + e + '/'); - } else { -?> - <li> -<?xjs if (obj[e].type == 'link') { ?> - <a class="dropdown-item" href="./?page=<?xjs write(obj[e].page); ?>" target="_blank"> -<?xjs } else { ?> - <a class="dropdown-item" href="./?page=<?xjs write((path || '') + obj[e].page); ?>"> -<?xjs } ?> - <?xjs write(e); ?> - </a> - </li> -<?xjs }});} ?> - -<?xjs function _sidebar() { + function _sidebar() { if (settings.layout_sidebar_off || page_ctrl.options.no_sidebar) return; ?> - <div class="col-xs-6 col-sm-3 sidebar-offcanvas" id="sidebar"> - <?xjs writeSidebarModules(); ?> - </div> + <div class="col-xs-6 col-sm-3 sidebar-offcanvas" id="sidebar"><? writeSidebarModules(); ?></div> <?xjs } ?> <!DOCTYPE html> -- GitLab