layouts.blade.php 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219
  1. @extends('_layout')
  2. @section('title', sysConfig('website_name'))
  3. @section('layout_css')
  4. @yield('css')
  5. @endsection
  6. @section('body_class', 'dashboard')
  7. @section('layout_content')
  8. <nav class="site-navbar navbar navbar-default navbar-fixed-top navbar-mega {{config('theme.navbar.inverse')}} {{config('theme.navbar.skin')}}" role="navigation">
  9. <div class="navbar-header">
  10. <button type="button" class="navbar-toggler hamburger hamburger-close navbar-toggler-left hided"
  11. data-toggle="menubar">
  12. <span class="sr-only">{{trans('common.toggle_action', ['action' => trans('common.function.navigation')])}}</span>
  13. <span class="hamburger-bar"></span>
  14. </button>
  15. <button type="button" class="navbar-toggler collapsed" data-target="#site-navbar-collapse"
  16. data-toggle="collapse">
  17. <i class="icon wb-more-horizontal" aria-hidden="true"></i>
  18. </button>
  19. <div class="navbar-brand navbar-brand-center">
  20. <img src="{{sysConfig('website_logo') ? asset(sysConfig('website_logo')) : '/assets/images/logo64.png'}}"
  21. class="navbar-brand-logo" alt="logo"/>
  22. <span
  23. class="navbar-brand-text hidden-xs-down"> {{sysConfig('website_name')}}</span>
  24. </div>
  25. </div>
  26. <div class="navbar-container container-fluid">
  27. <div class="collapse navbar-collapse navbar-collapse-toolbar" id="site-navbar-collapse">
  28. <ul class="nav navbar-toolbar">
  29. <li class="nav-item hidden-float" id="toggleMenubar">
  30. <a class="nav-link" data-toggle="menubar" href="#" role="button">
  31. <i class="icon hamburger hamburger-arrow-left">
  32. <span class="sr-only">{{trans('common.toggle_action', ['action' => trans('common.function.menubar')])}}</span>
  33. <span class="hamburger-bar"></span>
  34. </i>
  35. </a>
  36. </li>
  37. <li class="nav-item hidden-sm-down" id="toggleFullscreen">
  38. <a class="nav-link icon icon-fullscreen" data-toggle="fullscreen" href="#" role="button">
  39. <span class="sr-only">{{trans('common.toggle_action', ['action' => trans('common.function.fullscreen')])}}</span>
  40. </a>
  41. </li>
  42. </ul>
  43. <ul class="nav navbar-toolbar navbar-right navbar-toolbar-right">
  44. <li class="nav-item dropdown">
  45. <a href="javascript:void(0)" class="nav-link" data-toggle="dropdown" data-animation="scale-up"
  46. aria-expanded="false" role="button">
  47. <span class="flag-icon wb-flag"></span>
  48. <span class="flag-icon icon wb-chevron-down-mini"></span>
  49. </a>
  50. <div class="dropdown-menu" role="menu">
  51. <a class="dropdown-item" href="{{route('lang', ['locale' => 'en'])}}" role="menuitem">
  52. <i class="flag-icon flag-icon-gb"></i>
  53. <span style="padding: inherit;">English</span></a>
  54. <a class="dropdown-item" href="{{route('lang', ['locale' => 'zh-CN'])}}" role="menuitem">
  55. <i class="flag-icon flag-icon-cn"></i>
  56. <span style="padding: inherit;">简体中文</span></a>
  57. </div>
  58. </li>
  59. <li class="nav-item dropdown">
  60. <a href="#" aria-expanded="false" class="nav-link navbar-avatar" data-animation="scale-up"
  61. data-toggle="dropdown" role="button">
  62. <span class="avatar avatar-online">
  63. <x-avatar :user="Auth::getUser()"/><i></i>
  64. </span>
  65. </a>
  66. <div class="dropdown-menu" role="menu">
  67. @can('admin.index')
  68. <a href="{{route('admin.index')}}" class="dropdown-item" role="menuitem">
  69. <i class="icon wb-user" aria-hidden="true"></i>
  70. {{trans('user.menu.admin_dashboard')}}
  71. </a>
  72. @endcan
  73. <a href="{{route('profile')}}" class="dropdown-item" role="menuitem">
  74. <i class="icon wb-user" aria-hidden="true"></i>
  75. {{trans('user.user_profile')}}
  76. </a>
  77. <div class="dropdown-divider" role="presentation"></div>
  78. <a href="{{route('logout')}}" class="dropdown-item" role="menuitem">
  79. <i class="icon wb-power" aria-hidden="true"></i>
  80. {{trans('auth.logout')}}
  81. </a>
  82. </div>
  83. </li>
  84. </ul>
  85. </div>
  86. </div>
  87. </nav>
  88. <div class="site-menubar {{config('theme.sidebar')}}">
  89. <div class="site-menubar-body">
  90. <ul class="site-menu" data-plugin="menu">
  91. <li class="site-menu-item {{request()->routeIs('home', 'profile' ,'article') ? 'active open' : ''}}">
  92. <a href="{{route('home')}}">
  93. <i class="site-menu-icon wb-dashboard" aria-hidden="true"></i>
  94. <span class="site-menu-title">{{trans('user.menu.home')}}</span>
  95. </a>
  96. </li>
  97. <li class="site-menu-item {{request()->routeIs('shop', 'buy', 'orderDetail') ? 'active open' : ''}}">
  98. <a href="{{route('shop')}}">
  99. <i class="site-menu-icon wb-shopping-cart" aria-hidden="true"></i>
  100. <span class="site-menu-title">{{trans('user.menu.shop')}}</span>
  101. </a>
  102. </li>
  103. <li class="site-menu-item {{request()->routeIs('node') ? 'active open' : ''}}">
  104. <a href="{{route('node')}}">
  105. <i class="site-menu-icon wb-grid-4" aria-hidden="true"></i>
  106. <span class="site-menu-title">{{trans('user.menu.nodes')}}</span>
  107. </a>
  108. </li>
  109. <li class="site-menu-item {{request()->routeIs('help') ? 'active open' : ''}}">
  110. <a href="{{route('help')}}">
  111. <i class="site-menu-icon wb-info-circle" aria-hidden="true"></i>
  112. <span class="site-menu-title">{{trans('user.menu.helps')}}</span>
  113. </a>
  114. </li>
  115. @php
  116. $openTicket = auth()->user()->tickets()->where('status','<>',2)->count()
  117. @endphp
  118. <li class="site-menu-item {{request()->routeIs('ticket', 'replyTicket') ? 'active open' : ''}}">
  119. <a href="{{route('ticket')}}">
  120. <i class="site-menu-icon wb-chat-working" aria-hidden="true"></i>
  121. <span class="site-menu-title">{{trans('user.menu.tickets')}}</span>
  122. @if($openTicket > 0)
  123. <div class="site-menu-badge">
  124. <span class="badge badge-pill badge-success">{{$openTicket}}</span>
  125. </div>
  126. @endif
  127. </a>
  128. </li>
  129. <li class="site-menu-item {{request()->routeIs('invoice', 'invoiceInfo') ? 'active open' : ''}}">
  130. <a href="{{route('invoice')}}">
  131. <i class="site-menu-icon wb-bookmark" aria-hidden="true"></i>
  132. <span class="site-menu-title">{{trans('user.menu.invoices')}}</span>
  133. </a>
  134. </li>
  135. @if(\App\Models\ReferralLog::uid()->exists() || \App\Models\Order::uid()->whereStatus(2)->exists())
  136. @if(sysConfig('is_invite_register'))
  137. <li class="site-menu-item {{request()->routeIs('invite') ? 'active open' : ''}}">
  138. <a href="{{route('invite')}}">
  139. <i class="site-menu-icon wb-extension" aria-hidden="true"></i>
  140. <span class="site-menu-title">{{trans('user.menu.invites')}}</span>
  141. </a>
  142. </li>
  143. @endif
  144. @if((sysConfig('referral_status')))
  145. <li class="site-menu-item {{request()->routeIs('commission') ? 'active open' : ''}}">
  146. <a href="{{route('commission')}}">
  147. <i class="site-menu-icon wb-star-outline" aria-hidden="true"></i>
  148. <span class="site-menu-title">{{trans('user.menu.referrals')}}</span>
  149. </a>
  150. </li>
  151. @endif
  152. @endif
  153. </ul>
  154. </div>
  155. </div>
  156. <div class="page">
  157. <!--[if lt IE 8]><p class="browserupgrade">{{trans('common.update_browser.0')}}<strong>{{trans('common.update_browser.1')}}</strong>
  158. {{trans('common.update_browser.2')}}<a href="http://browsehappy.com/" target="_blank">{{trans('common.update_browser.3')}}</a>{{trans('common.update_browser.4')}}</p><![endif]-->
  159. @yield('content')
  160. </div>
  161. <footer class="site-footer">
  162. <div class="site-footer-legal">
  163. Copyright ©️2017 - 2020 <a href="https://github.com/ProxyPanel/ProxyPanel" target="_blank">{{config('version.name')}}</a>
  164. 🚀 Version: <code> {{config('version.number')}} </code>
  165. </div>
  166. <div class="site-footer-right">
  167. <a href="{{sysConfig('website_url')}}" target="_blank">{{sysConfig('website_name')}}</a> 🈺
  168. </div>
  169. </footer>
  170. @if(Session::get("admin"))
  171. <div class="panel panel-bordered w-300 bg-grey-200" style="position:fixed;right:20px;bottom:0;">
  172. <div class="panel-body text-right">
  173. <h5>{{trans('user.current_role')}}:{{Auth::getUser()->email}}</h5>
  174. <button type="button" class="btn btn-danger btn-block mt-20" id="return_to_admin">
  175. {{trans('common.back').trans('user.menu.admin_dashboard')}}
  176. </button>
  177. </div>
  178. </div>
  179. @endif
  180. @endsection
  181. @section('layout_javascript')
  182. <!--[if lt IE 11]>
  183. <script src="/assets/custom/sweetalert2/polyfill.min.js"></script>
  184. <![endif]-->
  185. <script src="/assets/custom/sweetalert2/sweetalert2.all.min.js"></script>
  186. @yield('javascript')
  187. @if(Session::get('admin'))
  188. <script>
  189. $('#return_to_admin').click(function() {
  190. $.ajax({
  191. method: 'POST',
  192. url: '{{route('switch')}}',
  193. data: {'_token': '{{csrf_token()}}'},
  194. dataType: 'json',
  195. success: function(ret) {
  196. swal.fire({
  197. title: ret.message,
  198. icon: 'success',
  199. timer: 1000,
  200. showConfirmButton: false,
  201. }).then(() => window.location.href = '{{route('admin.index')}}');
  202. },
  203. error: function(ret) {
  204. swal.fire({
  205. title: ret.message,
  206. icon: 'error',
  207. timer: 1500,
  208. showConfirmButton: false,
  209. });
  210. },
  211. });
  212. });
  213. </script>
  214. @endif
  215. <!-- 统计 -->
  216. {!! sysConfig('website_analytics') !!}
  217. <!-- 客服 -->
  218. {!! sysConfig('website_customer_service') !!}
  219. @endsection