log.blade.php 5.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. @extends('admin.table_layouts')
  2. @push('css')
  3. <link href="/assets/global/vendor/bootstrap-datepicker/bootstrap-datepicker.min.css" rel="stylesheet">
  4. @endpush
  5. @section('content')
  6. <div class="page-content container-fluid">
  7. <x-admin.table-panel :title="trans('admin.menu.user.subscribe')" grid="col-xl-10 col-sm-12" :theads="['#', trans('model.subscribe.req_ip'), trans('model.ip.info'), trans('model.subscribe.req_times'), trans('model.subscribe.req_header')]" :count="trans('admin.logs.counts', ['num' => $subscribeLog->total()])" :pagination="$subscribeLog->links()">
  8. <x-slot:filters>
  9. <x-admin.filter.input class="col-xxl-1 col-lg-2 col-md-3" name="id" type="number" placeholder="ID" />
  10. <x-admin.filter.input class=" col-xxl-2 col-lg-3 col-md-6" name="ip" placeholder="IP" />
  11. <x-admin.filter.daterange />
  12. </x-slot:filters>
  13. <x-slot:body>
  14. <div class="col-xl-2 col-sm-12">
  15. <ul class="list-group list-group-gap">
  16. <li class="list-group-item bg-blue-grey-100">
  17. <i class="icon wb-user-circle" aria-hidden="true"></i> {{ trans('model.user.nickname') }}:
  18. <span
  19. class="float-right">{{ $subscribe->user->nickname ?? trans('common.deleted_item', ['attribute' => trans('common.account')]) }}</span>
  20. </li>
  21. <li class="list-group-item bg-blue-grey-100">
  22. <i class="icon wb-envelope" aria-hidden="true"></i> {{ trans('model.user.username') }}:
  23. <span
  24. class="float-right">{{ $subscribe->user->username ?? trans('common.deleted_item', ['attribute' => trans('model.user.attribute')]) }}</span>
  25. </li>
  26. <li class="list-group-item bg-blue-grey-100">
  27. <i class="icon wb-heart" aria-hidden="true"></i> {{ trans('common.status.attribute') }}:
  28. <span class="float-right"><i class="icon {{ $subscribe->status ? 'wb-check green-600' : 'wb-close red-600' }}"
  29. aria-hidden="true"></i></span>
  30. </li>
  31. <li class="list-group-item bg-blue-grey-100">
  32. <i class="icon wb-bell" aria-hidden="true"></i> {{ trans('model.subscribe.req_times') }}:
  33. <code class="float-right">{{ $subscribe->times }}</code>
  34. </li>
  35. <li class="list-group-item bg-blue-grey-100">
  36. <i class="icon wb-time" aria-hidden="true"></i> {{ trans('model.subscribe.updated_at') }}:
  37. <span class="float-right">{{ $subscribe->updated_at }}</span>
  38. </li>
  39. @if ($subscribe->ban_time)
  40. <li class="list-group-item bg-blue-grey-100">
  41. <i class="icon wb-power" aria-hidden="true"></i> {{ trans('model.subscribe.ban_time') }}
  42. : <span class="float-right">{{ date('Y-m-d H:i', $subscribe->ban_time) }}</span>
  43. </li>
  44. <li class="list-group-item bg-blue-grey-100">
  45. <i class="icon wb-lock" aria-hidden="true"></i> {{ trans('model.subscribe.ban_desc') }}:
  46. <span class="float-right">{{ __($subscribe->ban_desc) }}</span>
  47. </li>
  48. @endif
  49. @can('admin.subscribe.set')
  50. <button class="list-group-item btn btn-block @if ($subscribe->status) btn-danger @else btn-success @endif"
  51. onclick="setSubscribeStatus('{{ $subscribe->id }}')">
  52. @if ($subscribe->status === 0)
  53. <i class="icon wb-unlock" aria-hidden="true"></i> {{ trans('common.status.enabled') }}
  54. @else
  55. <i class="icon wb-unlock" aria-hidden="true"></i> {{ trans('common.status.disabled') }}
  56. @endif
  57. </button>
  58. @endcan
  59. </ul>
  60. </div>
  61. </x-slot:body>
  62. <x-slot:tbody>
  63. @foreach ($subscribeLog as $subscribe)
  64. <tr>
  65. <td>{{ $subscribe->id }}</td>
  66. <td>
  67. @if ($subscribe->request_ip)
  68. <a href="https://db-ip.com/{{ $subscribe->request_ip }}" target="_blank">{{ $subscribe->request_ip }}</a>
  69. @endif
  70. </td>
  71. <td>{{ $subscribe->ipInfo }}</td>
  72. <td>{{ $subscribe->request_time }}</td>
  73. <td>{{ trim($subscribe->request_header) }}</td>
  74. </tr>
  75. @endforeach
  76. </x-slot:tbody>
  77. </x-admin.table-panel>
  78. </div>
  79. @endsection
  80. @push('javascript')
  81. <script src="/assets/global/vendor/bootstrap-datepicker/bootstrap-datepicker.min.js"></script>
  82. @if (app()->getLocale() !== 'en')
  83. <script src="/assets/global/vendor/bootstrap-datepicker/locales/bootstrap-datepicker.{{ str_replace('_', '-', app()->getLocale()) }}.min.js" charset="UTF-8">
  84. </script>
  85. @endif
  86. <script src="/assets/global/js/Plugin/bootstrap-datepicker.js"></script>
  87. <script>
  88. @can('admin.subscribe.set')
  89. function setSubscribeStatus(id) { // 启用禁用用户的订阅
  90. ajaxPost(jsRoute('{{ route('admin.subscribe.set', 'PLACEHOLDER') }}', id));
  91. }
  92. @endcan
  93. </script>
  94. @endpush