export.blade.php 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. @extends('admin.layouts')
  2. @section('css')
  3. <link href="/assets/global/plugins/datatables/datatables.min.css" rel="stylesheet" type="text/css" />
  4. <link href="/assets/global/plugins/datatables/plugins/bootstrap/datatables.bootstrap.css" rel="stylesheet" type="text/css" />
  5. @endsection
  6. @section('content')
  7. <!-- BEGIN CONTENT BODY -->
  8. <div class="page-content" style="padding-top:0;">
  9. <!-- BEGIN PAGE BASE CONTENT -->
  10. <div class="row">
  11. <div class="col-md-12">
  12. <!-- BEGIN PORTLET-->
  13. <div class="portlet light bordered">
  14. <div class="portlet-title">
  15. <div class="caption font-dark">
  16. <span class="caption-subject bold uppercase"> 【{{$user->username}}】连接配置信息 </span>
  17. </div>
  18. </div>
  19. <div class="portlet-body">
  20. <div class="table-scrollable table-scrollable-borderless">
  21. <table class="table table-hover table-light">
  22. <thead>
  23. <tr class="uppercase">
  24. <th style="width: 10%;">#</th>
  25. <th style="width: 15%;">节点</th>
  26. <th style="width: 10%;">扩展</th>
  27. <th style="width: 15%;">域名</th>
  28. <th style="width: 15%;">IPv4</th>
  29. <th style="width: 35%;">配置信息</th>
  30. </tr>
  31. </thead>
  32. <tbody>
  33. @foreach($nodeList as $k => $node)
  34. <tr>
  35. <td>{{$k + 1}}</td>
  36. <td>
  37. <a href="{{url('admin/editNode?id=') . $node->id}}" target="_blank"> {{$node->name}} </a>
  38. </td>
  39. <td>
  40. @if($node->compatible) <span class="label label-info">兼</span> @endif
  41. @if($node->single) <span class="label label-danger">单</span> @endif
  42. @if($node->ipv6) <span class="label label-danger">IPv6</span> @endif
  43. </td>
  44. <td>{{$node->server}}</td>
  45. <td>{{$node->ip}}</td>
  46. <td>
  47. <a class="btn btn-sm green btn-outline" data-toggle="modal" href="#txt_{{$node->id}}"> 文本 </a>
  48. <a class="btn btn-sm green btn-outline" data-toggle="modal" href="#link_{{$node->id}}"> SCHEME </a>
  49. <a class="btn btn-sm green btn-outline" data-toggle="modal" href="#qrcode_{{$node->id}}"> 二维码 </a>
  50. </td>
  51. </tr>
  52. @endforeach
  53. </tbody>
  54. </table>
  55. </div>
  56. <div class="row">
  57. <div class="col-md-5 col-sm-5">
  58. <div class="dataTables_info" role="status" aria-live="polite">共 {{$nodeList->total()}} 个节点</div>
  59. </div>
  60. <div class="col-md-7 col-sm-7">
  61. <div class="dataTables_paginate paging_bootstrap_full_number pull-right">
  62. {{ $nodeList->links() }}
  63. </div>
  64. </div>
  65. </div>
  66. @foreach ($nodeList as $node)
  67. <div class="modal fade draggable-modal" id="txt_{{$node->id}}" tabindex="-1" role="basic" aria-hidden="true">
  68. <div class="modal-dialog">
  69. <div class="modal-content">
  70. <div class="modal-header">
  71. <button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
  72. <h4 class="modal-title">配置信息</h4>
  73. </div>
  74. <div class="modal-body">
  75. <textarea class="form-control" rows="10" readonly="readonly"> {{$node->txt}} </textarea>
  76. </div>
  77. </div>
  78. </div>
  79. </div>
  80. <div class="modal fade draggable-modal" id="link_{{$node->id}}" tabindex="-1" role="basic" aria-hidden="true">
  81. <div class="modal-dialog">
  82. <div class="modal-content">
  83. <div class="modal-header">
  84. <button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
  85. <h4 class="modal-title">Scheme Links - {{$node->name}}</h4>
  86. </div>
  87. <div class="modal-body">
  88. @if($node->type ==1)
  89. <textarea class="form-control" rows="5" readonly="readonly">{{$node->ssr_scheme}}</textarea>
  90. <a href="{{$node->ssr_scheme}}" class="btn purple uppercase" style="display: block; width: 100%;margin-top: 10px;">打开SSR</a>
  91. @if($node->ss_scheme)
  92. <p></p>
  93. <textarea class="form-control" rows="3" readonly="readonly">{{$node->ss_scheme}}</textarea>
  94. <a href="{{$node->ss_scheme}}" class="btn blue uppercase" style="display: block; width: 100%;margin-top: 10px;">打开SS</a>
  95. @endif
  96. @else
  97. <textarea class="form-control" rows="5" readonly="readonly">{{$node->v2_scheme}}</textarea>
  98. <a href="{{$node->v2_scheme}}" class="btn purple uppercase" style="display: block; width: 100%;margin-top: 10px;">打开V2Ray</a>
  99. @endif
  100. </div>
  101. </div>
  102. </div>
  103. </div>
  104. <div class="modal fade" id="qrcode_{{$node->id}}" tabindex="-1" role="dialog" aria-hidden="true">
  105. <div class="modal-dialog @if(!$node->compatible) modal-sm @endif">
  106. <div class="modal-content">
  107. <div class="modal-header">
  108. <button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
  109. <h4 class="modal-title">请使用客户端扫描二维码</h4>
  110. </div>
  111. <div class="modal-body">
  112. <div class="row">
  113. @if($node->type == 1)
  114. @if($node->compatible)
  115. <div class="col-md-6">
  116. <div id="qrcode_ssr_img_{{$node->id}}" style="text-align: center;"></div>
  117. <div style="text-align: center;"><a id="download_qrcode_ssr_img_{{$node->id}}">下载二维码</a></div>
  118. </div>
  119. <div class="col-md-6">
  120. <div id="qrcode_ss_img_{{$node->id}}" style="text-align: center;"></div>
  121. <div style="text-align: center;"><a id="download_qrcode_ss_img_{{$node->id}}">下载二维码</a></div>
  122. </div>
  123. @else
  124. <div class="col-md-12">
  125. <div id="qrcode_ssr_img_{{$node->id}}" style="text-align: center;"></div>
  126. <div style="text-align: center;"><a id="download_qrcode_ssr_img_{{$node->id}}">下载二维码</a></div>
  127. </div>
  128. @endif
  129. @else
  130. <div class="col-md-12">
  131. <div id="qrcode_v2_img_{{$node->id}}" style="text-align: center;"></div>
  132. <div style="text-align: center;"><a id="download_qrcode_v2_img_{{$node->id}}">下载二维码</a></div>
  133. </div>
  134. @endif
  135. </div>
  136. </div>
  137. </div>
  138. </div>
  139. </div>
  140. @endforeach
  141. </div>
  142. </div>
  143. <!-- END PORTLET-->
  144. </div>
  145. </div>
  146. <!-- END PAGE BASE CONTENT -->
  147. </div>
  148. <!-- END CONTENT BODY -->
  149. @endsection
  150. @section('script')
  151. <script src="/assets/global/plugins/jquery-qrcode/jquery.qrcode.min.js" type="text/javascript"></script>
  152. <script src="/assets/global/plugins/jquery-ui/jquery-ui.min.js" type="text/javascript"></script>
  153. <script type="text/javascript">
  154. var UIModals = function () {
  155. var n = function () {
  156. @foreach($nodeList as $node)
  157. $("#txt_{{$node->id}}").draggable({handle: ".modal-header"});
  158. $("#link_{{$node->id}}").draggable({handle: ".modal-header"});
  159. $("#qrcode_{{$node->id}}").draggable({handle: ".modal-header"});
  160. @endforeach
  161. };
  162. return {
  163. init: function () {
  164. n()
  165. }
  166. }
  167. }();
  168. jQuery(document).ready(function () {
  169. UIModals.init()
  170. });
  171. // 循环输出节点scheme用于生成二维码
  172. @foreach ($nodeList as $node)
  173. @if($node->type == 1)
  174. $('#qrcode_ssr_img_{{$node->id}}').qrcode("{{$node->ssr_scheme}}");
  175. $('#download_qrcode_ssr_img_{{$node->id}}').attr({'download':'code','href':$('#qrcode_ssr_img_{{$node->id}} canvas')[0].toDataURL("image/png")})
  176. @if($node->compatible)
  177. $('#qrcode_ss_img_{{$node->id}}').qrcode("{{$node->ss_scheme}}");
  178. $('#download_qrcode_ss_img_{{$node->id}}').attr({'download':'code','href':$('#qrcode_ss_img_{{$node->id}} canvas')[0].toDataURL("image/png")})
  179. @endif
  180. @else
  181. $('#qrcode_v2_img_{{$node->id}}').qrcode("{{$node->v2_scheme}}");
  182. $('#download_qrcode_v2_img_{{$node->id}}').attr({'download':'code','href':$('#qrcode_v2_img_{{$node->id}} canvas')[0].toDataURL("image/png")})
  183. @endif
  184. @endforeach
  185. </script>
  186. @endsection