base.blade.php 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451
  1. <!DOCTYPE html>
  2. <!--
  3. This is a starter template page. Use this page to start your new project from
  4. scratch. This page gets rid of all links and provides the needed markup only.
  5. -->
  6. <html>
  7. <head>
  8. <meta charset="utf-8">
  9. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  10. <meta name="referrer" content="never">
  11. <title>@yield('title') | {{YunShop::app()->account['name']}} - 后台管理系统</title>
  12. <!-- Tell the browser to be responsive to screen width -->
  13. <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
  14. <meta name="_token" content="{{ csrf_token() }}"/>
  15. <!-- Bootstrap 3.3.6 -->
  16. <link rel="stylesheet" href="{{static_url('assets/css/bootstrap.min.css')}}">
  17. <link rel="stylesheet" href="{{static_url('css/bootstrap-switch.min.css')}}">
  18. <link rel="stylesheet" href="{{static_url('assets/css/demo.css')}}">
  19. <link rel="stylesheet" href="{{static_url('js/dist/select2/select2.css')}}">
  20. <link rel="stylesheet" href="{{static_url('css/honeySwitch.css')}}">
  21. <!-- Font Awesome -->
  22. <link rel="stylesheet" href="{{static_url('assets/css/material-dashboard.css?v=1.2.1')}}">
  23. <link rel="stylesheet" href="{{static_url('yunshop/libs/font-awesome/4.5.0/css/font-awesome.min.css')}}">
  24. <link rel="stylesheet" type="text/css" href="{{static_url('assets/css/google-font.css?family=Roboto:300,400,500,700|Material+Icons')}}" />
  25. <!-- Ionicons -->
  26. <link rel="stylesheet" href="{{static_url('yunshop/libs/ionicons/2.0.1/css/ionicons.min.css')}}">
  27. <!-- Theme style -->
  28. {{--<link rel="stylesheet" href="{{static_url('yunshop/dist/css/AdminLTE.css')}}">--}}
  29. <!-- AdminLTE Skins. We have chosen the skin-blue for this starter
  30. page. However, you can choose any other skin. Make sure you
  31. apply the skin class to the body tag so the changes take effect.
  32. -->
  33. <link rel="stylesheet" href="{{static_url('yunshop/dist/css/skins/skin-red.min.css')}}">
  34. <link href="{{static_url('resource/css/common.css')}}" rel="stylesheet">
  35. {{--loding--}}
  36. {{--<link href="{{static_url('yunshop/dist/css/load/load.css')}}" rel="stylesheet">--}}
  37. <link rel="stylesheet" type="text/css" href="{{static_url('css/webstyle.css')}}">
  38. @yield('css')
  39. {!! yz_header('admin') !!}
  40. <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
  41. <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
  42. <!--[if lt IE 9]>
  43. <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
  44. <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
  45. <![endif]-->
  46. <script>var require = { urlArgs: 'yzTime={{time()}}' };</script>
  47. <script type="text/javascript">
  48. const protocolStr = document.location.protocol;
  49. switch (protocolStr) {
  50. case 'https:':
  51. // 指定https访问类型,具体见百度地图API加载方式:http://www.jiazhengblog.com/blog/2011/06/28/284/
  52. window.HOST_TYPE = '2'
  53. break
  54. default:
  55. break
  56. }
  57. if(navigator.appName == 'Microsoft Internet Explorer'){
  58. if(navigator.userAgent.indexOf("MSIE 5.0")>0 ||
  59. navigator.userAgent.indexOf("MSIE 6.0")>0 ||
  60. navigator.userAgent.indexOf("MSIE 7.0")>0)
  61. {
  62. alert('您使用的 IE 浏览器版本过低, 推荐使用 Chrome 浏览器或 IE8 及以上版本浏览器.');
  63. }
  64. }
  65. window.sysinfo = {
  66. 'is_new': '{{IMS_FAMILY == "v" ? (IMS_VERSION > 1.4 ? 1:0):1}}',
  67. 'uniacid': '{{YunShop::app()->uniacid}}',
  68. 'acid': '{{YunShop::app()->acid}}',
  69. 'openid': '{{YunShop::app()->openid}}',
  70. 'uid': '{{YunShop::app()->uid}}',
  71. 'siteroot': '{!! YunShop::app()->siteroot !!}',
  72. 'static_url': '{{static_url('')}}',
  73. 'siteurl': '{!! YunShop::app()->siteurl !!}',
  74. 'attachurl': '{{YunShop::app()->attachurl}}',
  75. 'attachurl_local': '{{YunShop::app()->attachurl_local}}',
  76. 'attachurl_remote': '{{YunShop::app()->attachurl_remote}}',
  77. 'cookie' : {'pre': '{{YunShop::app()->config['cookie']['pre']}}'},
  78. 'get_address' : '{!! yzWebUrl("address.get-address") !!}'
  79. };
  80. </script>
  81. <!-- jQuery 2.2.0 -->
  82. <script src="{{static_url('js/jquery-2.2.3.min.js')}}"></script>
  83. <script type="text/javascript" src="{{static_url('js/general.js')}}"></script>
  84. <script type="text/javascript" src="{{static_url('js/clipboard.min.js')}}"></script>
  85. <script type="text/javascript" src="{{static_url('js/bootstrap-switch.min.js')}}"></script>
  86. <script type="text/javascript" src="{{static_url('js/dist/select2/select2.min.js')}}"></script>
  87. <script type="text/javascript" src="{{static_url('js/honeySwitch.js')}}"></script>
  88. {{-- <script src="{{static_url('assets/js/bootstrap.min.js')}}" type="text/javascript"></script>--}}
  89. <script src="{{static_url('assets/js/material.min.js')}}" type="text/javascript"></script>
  90. {{--<script src="//vuejs.org/js/vue.min.js"></script>--}}
  91. <script src="{{ static_url('yunshop/vue/js/vue.min.js') }}"></script>
  92. {{--<script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script>--}}
  93. <script src="{{ static_url('yunshop/vue/js/vue.js') }}"></script>
  94. <script src="{{static_url('js/vue-count-to.min.js')}}" type="text/javascript"></script>
  95. {{--<script src="https://cdn.bootcss.com/vue-resource/1.5.0/vue-resource.js"></script>--}}
  96. <script src="{{ static_url('yunshop/vue/js/vue-resource.js') }}"></script>
  97. {{--<link href="https://cdn.bootcss.com/element-ui/2.3.1/theme-chalk/index.css" rel="stylesheet">--}}
  98. {{--<link href="{{ static_url('yunshop/element-ui/2.10.1/css/element-ui_2.10.1_theme-chalk_index.css') }}" rel="stylesheet">--}}
  99. <link href="{{ static_url('yunshop/element-ui/2.10.1/css/index.css') }}" rel="stylesheet">
  100. {{--<script src="https://cdn.bootcss.com/element-ui/2.4.0/index.js"></script>--}}
  101. <script src="{{ static_url('yunshop/element-ui/2.10.1/js/element-ui_2.10.1_index.js') }}"></script>
  102. <link href="//at.alicdn.com/t/font_432132_nxqv1lzyzsh.css " rel="stylesheet">
  103. <link href="//at.alicdn.com/t/font_432132_kyk1qc6ulvh.css " rel="stylesheet">
  104. <link href="//at.alicdn.com/t/font_432132_rei18ayu1qo.css" rel="stylesheet">
  105. <link href="//at.alicdn.com/t/font_432132_0n3q5gx5aiio.css" rel="stylesheet">
  106. <script src="{{static_url('assets/js/perfect-scrollbar.jquery.min.js')}}" type="text/javascript"></script>
  107. <!-- Library for adding dinamically elements -->
  108. <script src="{{static_url('assets/js/arrive.min.js')}}" type="text/javascript"></script>
  109. <!-- Forms Validations Plugin -->
  110. <script src="{{static_url('assets/js/jquery.validate.min.js')}}"></script>
  111. <!-- Promise Library for SweetAlert2 working on IE -->
  112. <script src="{{static_url('assets/js/es6-promise-auto.min.js')}}"></script>
  113. <!-- Plugin for Date Time Picker and Full Calendar Plugin-->
  114. <script src="{{static_url('assets/js/moment.min.js')}}"></script>
  115. <!-- Charts Plugin, full documentation here: https://gionkunz.github.io/chartist-js/ -->
  116. <script src="{{static_url('assets/js/chartist.min.js')}}"></script>
  117. <!-- Plugin for the Wizard, full documentation here: https://github.com/VinceG/twitter-bootstrap-wizard -->
  118. <script src="{{static_url('assets/js/jquery.bootstrap-wizard.js')}}"></script>
  119. <!-- Notifications Plugin, full documentation here: http://bootstrap-notify.remabledesigns.com/ -->
  120. <script src="{{static_url('assets/js/bootstrap-notify.js')}}"></script>
  121. <!-- Plugin for the DateTimePicker, full documentation here: https://eonasdan.github.io/bootstrap-datetimepicker/ -->
  122. <script src="{{static_url('assets/js/bootstrap-datetimepicker.js')}}"></script>
  123. <!-- Vector Map plugin, full documentation here: http://jvectormap.com/documentation/ -->
  124. <script src="{{static_url('assets/js/jquery-jvectormap.js')}}"></script>
  125. <!-- Sliders Plugin, full documentation here: https://refreshless.com/nouislider/ -->
  126. <script src="{{static_url('assets/js/nouislider.min.js')}}"></script>
  127. <!-- Google Maps Plugin -->
  128. <!-- Plugin for Select, full documentation here: http://silviomoreto.github.io/bootstrap-select -->
  129. <script src="{{static_url('assets/js/jquery.select-bootstrap.js')}}"></script>
  130. <!-- DataTables.net Plugin, full documentation here: https://datatables.net/ -->
  131. <script src="{{static_url('assets/js/jquery.datatables.js')}}"></script>
  132. <!-- Sweet Alert 2 plugin, full documentation here: https://limonte.github.io/sweetalert2/ -->
  133. <script src="{{static_url('assets/js/sweetalert2.js')}}"></script>
  134. <!-- Plugin for Fileupload, full documentation here: http://www.jasny.net/bootstrap/javascript/#fileinput -->
  135. <script src="{{static_url('assets/js/jasny-bootstrap.min.js')}}"></script>
  136. <!-- Full Calendar Plugin, full documentation here: https://github.com/fullcalendar/fullcalendar -->
  137. <script src="{{static_url('assets/js/fullcalendar.min.js')}}"></script>
  138. <!-- Plugin for Tags, full documentation here: https://github.com/bootstrap-tagsinput/bootstrap-tagsinputs -->
  139. <script src="{{static_url('assets/js/jquery.tagsinput.js')}}"></script>
  140. <script type="text/javascript" src="https://static.chuangkit.com/api/chuangkit-design-1.2.4.js"></script>
  141. <!-- Material Dashboard javascript methods -->
  142. {{-- <script src="{{static_url('assets/js/material-dashboard.js')}}"></script>--}}
  143. {{--<script src="{{static_url('js/echarts.js')}}" type="text/javascript"></script>--}}
  144. <!-- import iView -->
  145. {{--<script src="https://cdn.bootcss.com/axios/0.18.0/axios.min.js"></script>--}}
  146. <script src="{{ static_url('yunshop/axios/js/axios_0.18.0_axios.min.js') }}"></script>
  147. {{--<script src="https://cdn.bootcss.com/iview/2.14.0/iview.min.js"></script>--}}
  148. <script src="{{ static_url('yunshop/iview/js/iview_2.14.0_iview.min.js') }}"></script>
  149. {{--<link href="https://cdn.bootcss.com/iview/2.14.0/styles/iview.css" rel="stylesheet">--}}
  150. {{-- <link href="{{ static_url('yunshop/iview/css/iview_2.14.0_styles_iview.css') }}" rel="stylesheet">--}}
  151. @php $util_js = 'util'; @endphp
  152. @if (config('app.framework') == 'platform')
  153. @php $util_js = 'utils'; @endphp
  154. @endif
  155. <script type="text/javascript" src="{{static_url('resource/js/app/'.$util_js.'.js?time=3232')}}"></script>
  156. <script type="text/javascript" src="{{static_url('resource/js/require.js')}}"></script>
  157. @section('utilJs')
  158. <script type="text/javascript">
  159. u_url = 'static/resource/js/app/';
  160. util_url = '';
  161. util_js = 'util';
  162. @if (config('app.framework') == 'platform')
  163. util_js = 'utils';
  164. util_url = '/' + u_url + util_js;
  165. require.config({
  166. paths:{
  167. utils:util_url
  168. }
  169. });
  170. @else
  171. util_url = '/addons/yun_shop/' + u_url + util_js;
  172. require.config({
  173. paths:{
  174. util:util_url
  175. }
  176. });
  177. @endif
  178. </script>
  179. @show
  180. @if (config('app.framework') == 'platform')
  181. <script type="text/javascript" src="{{static_url('js/app/yz_config.js')}}"></script>
  182. @else
  183. <script type="text/javascript" src="{{static_url('js/app/config.js')}}"></script>
  184. @endif
  185. <script type="text/javascript" src="{{static_url('js/dist/tooltipbox.js')}}"></script>
  186. </head>
  187. <body>
  188. <div id="loading">
  189. <div id="loading-center">
  190. <div id="loading-center-absolute">
  191. <div class="object" id="object_four"></div>
  192. <div class="object" id="object_three"></div>
  193. <div class="object" id="object_two"></div>
  194. <div class="object" id="object_one"></div>
  195. </div>
  196. </div>
  197. </div>
  198. <div class="wrapper">
  199. <!-- Main Header -->
  200. {{--@php--}}
  201. {{--global $_W;--}}
  202. {{--$menu_list = \app\common\helpers\Cache::get('menu_list'.$_W['uid']);--}}
  203. {{--@endphp--}}
  204. {{--@if (!\app\common\helpers\Cache::has('menu_list'.$_W['uid']))--}}
  205. {{--@php \Log::debug('----缓存顶端和左端 menu----'); ob_start(); @endphp--}}
  206. @include('layouts.mainSidebar')
  207. @include('layouts.mainMenu')
  208. {{--@php--}}
  209. {{--$cache['menu'] = ob_get_contents();--}}
  210. {{--$cache['uid'] = $_W['uid'];--}}
  211. {{--\app\common\helpers\Cache::forever('menu_list'.$_W['uid'], $cache);--}}
  212. {{--ob_implicit_flush(false);--}}
  213. {{--@endphp--}}
  214. {{--@else--}}
  215. {{--@php \Log::debug('----读取顶端和左端 menu----'); echo $menu_list['menu']; @endphp--}}
  216. {{--@endif--}}
  217. @if (\app\backend\modules\menu\Menu::current()->isShowSecondMenu())
  218. @include('layouts.secondSidebar')
  219. @else
  220. <style>
  221. .main-panel{
  222. width: calc(100% - 96px) ;
  223. }
  224. .vue-page{
  225. width: calc(100% - 116px) ;
  226. }
  227. </style>
  228. @endif
  229. @include('layouts.mainHeader')
  230. <!-- Left side column. contains the logo and sidebar -->
  231. <!-- Content Wrapper. Contains page content -->
  232. {{--<div class="content-wrapper">
  233. <section class="content-header">
  234. <h6>
  235. </h6>
  236. </section>
  237. @include('public.admin.message')
  238. <section class="content">
  239. @yield('content')
  240. </section>
  241. </div>--}}
  242. <!-- /.content-wrapper -->
  243. <!-- Add the sidebar's background. This div must be placed
  244. immediately after the control sidebar -->
  245. {{--<div class="control-sidebar-bg"></div>--}}
  246. <!-- REQUIRED JS SCRIPTS -->
  247. <!-- Bootstrap 3.3.6 -->
  248. <!-- AdminLTE App -->
  249. <script src="{{static_url('yunshop/dist/js/app.min.js')}}"></script>
  250. <!-- dataTables -->
  251. <script src="{{static_url('yunshop/dist/js/common.js')}}"></script>
  252. <!-- Optionally, you can add Slimscroll and FastClick plugins.
  253. Both of these plugins are recommended to enhance the
  254. user experience. Slimscroll is required when using the
  255. fixed layout. -->
  256. @yield('js')
  257. <!-- Main Footer -->
  258. @include('layouts.mainFooter')
  259. {!! yz_footer('admin') !!}
  260. </div>
  261. <!-- ./wrapper -->
  262. <script>
  263. if (Clipboard.isSupported()) {
  264. var clipboard = new Clipboard('.js-clip');
  265. clipboard.on('success', function(e) {
  266. //alert('复制成功');
  267. swal({
  268. title: "复制成功",
  269. buttonsStyling: false,
  270. confirmButtonClass: "btn btn-success"
  271. });
  272. //swal('Any fool can use a computer')
  273. e.clearSelection();
  274. });
  275. } else {
  276. $('.js-clip').each(function () {
  277. util.clip(this, $(this).attr('data-url'));
  278. });
  279. }
  280. $(".yz-menu").click(function(){
  281. // console.log('sidebar', $(".sidebar"));
  282. $("#plugins_list_left").toggle();
  283. $(".sidebar").toggle();
  284. });
  285. </script>
  286. <script type='text/javascript'>
  287. function getkey(a,maxpage) {
  288. pms = Number(document.getElementById('jump').value);
  289. inits = "{!! YunShop::app()->script_name . '?' . http_build_query($_REQUEST) !!}";
  290. reg=/page=(\w+)/gi;
  291. str=inits.match(reg);
  292. // console.log(pms);
  293. // console.log(maxpage)
  294. initsurl=inits.replace(reg,'page=');
  295. if(pms > maxpage){
  296. pms = maxpage;
  297. } else if(pms < 1){
  298. pms = 1;
  299. }
  300. a.href = initsurl + pms
  301. }
  302. </script>
  303. <!-- 修改密码弹框 -->
  304. <div id="pwd_remind_dialog">
  305. <div id="pwd_remind_popLayer" onclick="closeBox()"></div>
  306. <div id="pwd_remind_pop">
  307. <div class="pwd_remind_close">
  308. <a href="javascript:void(0)" onclick="closeBox()">X</a>
  309. </div>
  310. <div class="pwd_remind_dialog_content">
  311. 提示:您当前密码过于简单,请先修改密码
  312. </div>
  313. <div class="pwd_remind_button" onclick="editPas()">修改密码</div>
  314. </div>
  315. </div>
  316. <style>
  317. #pwd_remind_dialog #pwd_remind_popLayer {
  318. width: 100vw;
  319. height: 100vh;
  320. display: none;
  321. background-color: #B3B3B3;
  322. position: absolute;
  323. top: 0;
  324. right: 0;
  325. bottom: 0;
  326. left: 0;
  327. z-index: 999;
  328. background:rgba(0,0,0, 0.5);
  329. }
  330. /*弹出层*/
  331. #pwd_remind_dialog #pwd_remind_pop {
  332. display: none;
  333. background-color: #FFFFFF;
  334. z-index: 1000;
  335. width: 40%;
  336. height: 30%;
  337. position:fixed;
  338. top:0;
  339. right:0;
  340. left:0;
  341. bottom:0;
  342. margin:auto;
  343. border-radius: 10px;
  344. box-sizing: border-box;
  345. padding: 10px;
  346. }
  347. #pwd_remind_dialog #pwd_remind_pop .pwd_remind_close{
  348. text-align: right;
  349. margin-right: 5px;
  350. padding: 5px;
  351. background-color: #F8F8F8;
  352. }
  353. /*关闭按钮*/
  354. #pwd_remind_dialog #pwd_remind_pop .pwd_remind_close a {
  355. text-decoration: none;
  356. color: #2D2C3B;
  357. }
  358. #pwd_remind_dialog .pwd_remind_dialog_content {
  359. position: relative;
  360. width:100%;
  361. height: 80%;
  362. display: flex;
  363. justify-content: center;
  364. align-items: center;
  365. word-break: break-all;
  366. overflow: hidden;
  367. }
  368. #pwd_remind_dialog .pwd_remind_button {
  369. position: absolute;
  370. bottom: 0;
  371. bottom: 10px;
  372. left: 50%;
  373. transform: translateX(-50%);
  374. display: inline-block;
  375. line-height: 1;
  376. white-space: nowrap;
  377. cursor: pointer;
  378. padding: 10px 20px;
  379. font-size: 14px;
  380. border-radius: 4px;
  381. color: #fff;
  382. background-color: #409EFF;
  383. border-color: #409EFF;
  384. }
  385. </style>
  386. <script>
  387. var dialogBox = document.getElementById("pwd_remind_pop");
  388. var popLayer = document.getElementById("pwd_remind_popLayer");
  389. @if($_GET['pwd_remind'] == 2)
  390. popBox();
  391. @endif
  392. /*点击弹出按钮*/
  393. function popBox() {
  394. dialogBox.style.display = "block";
  395. popLayer.style.display = "block";
  396. }
  397. /*点击关闭按钮*/
  398. function closeBox() {
  399. dialogBox.style.display = "none";
  400. popLayer.style.display = "none";
  401. }
  402. // 修改密码
  403. function editPas() {
  404. openPwd()
  405. closeBox();
  406. }
  407. window.popBox = popBox;
  408. window.closeBox = closeBox;
  409. </script>
  410. </body>
  411. </html>