🏥 Kinnser Past Due Report Dashboard

Automated report tracking and analytics

Ready

📋 Activity Log

Loading dashboard...
abled = false; btn.textContent = '⬇️ Download Now'; } } function setStatus(type, message) { const status = document.getElementById('status'); status.className = `status status-${type}`; status.textContent = message; } document.getElementById('reportFilter').addEventListener('change', renderCharts); document.getElementById('startDate').addEventListener('change', renderCharts); document.getElementById('endDate').addEventListener('change', renderCharts)ait fetch('/api/download', { method: 'POST' }); const result = await response.json(); if (result.success) { setStatus('ok', 'Complete!'); setTimeout(() => loadData(), 2000); } else { throw new Error(result.error || 'Download failed'); } } catch (error) { setStatus('error', 'Failed'); addLogEntry({ type: 'error', message: `Error: ${error.message}`, timestamp: new Date().toISOString() }); } finally { btn.dis clearLogs(); try { const response = aw

🏥 Kinnser Past Due Report Dashboard

Automated report tracking and analytics

Ready

📋 Activity Log

Loading dashboard...