Confronta i BOT e BTP selezionati

Analisi comparativa dettagliata dei titoli selezionati

Analizza in maniera approfondita le differenze tra i titoli selezionati e scopri quello che più si addice alle tue necessità.

Nessun titolo selezionato

Torna alla pagina principale per selezionare i titoli da confrontare

Vai alla Ricerca
`; printWindow.document.write(htmlContent); printWindow.document.close(); // Wait for content to load then print (works on both desktop and mobile) printWindow.onload = function() { setTimeout(() => { printWindow.print(); printWindow.close(); }, 250); }; showNotificationFallback('Apertura finestra di stampa PDF...', 'info'); }// ============================================================================= // SISTEMA DI RILEVAMENTO E ATTIVAZIONE FALLBACK // =============================================================================// Verifica se le funzioni esterne sono disponibili e attiva fallback se necessario document.addEventListener('DOMContentLoaded', function() { // Attendi un po' per essere sicuri che tutti gli script esterni abbiano avuto tempo di caricarsi setTimeout(function() { console.log('=== VERIFICA ESPORTAZIONE - LITESPEED SETUP ==='); console.log('Funzione exportToCSV disponibile:', typeof window.exportToCSV !== 'undefined'); console.log('Funzione exportToPDF disponibile:', typeof window.exportToPDF !== 'undefined'); console.log('LiteSpeed optimization active'); const exportCSVBtn = document.getElementById('exportCSV'); const exportPDFBtn = document.getElementById('exportPDF'); // Verifica se le funzioni di export del file esterno sono disponibili const externalFunctionsAvailable = (typeof window.exportToCSV === 'function' && typeof window.exportToPDF === 'function'); if (!externalFunctionsAvailable) { console.warn('⚠️ Funzioni di esportazione esterne non disponibili - Attivazione fallback LiteSpeed'); // Rimuovi event listeners esistenti (se presenti) e aggiungi quelli fallback if (exportCSVBtn) { // Clona il pulsante per rimuovere tutti gli event listeners const newCSVBtn = exportCSVBtn.cloneNode(true); exportCSVBtn.parentNode.replaceChild(newCSVBtn, exportCSVBtn); newCSVBtn.addEventListener('click', exportToCSVFallback); console.log('✅ Fallback CSV attivato'); } if (exportPDFBtn) { // Clona il pulsante per rimuovere tutti gli event listeners const newPDFBtn = exportPDFBtn.cloneNode(true); exportPDFBtn.parentNode.replaceChild(newPDFBtn, exportPDFBtn); newPDFBtn.addEventListener('click', exportToPDFFallback); console.log('✅ Fallback PDF attivato'); } // Aggiungi CSS per le animazioni se non presente if (!document.getElementById('fallback-notification-styles')) { const style = document.createElement('style'); style.id = 'fallback-notification-styles'; style.textContent = ` @keyframes slideInFallback { from { transform: translateX(100%); opacity: 0; } to { transform: translateX(0); opacity: 1; } } @keyframes slideOutFallback { from { transform: translateX(0); opacity: 1; } to { transform: translateX(100%); opacity: 0; } } `; document.head.appendChild(style); } } else { console.log('✅ Funzioni di esportazione esterne disponibili - Modalità normale'); } }, 300); // Timeout ridotto per LiteSpeed (era 1000ms con Ezoic) });
Torna in alto