index.blade.php 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. @extends('admin.table_layouts')
  2. @section('content')
  3. <div class="page-content container">
  4. <div class="panel">
  5. <div class="panel-heading">
  6. <h2 class="panel-title">{{ trans('admin.menu.rbac.permission') }}</h2>
  7. @can('admin.permission.create')
  8. <div class="panel-actions">
  9. <a class="btn btn-outline-primary" href="{{ route('admin.permission.create') }}">
  10. <i class="icon wb-plus" aria-hidden="true"></i> {{ trans('common.add') }}
  11. </a>
  12. </div>
  13. @endcan
  14. </div>
  15. <div class="panel-body">
  16. <form class="form-row">
  17. <div class="form-group col-lg-5 col-sm-6">
  18. <input class="form-control" name="description" type="text" value="{{ Request::query('description') }}"
  19. placeholder="{{ trans('model.permission.description') }}" />
  20. </div>
  21. <div class="form-group col-lg-5 col-sm-6">
  22. <input class="form-control" name="name" type="text" value="{{ Request::query('name') }}"
  23. placeholder="{{ trans('model.permission.name') }}" />
  24. </div>
  25. <div class="form-group col-lg-2 col-sm-6 btn-group">
  26. <button class="btn btn-primary" type="submit">{{ trans('common.search') }}</button>
  27. <button class="btn btn-danger" type="button" onclick="resetSearchForm()">{{ trans('common.reset') }}</button>
  28. </div>
  29. </form>
  30. <table class="text-md-center" data-toggle="table" data-mobile-responsive="true">
  31. <thead class="thead-default">
  32. <tr>
  33. <th> #</th>
  34. <th> {{ trans('model.permission.description') }}</th>
  35. <th> {{ trans('model.permission.name') }}</th>
  36. <th> {{ trans('common.action') }}</th>
  37. </tr>
  38. </thead>
  39. <tbody>
  40. @foreach ($permissions as $permission)
  41. <tr>
  42. <td>{{ $permission->id }}</td>
  43. <td>{{ $permission->description }}</td>
  44. <td>{{ $permission->name }}</td>
  45. <td>
  46. @canany(['admin.permission.edit', 'admin.permission.destroy'])
  47. <div class="btn-group">
  48. @can('admin.permission.edit')
  49. <a class="btn btn-sm btn-outline-primary" href="{{ route('admin.permission.edit', $permission) }}">
  50. <i class="icon wb-edit"></i></a>
  51. @endcan
  52. @can('admin.permission.destroy')
  53. <button class="btn btn-sm btn-outline-danger"
  54. onclick="delPermission('{{ route('admin.permission.destroy', $permission) }}','{{ $permission->name }}')">
  55. <i class="icon wb-trash"></i></button>
  56. @endcan
  57. </div>
  58. @endcanany
  59. </td>
  60. </tr>
  61. @endforeach
  62. </tbody>
  63. </table>
  64. </div>
  65. <div class="panel-footer">
  66. <div class="row">
  67. <div class="col-sm-4">
  68. {!! trans('admin.permission.counts', ['num' => $permissions->total()]) !!}
  69. </div>
  70. <div class="col-sm-8">
  71. <nav class="Page navigation float-right">
  72. {{ $permissions->links() }}
  73. </nav>
  74. </div>
  75. </div>
  76. </div>
  77. </div>
  78. </div>
  79. @endsection
  80. @push('javascript')
  81. @can('admin.permission.destroy')
  82. <script>
  83. function delPermission(url, name) {
  84. swal.fire({
  85. title: '{{ trans('common.warning') }}',
  86. text: '{{ trans('admin.confirm.delete.0', ['attribute' => trans('model.permission.attribute')]) }}' +
  87. name + '{{ trans('admin.confirm.delete.1') }}',
  88. icon: "warning",
  89. showCancelButton: true,
  90. cancelButtonText: '{{ trans('common.close') }}',
  91. confirmButtonText: '{{ trans('common.confirm') }}'
  92. }).then((result) => {
  93. if (result.value) {
  94. $.ajax({
  95. method: "DELETE",
  96. url: url,
  97. data: {
  98. _token: '{{ csrf_token() }}'
  99. },
  100. dataType: "json",
  101. success: function(ret) {
  102. if (ret.status === "success") {
  103. swal.fire({
  104. title: ret.message,
  105. icon: "success",
  106. timer: 1000,
  107. showConfirmButton: false
  108. }).then(() => window.location.reload());
  109. } else {
  110. swal.fire({
  111. title: ret.message,
  112. icon: "error"
  113. }).then(() => window.location.reload());
  114. }
  115. }
  116. });
  117. }
  118. });
  119. }
  120. </script>
  121. @endcan
  122. @endpush