menu.ejs 6.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <div class="main-nav d-flex align-items-start flex-column">
  2. <div class="logo w-100 logo-parent">
  3. <img class="w-50" style="padding: 5px" src="/public/css/logo.png">
  4. <span class="text-white logo-project-name"><% if (ctx.subProject) { %> <%- ctx.subProject.name %><% } else { %> <span data-toggle="tooltip" data-placement="right" title="" data-original-title="<%- ctx.session.sessionProject.name %>"><%- ctx.session.sessionProject.name %></span><% } %></span>
  5. <% if (ctx.subProject) { %>
  6. <span class="poj-info btn-warning" data-toggle="tooltip" data-placement="right" title="" data-original-title="<%- ctx.subProject.name %>"><i class="fa fa-cube te"></i></span>
  7. <% } %>
  8. </div>
  9. <div class="nav-top">
  10. <ul class="nav nav-pills nav-stacked bg-nav">
  11. <% if (maintainData.status !== maintainConst.status.notset && new Date().getTime() + (60*60*1000) > parseFloat(maintainData.maintain_time)) { %>
  12. <!--系统维护信息-->
  13. <li class="bg-danger">
  14. <a class="text-white maintain-icon"><i class="fa fa-wrench "></i><div class="d-inline-block" style="vertical-align: text-bottom;"> 系统维护</div>
  15. <span class="bg-danger maintain-info">系统将于 <%- ctx.helper.dateTran(parseFloat(maintainData.maintain_time)) %> 开始停机维护<%- (maintainData.duration !== maintainConst.duration.forever ? ',持续'+ maintainConst.durationString[maintainData.duration] +'。' : '') %></span></a></li>
  16. <!--系统维护信息 end-->
  17. <% } %>
  18. <% for (const index in ctx.menuList) { %>
  19. <% const menu = ctx.menuList[index]; %>
  20. <% if (!menu.display) { continue } %>
  21. <% if (menu.children && menu.children.length > 0) { %>
  22. <li>
  23. <a href="javascript:void(0);" id="<%- 'nav_' + index%>" class="nav-up-down">
  24. <i class="fa <%- menu.icon %>"></i>
  25. <% if (menu.caption) { %><span class="d-inline-block" style="vertical-align: text-bottom;"><%- menu.caption %></span><% } %>
  26. <i class="fa fa-angle-down d-inline-block child-up-down"></i>
  27. </a>
  28. </li>
  29. <% for (const child of menu.children) { %>
  30. <% if (!child.display) { continue } %>
  31. <li data-index="<%- 'nav_' + index %>" class="child-bg <% if((ctx.controllerName === child.controller && (!child.notIncludedUrl || !child.notIncludedUrl.some(item => ctx.url.includes(item)))) || (!!child.controllers && child.controllers.indexOf(ctx.controllerName) >= 0 && (!child.includedUrl || !child.includedUrl[ctx.controllerName] || child.includedUrl[ctx.controllerName].some(item => ctx.url.includes(item)))) || (child.url && child.url === ctx.url)) { %>active<% } %>">
  32. <a href="<%- child.url %>" data-toggle="tooltip" data-placement="right" title="" data-original-title="<%- child.name %>">
  33. <i></i>
  34. <% if (child.caption) { %><span class="d-inline-block" style="vertical-align: text-bottom;"><%- child.caption %></span><% } %>
  35. </a>
  36. </li>
  37. <% } %>
  38. <% } else { %>
  39. <li <% if((ctx.controllerName === menu.controller && (!menu.notIncludedUrl || !menu.notIncludedUrl.some(item => ctx.url.includes(item)))) || (!!menu.controllers && menu.controllers.indexOf(ctx.controllerName) >= 0 && (!menu.includedUrl || !menu.includedUrl[ctx.controllerName] || menu.includedUrl[ctx.controllerName].some(item => ctx.url.includes(item)))) || (menu.url && menu.url === ctx.url)) { %>class="active"<% } %>>
  40. <% if (menu.controller === 'datacollect' && ctx.subProject.data_collect_pages.includes('8') && ctx.subProject.data_collect === 8) { %>
  41. <a href="<%- menu.url %>" target="_blank" id="<%- 'nav_' + index%>" data-toggle="tooltip" data-placement="right" title="" data-original-title="<%- menu.name %>">
  42. <i class="fa <%- menu.icon %>"></i>
  43. <% if (menu.caption) { %><span class="d-inline-block" style="vertical-align: text-bottom;"><%- menu.caption %></span><% } %>
  44. </a>
  45. <% } else { %>
  46. <a href="<%- menu.url %>" id="<%- 'nav_' + index%>" data-toggle="tooltip" data-placement="right" title="" data-original-title="<%- menu.name %>">
  47. <i class="fa <%- menu.icon %>"></i>
  48. <% if (menu.caption) { %><span class="d-inline-block" style="vertical-align: text-bottom;"><%- menu.caption %></span><% } %>
  49. </a>
  50. <% } %>
  51. </li>
  52. <% } %>
  53. <% } %>
  54. </ul>
  55. </div>
  56. <div class="nav-bottom mt-auto">
  57. <ul class="nav nav-pills nav-stacked bg-nav">
  58. <li><a href="https://doc.zhzdwd.com/docs/yunjiliangAPI/yunjiliangAPI-1ccjk7h426enp" target="_blank" data-toggle="tooltip" data-placement="right" title="" data-original-title="数据接口" class="d-inline-block">API</a></li>
  59. </ul>
  60. <ul class="nav nav-pills nav-stacked bg-nav">
  61. <% if (ctx.isProjectController) { %>
  62. <li <% if (ctx.controllerName === 'setting') { %>class="active"<% } %>><a href="/setting/info" data-toggle="tooltip" data-placement="right" title="" data-original-title="平台设置"><i class="fa fa-cogs"></i><span class="d-inline-block" style="vertical-align: text-bottom;">平台设置</span></a></li>
  63. <% } else if (ctx.session.sessionUser.is_admin) { %>
  64. <li <% if (ctx.controllerName === 'setting') { %>class="active"<% } %>><a href="/sp/<%- ctx.subProject.id %>/setting/category" data-toggle="tooltip" data-placement="right" title="" data-original-title="项目设置"><i class="fa fa-cogs"></i><span class="d-inline-block" style="vertical-align: text-bottom;"> 项目设置</span></a></li>
  65. <% } %>
  66. </ul>
  67. <div class="dropup mb-1 ml-1 mr-1 d-inline-block text-center" style="width: 100px;">
  68. <a href="" class="btn btn-sm btn-light p-1" style="width: 70px;" data-toggle="dropdown" aria-haspopup="false" aria-expanded="false">
  69. <%- ctx.session.sessionUser.name.substr(ctx.session.sessionUser.name.length > 6 ? ctx.session.sessionUser.name.length - 6 : 0) %>
  70. </a>
  71. <div class="dropdown-menu">
  72. <a href="/profile/info" class="dropdown-item">账号资料</a>
  73. <a href="/profile/safe" class="dropdown-item">账号安全</a>
  74. <div class="dropdown-divider"></div>
  75. <a href="https://doc.zhzdwd.com/docs/measure" target="_blank" class="dropdown-item">用户手册</a>
  76. <a href="/logout" class="dropdown-item">退出登录</a>
  77. </div>
  78. </div>
  79. </div>
  80. </div>