// ========================================== // ANALYTICS & EXPORTS LOGIC (analytics.js) // ========================================== $(document).ready(function () { // --- 1. Load Analytics Dashboard --- window.loadAnalytics = function (btn = null) { let originalText = ""; if (btn) { originalText = $(btn).html(); $(btn).prop("disabled", true).html(' Refreshing...'); } $.ajax({ url: "includes/api/api.php?action=get_analytics", type: "GET", dataType: "json", success: function (res) { if (btn) $(btn).prop("disabled", false).html(originalText); if (res.status === "success") { let data = res.data; currentAnalyticsData = data; // Save globally for exports // KPI Cards $("#statTotalValue").text("₱" + parseFloat(data.total_value).toLocaleString("en-US", { minimumFractionDigits: 2 })); $("#statTotalSpend").text("₱" + parseFloat(data.total_spend).toLocaleString("en-US", { minimumFractionDigits: 2 })); $("#statTotalItems").text(data.total_items); $("#statTurnover").text(data.turnover_ratio + "x"); $("#statIssuedItems").text(data.issued_30_days || "0"); // Predictive List let predHtml = ""; if (data.predictions && data.predictions.length > 0) { data.predictions.forEach(item => { predHtml += `