Authored by 毕凯

老菜单重构

... ... @@ -15,6 +15,12 @@ const collectData = require('./actions/collect_data');
const profile = require('./actions/profile');
const redis = require('../../lib/redis');
const {
normalMenus,
masterMenus,
businessMenus
} = require('../../config/menus');
const app = new Koa();
app.use(json());
... ... @@ -60,6 +66,10 @@ app.use(async(ctx, next) => {
ctx.locals.current_user = ctx.session.user;
}
ctx.locals.normalMenus = normalMenus;
ctx.locals.masterMenus = masterMenus;
ctx.locals.businessMenus = businessMenus;
let needMaster = mastersUrl.some(u => {
return ctx.request.path.indexOf(u) === 0;
});
... ...
... ... @@ -12,84 +12,21 @@
<h5 class="leftpanel-title">Navigation</h5>
<ul class="nav nav-pills nav-stacked nav-menu">
<li class="active"><a href="/"><i class="fa fa-home"></i> <span>Dashboard</span></a></li>
{{#if is_business}}
<li><a href="/cdn_cache/query">CDN清理</a></li>
<li><a href="/files/page">活动上传</a></li>
{{/if}}
{{#if not_business}}
{{!-- <li><a href="/projects"><i class="glyphicon glyphicon-th"></i> <span>项目</span></a></li> --}}
{{!--<li class="parent"><a href=""><i class="glyphicon glyphicon-wrench"></i> <span>APP Hotfix</span></a>
<ul class="children">
<li><a href="/hotfix/Android">Android</a></li>
<li><a href="/hotfix/iOS">iOS</a></li>
</ul>
</li>--}}
{{!-- <li class="parent"><a href=""><i class="fa fa-eye"></i> <span>监控中心</span></a>
<ul class="children">
<li><a href="/monitor/log">实时日志</a></li>
</ul>
</li> --}}
<li class="parent"><a href=""><i class="fa fa-history"></i> <span>缓存管理</span></a>
<ul class="children">
<li><a href="/page_cache/query">PageCahe清理</a></li>
<li><a href="/cdn_cache/query">CDN清理</a></li>
<li><a href="/product_cache/query">商品清理</a></li>
<li><a href="/api_cache">Memcached</a></li>
</ul>
</li>
{{#if is_business}}
{{#each businessMenus}}
<li><a href="{{link}}">{{title}}</a></li>
{{/each}}
{{/if}}
{{#if not_business}}
{{#each normalMenus}}
{{> common/submenus}}
{{/each}}
{{/if}}
{{#if is_master}}
<li class="parent"><a href=""><i class="fa fa-gears"></i> <span>系统管理</span></a>
<ul class="children">
<li><a href="/servers/setting">服务器配置</a></li>
<li><a href="/users/setting">用户管理</a></li>
<li><a href="/operation/log">操作记录</a></li>
</ul>
</li>
{{#each masterMenus}}
{{> common/submenus}}
{{/each}}
{{/if}}
<li><a href="/degrade"><i class="fa fa-hand-o-down"></i> <span>降级配置</span></a></li>
<li class="parent"><a><i class="fa fa-shield"></i> <span>滥用防护</span></a>
<ul class="children">
<li><a href="/crawler_black/ip">IP黑名单</a></li>
<li><a href="/crawler_white/ip">IP白名单</a></li>
<li><a href="/crawler_black/ua">UA黑名单</a></li>
<li><a href="/crawler_white/ua">UA白名单</a></li>
{{!-- <li>
<a href="/abuse_protection/abuse_protection">
<span>滥用防护</span>
</a>
</li> --}}
<li><a href="/risk_management/risk_management">风险控制</a></li>
</ul>
</li>
<li class="parent"><a><i class="fa fa-list"></i> <span>静态资源</span></a>
<ul class="children">
<li><a href="/files/page">活动上传</a></li>
<li><a href="/files/single-file">单文件上传</a></li>
</ul>
</li>
<li class="parent"><a><i class="fa fa-list"></i> <span>SEO管理</span></a>
<ul class="children">
<li><a href="/seo/rootwords"> <span>词根管理</span></a></li>
<li><a href="/keywords/expand"> <span>关键词管理</span></a></li>
<li><a href="/seo/tdk"><span>TDK管理</span></a></li>
<li><a href="/seo/category"><span>品类描述管理</span></a></li>
<li><a href="/seo/friendlink"><span>友链管理</span></a></li>
<li><a href="/seo/task"><span>定时任务管理</span></a></li>
</ul>
</li>
<li class="parent"><a><i class="fa fa-list"></i> <span>性能统计</span></a>
<ul class="children">
<li><a href="/profile/sort_client"> <span>浏览器排行榜</span></a></li>
<li><a href="/profile/sort_route"> <span>服务器路由排行榜</span></a></li>
<li><a href="/profile/sort_api"> <span>api排行榜</span></a></li>
<li><a href="/profile/error"> <span>错误信息统计</span></a></li>
</ul>
</li>
{{/if}}
</ul>
</div>
... ...
<li {{#if subMenus}}class="parent"{{/if}}>
{{#if subMenus}}
<a><i class="fa {{fa}}"></i> <span>{{title}}</span></a>
<ul class="children">
{{#each subMenus}}
<li><a href="{{link}}">{{title}}</a></li>
{{/each}}
</ul>
{{else}}
<li><a href="{{link}}"><i class="fa {{fa}}"></i> <span>{{title}}</span></a></li>
{{/if}}
</li>
\ No newline at end of file
... ...
... ... @@ -2,11 +2,13 @@ const normalMenus = [
{
title: 'Dashboard',
link: '/',
fa: 'fa-home',
icon: 'ios-home',
isClassic: true
},
{
title: '缓存管理',
fa: 'fa-history',
icon: 'document-text',
subMenus: [{
title: 'PageCahe清理',
... ... @@ -28,12 +30,14 @@ const normalMenus = [
},
{
title: '降级配置',
fa: 'fa-hand-o-down',
icon: 'document-text',
link: '/degrade',
isClassic: true
},
{
title: '滥用防护',
fa: 'fa-shield',
icon: 'document-text',
subMenus: [{
title: 'IP黑名单',
... ... @@ -59,6 +63,7 @@ const normalMenus = [
},
{
title: '静态资源',
fa: 'fa-list',
icon: 'document-text',
subMenus: [{
title: '活动上传',
... ... @@ -72,6 +77,7 @@ const normalMenus = [
},
{
title: 'SEO管理',
fa: 'fa-list',
icon: 'document-text',
subMenus: [{
title: '词根管理',
... ... @@ -101,6 +107,7 @@ const normalMenus = [
},
{
title: '性能统计',
fa: 'fa-list',
icon: 'document-text',
subMenus: [{
title: '浏览器排行榜',
... ... @@ -122,6 +129,7 @@ const normalMenus = [
},
{
title: '日志查询',
fa: 'fa-list',
icon: 'document-text',
subMenus: [{
title: 'Node 日志',
... ... @@ -133,6 +141,7 @@ const normalMenus = [
const masterMenus = [
{
title: '系统管理',
fa: 'fa-gear',
icon: 'document-text',
subMenus: [{
title: '服务器配置',
... ...