templates/_jsBase.html.twig line 1

Open in your IDE?
  1. <script>    
  2.     
  3.     $(document).ready(function () {
  4.         $('#defaultDataTable').DataTable({
  5.             scrollY: '50vh',
  6.             scrollCollapse: false,
  7.             paging: false
  8.         });
  9.         $('.select').select2();
  10.         hideOrDisplaySelectedBtn();
  11.     })
  12.     const swalWithBootstrapButtons = Swal.mixin({
  13.         customClass: {
  14.             confirmButton: 'btn btn-success',
  15.             cancelButton: 'btn btn-danger'
  16.         },
  17.         buttonsStyling: false
  18.     })
  19.     function hideOrDisplaySelectedBtn(){
  20.         disableSelected = $("#disable-selected-btn");
  21.         enableSelected = $("#enable-selected-btn");
  22.         deleteSelected = $("#delete-selected-btn");
  23.         selection = $(".selected-btn");
  24.         checkOne = $(".check-one");
  25.         countcheckOne = checkOne.filter(':checked').length;
  26.         $("#count-checked").text(countcheckOne);
  27.         if(countcheckOne > 0){
  28.             disableSelected.css('display', 'inline-block');
  29.             enableSelected.css('display', 'inline-block');
  30.             deleteSelected.css('display', 'inline-block');
  31.             selection.show();
  32.         }else{
  33.             disableSelected.css('display', 'none'); 
  34.             enableSelected.css('display', 'none'); 
  35.             deleteSelected.css('display', 'none'); 
  36.             selection.hide(); 
  37.         }     
  38.     }
  39.     /* nouvelle methode de suppression groupe */
  40.     function setSelected(){
  41.         var selected = new Array()
  42.         $("tbody input[type=checkbox]:checked").each(function () {
  43.             selected.push(this.value);
  44.         });
  45.         if (selected.length > 0) {
  46.             disableSelected.css('display', 'inline-block');
  47.             enableSelected.css('display', 'inline-block');
  48.             deleteSelected.css('display', 'inline-block');
  49.             selection.show();
  50.             $("#count-checked").text(selected.length);
  51.         }else{
  52.             disableSelected.css('display', 'none');
  53.             enableSelected.css('display', 'none');
  54.             deleteSelected.css('display', 'none');
  55.             selection.hide();
  56.         }
  57.         console.log(selected);
  58.         return selected;
  59.     }
  60.     function checkElt(){
  61.         setSelected();
  62.     }
  63.     function checkAllElt(){
  64.         if($('#check-all').is(":checked")){
  65.             $("input[type=checkbox]").each(function () {
  66.                 $(this).prop('checked', true);
  67.             });
  68.         }else{
  69.             $("input[type=checkbox]").each(function () {
  70.                 $(this).prop('checked', false);
  71.             });
  72.         }
  73.         setSelected();
  74.     }
  75.     function actionByPathAndElts(path){
  76.         var elts = setSelected();
  77.         swalWithBootstrapButtons.fire({
  78.             title: 'Êtes-vous sûr de bien vouloir effectuer cette action?',
  79.             text: "Vous ne pourrez pas revenir en arrière!",
  80.             icon: 'warning',
  81.             showCancelButton: true,
  82.             confirmButtonText: 'OUI',
  83.             cancelButtonText: 'NON',
  84.             reverseButtons: true,
  85.             }).then((result) => {
  86.             if (result.isConfirmed) {
  87.                 $('.loader').addClass('is-active');
  88.                 axios.get(path, {
  89.                     params: {
  90.                         entities: elts
  91.                     }
  92.                 }).then(function (response) {
  93.                     console.log(response.data.message);
  94.                     console.log(elts);
  95.                     $('.loader').removeClass('is-active');
  96.                     if(response.data.code == 200){
  97.                         swalWithBootstrapButtons.fire({
  98.                             title: 'Effectué!',
  99.                             text: response.data.message,
  100.                             icon: 'success',
  101.                             showCancelButton: false,
  102.                             confirmButtonText: 'OK'
  103.                         }).then((result) => {
  104.                                 if (result.isConfirmed) {
  105.                                     location.reload();
  106.                                 }
  107.                         });
  108.                     }else{
  109.                         swalWithBootstrapButtons.fire({
  110.                             title: 'Echèc!',
  111.                             text: response.data.message,
  112.                             icon: 'warning',
  113.                             showCancelButton: false,
  114.                             confirmButtonText: 'OK'
  115.                         }).then((result) => {
  116.                                 if (result.isConfirmed) {
  117.                                     location.reload();
  118.                                 }
  119.                         });
  120.                     }
  121.                     
  122.                 });
  123.             } else if (
  124.                 /* Read more about handling dismissals below */
  125.                 result.dismiss === Swal.DismissReason.cancel
  126.             ) {
  127.                 swalWithBootstrapButtons.fire(
  128.                     'Annulé',
  129.                     'Votre enrégistrement est en sécurité:)',
  130.                     'error'
  131.                 )
  132.             }
  133.         })
  134.     }
  135.     function changeUserPassword(path){
  136.         swalWithBootstrapButtons.fire({
  137.             title: 'Êtes-vous sûr de bien vouloir effectuer cette action?',
  138.             text: "Vous ne pourrez pas revenir en arrière!",
  139.             icon: 'warning',
  140.             showCancelButton: true,
  141.             confirmButtonText: 'OUI',
  142.             cancelButtonText: 'NON',
  143.             reverseButtons: true,
  144.             }).then((result) => {
  145.             if (result.isConfirmed) {
  146.                 $('.loader').addClass('is-active');
  147.                 axios.get(path, {
  148.                     params: {
  149.                         newPassword: $('#newPassword').val(),
  150.                         oldPassword: $('#oldPassword').val(),
  151.                         confirmPassword: $('#confirmPassword').val(),
  152.                     }
  153.                 }).then(function (response) {
  154.                     console.log(response.data.message);
  155.                     $('.loader').removeClass('is-active');
  156.                     if(response.data.code == '200'){
  157.                         swalWithBootstrapButtons.fire({
  158.                             title: 'Effectué!',
  159.                             text: response.data.message,
  160.                             icon: 'success',
  161.                             showCancelButton: false,
  162.                             confirmButtonText: 'OK'
  163.                         }).then((result) => {
  164.                                 if (result.isConfirmed) {
  165.                                     location.reload();
  166.                                 }
  167.                         });
  168.                     }else{
  169.                         swalWithBootstrapButtons.fire({
  170.                             title: 'Echèc!',
  171.                             text: response.data.message,
  172.                             icon: 'warning',
  173.                             showCancelButton: false,
  174.                             confirmButtonText: 'OK'
  175.                         }).then((result) => {
  176.                                 if (result.isConfirmed) {
  177.                                     console.log("erreure");
  178.                                 }
  179.                         });
  180.                     }
  181.                 });
  182.             } else if (
  183.                 /* Read more about handling dismissals below */
  184.                 result.dismiss === Swal.DismissReason.cancel
  185.             ) {
  186.                 swalWithBootstrapButtons.fire(
  187.                     'Annulé',
  188.                     'Votre enrégistrement est en sécurité:)',
  189.                     'error'
  190.                 )
  191.             }
  192.         })
  193.     }
  194.     {% if is_granted('ROLE_USER') %}
  195.         {% if app.user.isPasswordChanged == 0 %}
  196.             $('#currentChangePasswordModal').modal();
  197.         {% endif %}
  198.     {% endif %}
  199. </script>