index.html 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="renderer" content="webkit">
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  7. <script src="__PUBLIC__/base/iconfont.js"></script>
  8. <title>{$web.name} - {$web.title}</title>
  9. {load href="__PUBLIC__/base/base.css,__PUBLIC__/manage/frame.css,__PUBLIC__/js/do.js,__PUBLIC__/admin/common.js,__PUBLIC__/js/package.js" /}
  10. </head>
  11. <body>
  12. {if $user->parent_id == 0}
  13. <div id="app-navbar">
  14. <a id="homeLink" href="{:url('system/passport.index/index')}" target="_top"></a>
  15. <ul>
  16. <a href="javascript:;" class="apps"><li><svg class="icon" aria-hidden="true"><use xlink:href="#icon-classify_icon"></use></svg><p>应用</p></li></a>
  17. {if !empty($apps) && !empty($member_miniapp_id)}
  18. <a href="{:url('system/passport.user/index')}" target="iframe"><li><svg class="icon white" aria-hidden="true"><use xlink:href="#icon-my_icon"></use></svg><p>会员</p></li></a>
  19. <a href="{:url('system/passport.member/staff')}" target="iframe"><li><svg class="icon white" aria-hidden="true"><use xlink:href="#icon-license"></use></svg><p>账号</p></li></a>
  20. <a href="{:url('system/passport.message/index')}" target="iframe"><li id="message"><svg class="icon white" aria-hidden="true"><use xlink:href="#icon-wodefankui"></use></svg><p>消息</p></li></a>
  21. {/if}
  22. <a href="{:url('system/passport.bank/bill')}" target="iframe"><li><svg class="icon white" aria-hidden="true"><use xlink:href="#icon-chuzhijine"></use></svg><p>财务</p></li></a>
  23. <!-- <a href="{:url('system/passport.support/index')}" target="iframe"><li><svg class="icon white" aria-hidden="true"><use xlink:href="#icon-service_icon"></use></svg><p>工单</p></li></a> -->
  24. </ul>
  25. <div class="user">
  26. <ul>
  27. <a class="shortcut" href="{:url('system/passport.appshop/index')}" target="iframe"><li class="focus"><svg class="icon white" aria-hidden="true"><use xlink:href="#icon-store_icon"></use></svg><p>商店</p></li></a>
  28. </ul>
  29. </div>
  30. </div>
  31. {/if}
  32. <div id="app-title" style="left:{$user->parent_id?0:70}px">
  33. <a href="{:url('system/passport.setting/index')}" target="iframe" class="appname">{$appname}</a>
  34. <div class="breadcrumb">
  35. <ul>
  36. <li><a href="javascript:;"><i class="iconfont icon-home_icon"></i>{$web.name}</a></li>
  37. {if !empty($member_miniapp_id)}<li><a href="javascript:;"> / <span class="blue">{$member_miniapp.appname}</span></a></li>{/if}
  38. </ul>
  39. <ul id="breadcrumb"></ul>
  40. </div>
  41. <div class="appuser" rel="layer" href="javascript:;"><i class="iconfont icon-setup_icon"></i><span>帐号</span><i class="iconfont icon-arrowdown"></i></div>
  42. </div>
  43. <div id="nav" style="left:{$user->parent_id?0:70}px"></div>
  44. <div id="main" style="left:{if $user->parent_id}140{else}{$member_miniapp_id?210:70}{/if}px"><iframe id="iframe" name="iframe" src="{$welcome}" frameborder="0"></iframe></div>
  45. <div id="layer">
  46. {if !$user->parent_id}
  47. <div class="item"><a href="{:url('system/passport.member/index')}" target="iframe"><i class="iconfont icon-my_icon"></i> 帐号设置</a></div>
  48. <div class="item fn-cp password divider" url="{:url('system/passport.member/safepassword')}"><i class="iconfont icon-security"></i> 安全密码</div>
  49. {/if}
  50. <div class="item fn-cp password divider" url="{:url('system/passport.index/password')}"><i class="iconfont icon-xiugaidenglumima"></i> 登录密码</div>
  51. <div class="item"><a href="{:url('system/passport.login/logout')}" target="main"><i class="iconfont icon-shutdown_icon"></i> 退出管理</a></div>
  52. </div>
  53. <div class="leftlayer" id="applayer" class="fn-hide">
  54. <div class="title">
  55. <span>我的应用</span>
  56. <span class="iconfont icon-cuowu closeLayer"></span>
  57. </div>
  58. <div class="bodys">
  59. {volist name="apps" id="rs"}
  60. <a href="javascript:;" class="{$rs.is_lock?'manageLock':'manageApp'}" url="{:url('system/passport.index/changeApp',['id'=>$rs.id])}">
  61. <img src="{$rs.logo}"><p>{$rs.appname}</p>
  62. </a>
  63. {/volist}
  64. </div>
  65. </div>
  66. <div id="subnav" class="fn-hide"></div>
  67. {literal}
  68. <script id="navtpl" type="text/html">
  69. {{each list value keys}}
  70. <dl><dt><i class="iconfont icon-{{value.icon}}"></i><i class="iconfont right-icon icon-arrowright"></i>{{value.name}}</dt>
  71. {{each value.nav rs}}
  72. <dd>
  73. <a href="{{if rs.url}}{{rs.url}}{{else}}javascript:;{{/if}}" target="iframe" class="{{if rs.menu}}submenu{{else}}closemenu{{/if}}" ckey="{{keys}}" skey="{{$index}}">
  74. {{if rs.icon}}<i class="iconfont icon-{{rs.icon}}"></i>{{else}}<i class="iconfont icon-arrowright"></i>{{/if}}{{rs.name}}
  75. </a>
  76. </dd>
  77. {{/each}}
  78. </dl>
  79. {{/each}}
  80. </script>
  81. <script id="subnavtpl" type="text/html">
  82. {{each list rs}}<a href="{{if rs.url}}{{rs.url}}{{else}}javascript:;{{/if}}" target="iframe">{{rs.name}}</a>{{/each}}
  83. </script>
  84. {/literal}
  85. <script type="text/javascript">
  86. Do('base','layer','tip','tpl',function(){
  87. nav({$member_miniapp_id},"{:url('system/passport.index/appmenu')}")
  88. $(".miniapp").click(function(){
  89. nav($(this).attr("id"),"{:url('system/passport.index/appmenu')}");
  90. });
  91. $('.password').win({'area':['600px','350px']})
  92. $(".apps").click(function(){
  93. var index = layer.open({type: 1,content:$('#applayer'),title:false,closeBtn:false,shadeClose:true,area: ['320px','100%'],shade: 0.1,offset: ['0', '70px']});
  94. $(".closeLayer").click(function(){
  95. parent.layer.close(index);
  96. });
  97. });
  98. //切换管理
  99. $('.manageApp').click(function(){
  100. var url = $(this).attr('url');
  101. var index = parent.layer.load(0,{shade:[0.3,'#393D49']});
  102. $.getJSON(url,function(data){
  103. parent.layer.close(index);
  104. if(data.code == 200){
  105. window.parent.location.href = data.url;
  106. }else{
  107. parent.layer.alert(data.message,{icon:5})
  108. };
  109. });
  110. });
  111. //锁定提示
  112. $('.manageLock').click(function(){
  113. parent.layer.alert('当前应用已被锁定,禁止管理',{icon:5})
  114. });
  115. $(".appuser").powerFloat({eventType:"hover",targetMode:'common',targetAttr:"rel",position:"4-1"});
  116. //定时访问
  117. setInterval(function(){
  118. $.getJSON("{:url('system/passport.message/count')}",function(req){
  119. if(req.data > 0){layer.tips('您有一条新的信息','#message',{tips: [2,'#f4615c']});}
  120. })
  121. },10000);
  122. {if !$user.phone_id}$('#navtpl').popup({area:['600px','350px'],reload:1,url:"{:url('system/passport.member/phone')}"}){/if}
  123. });
  124. // 管理菜单
  125. function nav(app,url) {
  126. $.getJSON(url,{id: app},function (data) {
  127. $("#nav").html(template('navtpl',{list:data}));
  128. $("#nav dd").hide();
  129. $("#nav dl:first").find('dd').show();
  130. $("#nav dt").click(function(){
  131. $("#nav dt").find('.right-icon').addClass('icon-arrowright');
  132. $("#nav dd").hide("fast");
  133. $(this).find('.right-icon').removeClass('icon-arrowright');
  134. $(this).find('.right-icon').addClass('icon-arrowdown');
  135. $(this).parent().find('dd').slideToggle('fast');
  136. });
  137. $("dd").click(function (){$("dd").removeClass("focus");$(this).addClass('focus')});
  138. $('.closemenu').click(function(){$('#subnav').hide();$('#main').css("left","{$user->parent_id?140:210}px")})
  139. $('.submenu').click(function(){
  140. $('#subnav').show();
  141. $('#main').css('left','{$user->parent_id?240:314}px');
  142. $("#subnav").html(template('subnavtpl',{list:data[$(this).attr('ckey')].nav[$(this).attr('skey')].menu}));
  143. $("#subnav > a").click(function (){
  144. $("#subnav > a").removeClass("focus");
  145. $(this).addClass('focus');
  146. });
  147. })
  148. });
  149. }
  150. //面包屑
  151. function breadcrumb(data){
  152. $("#breadcrumb").html(data);
  153. }
  154. </script>
  155. </body>
  156. </html>