FabioFratini 8 ay önce
ebeveyn
işleme
4ab74ce7d6
1 değiştirilmiş dosya ile 33 ekleme ve 11 silme
  1. 33 11
      resources/views/livewire/records_out.blade.php

+ 33 - 11
resources/views/livewire/records_out.blade.php

@@ -1255,26 +1255,48 @@
             importModal.hide();
         }
     });
-    Livewire.on('show-import-result', data => {
-        // Set message content and style based on type
-        const resultDiv = document.getElementById('importResultMessage');
-        resultDiv.innerHTML = data.message;
 
-        // Reset classes
-        resultDiv.classList.remove('alert', 'alert-success', 'alert-warning', 'alert-danger');
-        resultDiv.classList.add('alert');
+    let transitioningToResultModal = false;
+
+    // Listener per evento di chiusura della modale di import
+    document.getElementById('importModal').addEventListener('hidden.bs.modal', function () {
+        // Ricarica la pagina solo se non stiamo passando alla modale di risultato
+        if (!transitioningToResultModal) {
+            console.log("Modal import chiusa dall'utente: ricarica la pagina");
+            setTimeout(function() {
+                window.location.reload();
+            }, 500);
+        } else {
+            console.log("Transizione da importModal a resultModal: non ricaricare");
+            // Reset della variabile dopo la transizione
+            transitioningToResultModal = false;
+        }
+    });
+
 
-        // Show the modal
-        const resultModal = new bootstrap.Modal(document.getElementById('importResultModal'));
-        resultModal.show();
+    Livewire.on('show-import-result', data => {
+        transitioningToResultModal = true;
 
-        // Close import modal if it's open
+        // Prepara il contenuto della modale di risultato
+        const resultDiv = document.getElementById('importResultMessage');
+        resultDiv.innerHTML = data.message;
+        // Chiudi la modale di importazione
         const importModal = bootstrap.Modal.getInstance(document.getElementById('importModal'));
         if (importModal) {
             importModal.hide();
         }
+
+        // Mostra la modale dei risultati dopo un breve ritardo
+        setTimeout(() => {
+            const resultModal = new bootstrap.Modal(document.getElementById('importResultModal'));
+            resultModal.show();
+        }, 300);
     });
 
+    document.getElementById('importResultModal').addEventListener('hidden.bs.modal', function () {
+        console.log("Modal result chiusa: ricarica la pagina");
+        window.location.reload();
+    });
     </script>
 
 @endpush