sysIndex-jp.jsp 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522
  1. <%@ page contentType="text/html;charset=UTF-8" %>
  2. <%@ include file="/webpage/include/taglib.jsp"%>
  3. <html>
  4. <head>
  5. <meta charset="utf-8">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <meta name="renderer" content="webkit">
  8. <title>${fns:getConfig('productName')}</title>
  9. <meta name="decorator" content="ani"/>
  10. <link href="${ctxStatic}/common/css/jp-menu.css" rel="stylesheet" />
  11. <script src="${ctxStatic}/plugin/js-menu/contabs.js"></script>
  12. <link id="theme-tab" href="${ctxStatic}/plugin/js-menu/menuTab-${cookie.theme.value==null?'blue':cookie.theme.value}.css" rel="stylesheet" />
  13. <%-- <%@ include file="/webpage/include/systemInfoSocket-init.jsp"%>
  14. <%@ include file="/webpage/include/layIM-init.jsp"%>--%>
  15. <style>
  16. .push-right #sidebar-nav{
  17. display:block;
  18. }
  19. .navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
  20. background-color: transparent !important;
  21. }
  22. .navbar-inverse .navbar-toggle {
  23. border-color: transparent !important;
  24. }
  25. </style>
  26. </head>
  27. <body class="${cookie.white.value} jp-hr">
  28. <nav class="navbar navbar-inverse display-default opnav-navbar navbar-fixed-top" role="navigation">
  29. <div class="topnav-navbar">
  30. <div class="navbar-header text-center">
  31. <button type="button" class="navbar-toggle" id="showMenu">
  32. <span class="sr-only">Toggle navigation</span>
  33. <span class="icon-bar"></span>
  34. <span class="icon-bar"></span>
  35. <span class="icon-bar"></span>
  36. </button>
  37. <a class="navbar-brand J_menuItem" href="${ctx}/home" data-index="0">zjgd</a>
  38. </div>
  39. </div>
  40. <div class="navbar-container container-fluid">
  41. <div class="collapse navbar-collapse navbar-collapse-toolbar row" id="jpMenu">
  42. <ul id="o1" class="nav navbar-toolbar nav-tabs navbar-left" style="width: calc( 100% - 680px)" role="tablist">
  43. <t:jpMenu menu="${fns:getTopMenu()}" position="top"></t:jpMenu>
  44. </ul>
  45. <ul class="nav navbar-nav pull-right navbar-right" style="margin: 0px">
  46. <li>
  47. <a href="${ctx}/home" class="J_menuItem"><i class="fa fa-home" style="font-size:14px;"></i></a>
  48. </li>
  49. <li class="hidden-xs">
  50. <a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown"><i class="fa fa-language"></i></a>
  51. <ul class="dropdown-menu">
  52. <li class="${cookie.tab.value!=false?'active':''}">
  53. <a id="showTab" href="#">开启tab</a>
  54. </li>
  55. <li class="${cookie.tab.value==false?'active':''}">
  56. <a id="closeTab" href="#">关闭tab</a>
  57. </li>
  58. </ul>
  59. </li>
  60. <li class="dropdown">
  61. <a href="#" class="dropdown-toggle" data-toggle="dropdown">
  62. <i class="fa fa-envelope-o"></i>
  63. <span class="label label-info">${noReadCount }</span>
  64. </a>
  65. <ul class="dropdown-menu animated fadeIn">
  66. <li class="messages-top text-center">
  67. 你有 ${noReadCount} 封未读邮件.
  68. </li>
  69. <c:forEach items="${mailPage.list}" var="mailBox">
  70. <li class="dropdown-messages">
  71. <a class="J_menuItem" title="站内信" href="${ctx}/iim/mailBox/detail?id=${mailBox.id}">
  72. <div class="message-sender">
  73. ${mailBox.sender.name }<small class="pull-right">${fns:getTime(mailBox.sendtime)}前</small>
  74. </div>
  75. <div class="message-header">
  76. ${mailBox.mail.overview} <small class="pull-right">
  77. <fmt:formatDate value="${mailBox.sendtime}" pattern="yyyy-MM-dd HH:mm:ss"/></small>
  78. </div>
  79. </a>
  80. </li>
  81. </c:forEach>
  82. <li class=" text-center">
  83. <a class="J_menuItem" href="${ctx}/iim/mailBox/list?orderBy=sendtime desc">
  84. <font color='gray'> <i class="fa fa-envelope"></i> 查看所有邮件</font>
  85. </a>
  86. </li>
  87. </ul>
  88. </li>
  89. <li class="dropdown">
  90. <a href="#" class="dropdown-toggle" data-toggle="dropdown">
  91. <i class="fa fa-bell-o"></i>
  92. <span class="label label-info">${count}</span>
  93. </a>
  94. <ul class="dropdown-menu animated fadeIn">
  95. <li class="messages-top text-center">
  96. 你有 ${count} 条新通知.
  97. </li>
  98. <c:forEach items="${page.list}" var="oaNotify">
  99. <li class="dropdown-notifications">
  100. <a class="J_menuItem" href="${ctx}/oa/oaNotify/form?id=${oaNotify.id}&isSelf=true">
  101. <div class="notification">
  102. <i class="fa fa-bell-o"></i> ${fns:abbr(oaNotify.title,50)}
  103. <span class="pull-right text-muted small">${fns:getTime(oaNotify.updateDate)}前</span>
  104. </div>
  105. </a>
  106. </li>
  107. </c:forEach>
  108. <li class=" text-center">
  109. <a class="J_menuItem" href="${ctx}/oa/oaNotify/self">
  110. <font color='gray'><i class="fa fa-bell"></i>查看所有通知</font>
  111. </a>
  112. </li>
  113. </ul>
  114. </li>
  115. <li class="dropdown color-picker">
  116. <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
  117. <span><i class="fa fa-gears"></i></span>
  118. </a>
  119. <ul class="dropdown-menu pull-right animated fadeIn" role="menu" style="width:250px; padding-left: 10px;">
  120. <li class="padder-h-xs">
  121. <div class="theme-icons">
  122. <label data-theme="white_blue" class="ng-star-inserted" style="background:#3ca2e0;">
  123. <div class="areas">
  124. <span class="nav" style="background: rgb(255, 255, 255);"></span>
  125. <span class="con" style="background: rgb(245, 247, 250);"></span>
  126. </div>
  127. </label>
  128. <label data-theme="white_green" class="ng-star-inserted" style="background: #27ae60;">
  129. <div class="areas">
  130. <span class="nav" style="background: rgb(255, 255, 255);"></span>
  131. <span class="con" style="background: rgb(245, 247, 250);"></span>
  132. </div>
  133. </label>
  134. <label data-theme="white_red" class="ng-star-inserted" style="background: #D24D57;">
  135. <div class="areas">
  136. <span class="nav" style="background: rgb(255, 255, 255);"></span>
  137. <span class="con" style="background: rgb(245, 247, 250);"></span>
  138. </div>
  139. </label>
  140. <label data-theme="white_purple" class="ng-star-inserted" style="background: #957BBD;">
  141. <div class="areas">
  142. <span class="nav" style="background: rgb(255, 255, 255);"></span>
  143. <span class="con" style="background: rgb(245, 247, 250);"></span>
  144. </div>
  145. </label>
  146. <label data-theme="white_midnight-blue" class="ng-star-inserted" style="background: #2c3e50;">
  147. <div class="areas">
  148. <span class="nav" style="background: rgb(255, 255, 255);"></span>
  149. <span class="con" style="background: rgb(245, 247, 250);"></span>
  150. </div>
  151. </label>
  152. <label data-theme="white_lynch" class="ng-star-inserted" style="background: #6C7A89;">
  153. <div class="areas">
  154. <span class="nav" style="background: rgb(255, 255, 255);"></span>
  155. <span class="con" style="background: rgb(245, 247, 250);"></span>
  156. </div>
  157. </label>
  158. <!---黑色主题-->
  159. <label data-theme="black_blue" class="ng-star-inserted" style="background:#3ca2e0;">
  160. <div class="areas">
  161. <span class="nav" style="background: rgb(64, 64, 64);"></span>
  162. <span class="con" style="background: rgb(245, 247, 250);"></span>
  163. </div>
  164. </label>
  165. <label data-theme="black_green" class="ng-star-inserted" style="background: #27ae60;">
  166. <div class="areas">
  167. <span class="nav" style="background: rgb(64, 64, 64);"></span>
  168. <span class="con" style="background: rgb(245, 247, 250);"></span>
  169. </div>
  170. </label>
  171. <label data-theme="black_red" class="ng-star-inserted" style="background: #D24D57;">
  172. <div class="areas">
  173. <span class="nav" style="background: rgb(64, 64, 64);"></span>
  174. <span class="con" style="background: rgb(245, 247, 250);"></span>
  175. </div>
  176. </label>
  177. <label data-theme="black_purple" class="ng-star-inserted" style="background: #957BBD;">
  178. <div class="areas">
  179. <span class="nav" style="background: rgb(64, 64, 64);"></span>
  180. <span class="con" style="background: rgb(245, 247, 250);"></span>
  181. </div>
  182. </label>
  183. <label data-theme="black_midnight-blue" class="ng-star-inserted" style="background: #2c3e50;">
  184. <div class="areas">
  185. <span class="nav" style="background: rgb(64, 64, 64);"></span>
  186. <span class="con" style="background: rgb(245, 247, 250);"></span>
  187. </div>
  188. </label>
  189. <label data-theme="black_lynch" class="ng-star-inserted" style="background: #6C7A89;">
  190. <div class="areas">
  191. <span class="nav" style="background: rgb(64, 64, 64);"></span>
  192. <span class="con" style="background: rgb(245, 247, 250);"></span>
  193. </div>
  194. </label>
  195. </div>
  196. </li>
  197. </ul>
  198. </li>
  199. <li class="hidden-xs">
  200. <a href="#" onClick="toggleFullScreen()" data-toggle="fullscreen"><i class="fa fa-arrows-alt"></i></a>
  201. </li>
  202. <li class="dropdown admin-dropdown">
  203. <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
  204. <img src="<c:if test="${fns:getUser().photo == null || fns:getUser().photo==''}">${ctxStatic}/common/images/flat-avatar.png</c:if> <c:if test="${fns:getUser().photo != null && fns:getUser().photo!=''}">${fns:getUser().photo}</c:if>" class="topnav-img" style=" width: 30px;
  205. margin-right: 5px;
  206. max-height: 30px;" alt=""><span class="hidden-sm">${fns:getUser().name}</span>
  207. </a>
  208. <ul class="dropdown-menu animated fadeIn" role="menu">
  209. <li><a class="J_menuItem" href="${ctx}/sys/user/imageEdit">修改头像</a>
  210. </li>
  211. <li><a class="J_menuItem" href="${ctx }/sys/user/info">个人资料</a>
  212. </li>
  213. <li><a class="J_menuItem" href="${ctx }/iim/contact/index">我的通讯录</a>
  214. </li>
  215. <li><a class="J_menuItem" href="${ctx }/iim/mailBox/list">信箱</a>
  216. </li>
  217. <li><a href="javaScript:changeStyle()">切换成左侧菜单</a>
  218. <li><a href="${ctx}/logout">安全退出</a>
  219. </li>
  220. </ul>
  221. </li>
  222. </ul>
  223. </div>
  224. </div>
  225. <ul class="nav navbar-nav pull-right hidd">
  226. <li class="dropdown admin-dropdown">
  227. <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
  228. <img src="<c:if test="${fns:getUser().photo == null || fns:getUser().photo==''}">${ctxStatic}/common/images/flat-avatar.png</c:if> <c:if test="${fns:getUser().photo != null && fns:getUser().photo!=''}">${fns:getUser().photo}</c:if>" class="topnav-img" style=" width: 30px;
  229. margin-right: 5px;
  230. max-height: 30px;" alt=""><span class="hidden-sm">${fns:getUser().name}</span>
  231. </a>
  232. <ul class="dropdown-menu animated fadeIn" role="menu">
  233. <t:jpMenu menu="${fns:getTopMenu()}" position="top"></t:jpMenu>
  234. <hr/>
  235. <li><a href="javaScript:changeStyle()">切换成左侧菜单</a>
  236. <li><a href="${ctx}/logout">安全退出</a>
  237. </li>
  238. </ul>
  239. </li>
  240. </ul>
  241. </nav>
  242. <aside id="sidebar">
  243. <div class="tab-content">
  244. <div id="page-wrapper"> <!--class="nav-small"-->
  245. <div id="nav-col" class="nav-col">
  246. <section id="col-left" class="nano">
  247. <div id="col-left-inner" class="nano-content">
  248. <div id="user-left-box" class="clearfix hidden-sm hidden-xs">
  249. <a href="#"><img src="<c:if test="${fns:getUser().photo == null || fns:getUser().photo==''}">${ctxStatic}/common/images/flat-avatar.png</c:if> <c:if test="${fns:getUser().photo != null && fns:getUser().photo!=''}">${fns:getUser().photo}</c:if>" /></a>
  250. <div class="user-box">
  251. <span class="name">
  252. ${fns:getUser().name}
  253. </span>
  254. <a id="user-link" href="#" class="dropdown-toggle">
  255. <font>${fns:getUser().roleNames}<b class="caret"></b></font>
  256. </a>
  257. </div>
  258. </div>
  259. <div class="collapse navbar-collapse navbar-ex1-collapse tab-content" id="sidebar-nav">
  260. <ul class="nav nav-pills nav-stacked">
  261. <li>
  262. <ul id="user-menu" class="submenu">
  263. <li><a class="J_menuItem" href="${ctx}/sys/user/imageEdit">修改头像</a>
  264. </li>
  265. <li><a class="J_menuItem" href="${ctx }/sys/user/info">个人资料</a>
  266. </li>
  267. <li><a class="J_menuItem" href="${ctx }/iim/contact/index">我的通讯录</a>
  268. </li>
  269. <li><a class="J_menuItem" href="${ctx }/iim/mailBox/list">信箱</a>
  270. </li>
  271. <li><a href="javaScript:changeStyle()">切换成左侧菜单</a>
  272. </li>
  273. <li><a href="${ctx}/logout">安全退出</a>
  274. </li>
  275. </ul>
  276. </li>
  277. </ul>
  278. <t:jpMenu menu="${fns:getTopMenu()}" position="left"></t:jpMenu>
  279. </div>
  280. </div>
  281. </section>
  282. </div>
  283. </div>
  284. </div>
  285. </aside>
  286. <section id="body-container" class="animation">
  287. <!--选项卡 -->
  288. <div class="main-container" id="main-container">
  289. <div class="main-content">
  290. <div class="main-content-inner">
  291. <div id="breadcrumbs" class="${cookie.tab.value!=false?'breadcrumbs':'un-breadcrumbs'}">
  292. <div class="content-tabs">
  293. <a id="hideMenu" class="roll-nav roll-left-0 J_tabLeft"><i class="fa fa-align-justify"></i>
  294. </a>
  295. <button class="roll-nav roll-left J_tabLeft"><i class="fa fa-backward"></i>
  296. </button>
  297. <nav class="page-tabs J_menuTabs">
  298. <div class="page-tabs-content">
  299. <a href="javascript:;" class="active J_menuTab" data-id="${ctx}/home">首页</a>
  300. </div>
  301. </nav>
  302. <button class="roll-nav roll-right J_tabRight"><i class="fa fa-forward"></i>
  303. </button>
  304. <a href="${ctx}/logout" class="roll-nav roll-right J_tabExit"><i class="fa fa fa-sign-out"></i> 退出</a>
  305. </div>
  306. </div>
  307. <div class="J_mainContent" id="content-main" style="${cookie.tab.value!=false?'height:calc(100% - 40px)':'height:calc(100%)'}">
  308. <iframe class="J_iframe" name="iframe0" width="100%" height="100%" src="${ctx}/home" frameborder="0" data-id="${ctx}/home" seamless></iframe>
  309. </div>
  310. </div>
  311. </div>
  312. </div>
  313. <%--<div class="footer">--%>
  314. <%--<div class="pull-left"><a href="http://www.jeeplus.org">http://www.jeeplus.org</a> &copy; 2015-2025</div>--%>
  315. <%--</div>--%>
  316. </section>
  317. <script>
  318. $(function(){
  319. $.addtabs.drop();
  320. $('#showMenu').click(function() {
  321. $('body').toggleClass('push-right');
  322. });
  323. $('#hideMenu').click(function () {
  324. $('#page-wrapper').toggleClass('nav-small');
  325. $('#col-left').toggleClass('nano');
  326. $('body').removeClass('push-right')
  327. $('body').toggleClass('push-left');
  328. });
  329. $('#showTab').click(function () {
  330. $('#showTab').parent().toggleClass("active")
  331. $('#closeTab').parent().toggleClass("active")
  332. $("#breadcrumbs").attr("class","breadcrumbs");
  333. $("#content-main").css("height","calc(100% - 40px)")
  334. $.get('${ctx}/tab/true?url='+window.top.location.href,function(result){ });
  335. });
  336. $('#closeTab').click(function () {
  337. $('#showTab').parent().toggleClass("active")
  338. $('#closeTab').parent().toggleClass("active")
  339. $("#breadcrumbs").attr("class","un-breadcrumbs");
  340. $("#content-main").css("height","calc(100%)")
  341. $.get('${ctx}/tab/false',function(result){ });
  342. });
  343. $(".theme-icons label").click(function () {
  344. $("#theme-font").remove();
  345. $(this).append('<i id="theme-font" class=" anticon anticon-check ng-star-inserted fa fa-check "></i>');
  346. changeTheme($(this).attr('data-theme'));
  347. })
  348. });
  349. /**
  350. *切换主题
  351. */
  352. function changeStyle(){
  353. $.get('${ctx}/style/default',function(result){
  354. window.location.reload();
  355. });
  356. }
  357. /**
  358. * 切换颜色
  359. * @param theme
  360. */
  361. function changeTheme(style_theme) {
  362. var style = style_theme.split("_")[0];
  363. var theme = style_theme.split("_")[1];
  364. if(style == "black"){
  365. $("body").removeClass("theme-whbl");
  366. }else{
  367. $("body").addClass("theme-whbl");
  368. }
  369. var link = $('<link>')
  370. .appendTo('head')
  371. .attr({type : 'text/css', rel : 'stylesheet'})
  372. .attr('href', '${ctxStatic}/common/css/app-'+theme+'.css');
  373. var tabLink = $('<link>')
  374. .appendTo('head')
  375. .attr({type : 'text/css', rel : 'stylesheet'})
  376. .attr('href', '${ctxStatic}/plugin/js-menu/menuTab-'+theme+'.css');
  377. var childrenLink= $('<link>').appendTo($(".J_iframe").contents().find("head"))
  378. .attr({type : 'text/css', rel : 'stylesheet'})
  379. .attr('href', '${ctxStatic}/common/css/app-'+theme+'.css');
  380. $.get('${ctx}/theme/'+style_theme,function(result){
  381. setTimeout(function () {
  382. $('#theme').remove();
  383. $('#theme-tab').remove();
  384. $(".J_iframe").contents().find("#theme").remove();
  385. }, 500);
  386. link.attr("id","theme");
  387. childrenLink.attr("id","theme");
  388. tabLink.attr("id","theme-tab")
  389. });
  390. }
  391. $(function ($) {
  392. $('#sidebar-nav a').on('click', function (e) {
  393. var _this = $(this);
  394. $('#sidebar-nav a').each(function(){
  395. if($(this) != _this){
  396. if($(this).hasClass("active")){
  397. $(this).removeClass("active");
  398. }
  399. }
  400. });
  401. if(!_this.hasClass("active")){
  402. _this.addClass("active")
  403. _this.parent("li.open").find("a").first().addClass("active");
  404. }
  405. });
  406. $('#sidebar-nav .dropdown-toggle').on('click', function (e) {
  407. e.preventDefault();
  408. var $item = $(this).parent();
  409. if (!$item.hasClass('open')) {
  410. $item.parent().find('.open .submenu').slideUp('fast');
  411. $item.parent().find('.open').toggleClass('open');
  412. }
  413. $item.toggleClass('open');
  414. if ($item.hasClass('open')) {
  415. $item.children('.submenu').slideDown('fast');
  416. }
  417. else {
  418. $item.children('.submenu').slideUp('fast');
  419. }
  420. if ($("#user-menu").parent().hasClass('open')) {
  421. $("#user-menu").slideUp('fast');
  422. $("#user-menu").parent().toggleClass('open');
  423. }
  424. });
  425. $('#user-link').on('click',function () {
  426. var $item = $("#user-menu");
  427. $item.parent().toggleClass('open');
  428. if ($item.parent().hasClass('open')) {
  429. $item.slideDown('fast');
  430. }
  431. else {
  432. $item.slideUp('fast');
  433. }
  434. $("#sidebar-nav .tab-pane").find('.open .submenu').slideUp('fast');
  435. $("#sidebar-nav .tab-pane").find('.open').toggleClass('open');
  436. })
  437. $('body').on('mouseenter', '#page-wrapper.nav-small #sidebar-nav .dropdown-toggle', function (e) {
  438. var $sidebar = $(this).parents('#sidebar-nav');
  439. if ($(document).width() >= 992) {
  440. var $item = $(this).parent();
  441. $item.addClass('open');
  442. $item.children('.submenu').slideDown('fast');
  443. }
  444. });
  445. $('body').on('mouseleave', '#page-wrapper.nav-small #sidebar-nav > div > .nav-pills > li', function (e) {
  446. var $sidebar = $(this).parents('#sidebar-nav');
  447. if ($(document).width() >= 992) {
  448. var $item = $(this);
  449. if ($item.hasClass('open')) {
  450. $item.find('.open .submenu').slideUp('fast');
  451. $item.find('.open').removeClass('open');
  452. $item.children('.submenu').slideUp('fast');
  453. }
  454. $item.removeClass('open');
  455. }
  456. });
  457. });
  458. </script>
  459. </body>
  460. </html>