index.blade.php 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  1. @extends('layouts.idara.panel')
  2. @section('content')
  3. <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.3/jquery.min.js" integrity="sha512-STof4xm1wgkfm7heWqFJVn58Hm3EtS31XFaagaa8VMReCXAkQnJZ+jEy8PCC/iT18dFy95WcExNHFTqLyp72eQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
  4. <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-toggle/2.2.2/js/bootstrap-toggle.min.js" integrity="sha512-F636MAkMAhtTplahL9F6KmTfxTmYcAcjcCkyu0f0voT3N/6vzAuJ4Num55a0gEJ+hRLHhdz3vDvZpf6kqgEa5w==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
  5. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-toggle/2.2.2/css/bootstrap-toggle.min.css" integrity="sha512-hievggED+/IcfxhYRSr4Auo1jbiOczpqpLZwfTVL/6hFACdbI3WQ8S9NCX50gsM9QVE+zLk/8wb9TlgriFbX+Q==" crossorigin="anonymous" referrerpolicy="no-referrer" />
  6. @include('backend.partials.import')
  7. <div class="container">
  8. <section style="margin-bottom: 44px;">
  9. <div class="card">
  10. <div class="card-header">
  11. Produit
  12. </div>
  13. <div class="card-body">
  14. <a href="{{route('produit.add')}}" class="btn btn-primary">+ Ajouter</a>
  15. <a href="javascript:window.location.href=window.location.href" class="btn btn-secondary"><i class="fa-solid fa-arrows-rotate"></i>Actualiser</a>
  16. </div>
  17. </div>
  18. </section>
  19. @if(session('success'))
  20. <div class="alert alert-success">
  21. {{ session('success') }}
  22. </div>
  23. @endif
  24. @if (count($errors) > 0)
  25. <div class="alert alert-danger">
  26. <strong>Whoops!</strong> Some problems with your input.<br><br>
  27. <ul>
  28. @foreach ($errors->all() as $error)
  29. <li>{{ $error }}</li>
  30. @endforeach
  31. </ul>
  32. </div>
  33. @endif
  34. @if (Session::has('message'))
  35. <div class="alert alert-info">{{ Session::get('message') }}</div>
  36. @endif
  37. <div class="card">
  38. <div class="card-header">
  39. Produits
  40. </div>
  41. <div class="card-body">
  42. <div class="table-responsive">
  43. <table class="table table-bordered">
  44. <thead>
  45. <tr>
  46. <th scope="col">Nom</th>
  47. <th scope="col">categorie</th>
  48. <th scope="col">Date</th>
  49. <th scope="col">Action</th>
  50. </tr>
  51. </thead>
  52. <tbody>
  53. @foreach($articles as $article)
  54. <tr>
  55. <th scope="row">
  56. <a class="title" href="{{ route('produit.show',['id'=>$article]) }}" >{{$article->nom}}</a>
  57. </th>
  58. <th scope="row">
  59. @foreach ($article->categories as $singleTag)
  60. <span class="label label-info label-many btn btn-secondary">{{ $singleTag->nom }}</span>
  61. @endforeach
  62. </th>
  63. <th scope="row">
  64. {{$article->created_at}}
  65. </th>
  66. <th scope="row" class="buttonOffOut">
  67. <div>
  68. <form action="{{url('produit/'.$article->id)}}" method="post">
  69. @csrf
  70. @if($article->etat == 1)
  71. <Tooltip title="Masquer">
  72. <input data-id="{{$article->id}}" class="toggle-class" type="checkbox" data-onstyle="success" data-offstyle="danger" data-toggle="toggle" data-on="✔" data-off="⊘" {{ $article->etat ? 'checked' : '' }}>
  73. </Tooltip>
  74. @else
  75. <Tooltip title="Afficher">
  76. <input data-id="{{$article->id}}" class="toggle-class" type="checkbox" data-onstyle="success" data-offstyle="danger" data-toggle="toggle" data-on="✔" data-off="⊘" {{ $article->etat ? 'checked' : '' }}>
  77. </Tooltip>
  78. @endif
  79. @if($article->etat == 1)
  80. <Tooltip title="Masquer de l'accueil">
  81. <input data-id="{{$article->id}}" class="toggle-class-home" type="checkbox" data-onstyle="success" data-offstyle="warning" data-toggle="toggle" data-on="🏠" data-off="🏠" {{ $article->home ? 'checked' : '' }}>
  82. </Tooltip>
  83. @else
  84. <Tooltip title="Afficher a l'accueil">
  85. <input data-id="{{$article->id}}" class="toggle-class-home" type="checkbox" data-onstyle="success" data-offstyle="warning" data-toggle="toggle" data-on="🏠" data-off="🏠" {{ $article->home ? 'checked' : '' }}>
  86. </Tooltip>
  87. @endif
  88. <Tooltip title="Voir Plus"> <a href="{{ route('produit.show',['id'=>$article]) }}" class="btn btn-xs btn-primary"><i class="fa fa-sign-out" aria-hidden="true"></i></a></Tooltip>
  89. <input name="_method" type="hidden" value="DELETE">
  90. <Tooltip title="Supprimer"> <a class="btn btn-xs btn-danger btn-flat show_confirm" data-toggle="tooltip" ref="{{ url('produit/'.$article->id) }}"><i class="fa-solid fa-trash" aria-hidden="true"></i></a></Tooltip>
  91. </form>
  92. </div>
  93. </th>
  94. </tr>
  95. @endforeach
  96. </tbody>
  97. </table>
  98. <div>
  99. </div>
  100. </div>
  101. </section>
  102. </div>
  103. @include('backend.partials.alert')
  104. <script>
  105. $(function() {
  106. $('.toggle-class').change(function() {
  107. var etat = $(this).prop('checked') == true ? 1 : 0;
  108. var Id = $(this).data('id');
  109. $.ajax({
  110. type: "GET"
  111. , dataType: "json"
  112. , url: '/changeStatusProduit'
  113. , data: {
  114. 'etat': etat
  115. , 'Id': Id
  116. }
  117. , success: function(data) {
  118. console.log(data.success)
  119. }
  120. });
  121. })
  122. });
  123. $(function() {
  124. $('.toggle-class-home').change(function() {
  125. var home = $(this).prop('checked') == true ? 1 : 0;
  126. var Id = $(this).data('id');
  127. $.ajax({
  128. type: "GET"
  129. , dataType: "json"
  130. , url: '/changeStatusProduitHome'
  131. , data: {
  132. 'home': home
  133. , 'Id': Id
  134. }
  135. , success: function(data) {
  136. console.log(data.success)
  137. }
  138. });
  139. })
  140. });
  141. </script>
  142. @endsection