userOnlineIP.blade.php 4.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. @extends('admin.table_layouts')
  2. @section('content')
  3. <div class="page-content container-fluid">
  4. <x-admin.table-panel :theads="[
  5. '#',
  6. trans('common.account'),
  7. trans('model.user.port'),
  8. trans('model.user.account_status'),
  9. trans('model.user.proxy_status'),
  10. trans('admin.logs.user_ip.connect'),
  11. ]" :count="trans('admin.logs.counts', ['num' => $userList->total()])" :pagination="$userList->links()" :title="trans('admin.menu.log.online_logs') . ' <small>' . trans('admin.logs.user_ip.sub_title') . '</small>'">
  12. <x-slot:filters>
  13. <x-admin.filter.input class="col-lg-1 col-sm-4" name="id" type="number" :placeholder="trans('model.user.id')" />
  14. <x-admin.filter.input class="col-lg-3 col-sm-8" name="username" :placeholder="trans('common.account')" />
  15. <x-admin.filter.input class="col-lg-2 col-sm-6" name="wechat" :placeholder="trans('model.user.wechat')" />
  16. <x-admin.filter.input class="col-lg-2 col-sm-6" name="qq" :placeholder="trans('model.user.qq')" />
  17. <x-admin.filter.input class="col-lg-1 col-sm-6" name="port" type="number" :placeholder="trans('model.user.port')" />
  18. </x-slot:filters>
  19. <x-slot:tbody>
  20. @foreach ($userList as $user)
  21. <tr>
  22. <td> {{ $user->id }} </td>
  23. <td> {{ $user->username }} </td>
  24. <td> {{ $user->port }} </td>
  25. <td>
  26. @if ($user->status > 0)
  27. <span class="badge badge-lg badge-success">{{ trans('common.status.normal') }}</span>
  28. @elseif ($user->status < 0)
  29. <span class="badge badge-lg badge-danger">{{ trans('common.status.banned') }}</span>
  30. @else
  31. <span class="badge badge-lg badge-default">{{ trans('common.status.inactive') }}</span>
  32. @endif
  33. </td>
  34. <td>
  35. @if ($user->enable)
  36. <span class="badge badge-lg badge-success">{{ trans('common.status.enabled') }}</span>
  37. @else
  38. <span class="badge badge-lg badge-danger">{{ trans('common.status.banned') }}</span>
  39. @endif
  40. </td>
  41. <td>
  42. @if ($user->onlineIPList->isNotEmpty())
  43. <table class="text-md-center" data-toggle="table" data-mobile-responsive="true">
  44. <thead>
  45. <tr>
  46. <th> {{ trans('model.node.attribute') }}</th>
  47. <th> {{ trans('model.ip.network_type') }}</th>
  48. <th> IP</th>
  49. <th> {{ ucfirst(trans('validation.attributes.time')) }}</th>
  50. </tr>
  51. </thead>
  52. <tbody>
  53. @foreach ($user->onlineIPList as $log)
  54. <tr>
  55. <td>{{ $log->node->name ?? '【' . trans('common.deleted_item', ['attribute' => trans('model.node.attribute')]) . '】' }}
  56. </td>
  57. <td>{{ $log->type }}</td>
  58. <td>
  59. <a href="https://db-ip.com/{{ $log->ip }}" target="_blank">{{ $log->ip }}</a>
  60. </td>
  61. <td>{{ date('Y-m-d H:i:s', $log->created_at) }}</td>
  62. </tr>
  63. @endforeach
  64. </tbody>
  65. </table>
  66. @endif
  67. </td>
  68. </tr>
  69. @endforeach
  70. </x-slot:tbody>
  71. </x-admin.table-panel>
  72. </div>
  73. @endsection