From 343fb7a218986a41d90fee90daf48d5ae17371db Mon Sep 17 00:00:00 2001 From: snapier Date: Tue, 10 Feb 2026 18:55:05 +0000 Subject: [PATCH] Delete scripts/vendor/main.js --- scripts/vendor/main.js | 176 ----------------------------------------- 1 file changed, 176 deletions(-) delete mode 100644 scripts/vendor/main.js diff --git a/scripts/vendor/main.js b/scripts/vendor/main.js deleted file mode 100644 index a19157d..0000000 --- a/scripts/vendor/main.js +++ /dev/null @@ -1,176 +0,0 @@ -/** - * Storage Saturation Report - Main JavaScript - * Loads report via mode=getreport. PDF/Image export via client-side jsPDF + html2canvas (no XI Chromium pipeline). - */ - -$(document).ready(function() { - load_report(); - - $('#export-pdf-btn').on('click', function() { - exportToPdf(); - }); - - $('#export-image-btn').on('click', function() { - exportToImage(); - }); - - function load_report() { - var baseUrl = window.saturationreportBaseUrl || (window.location.pathname.replace(/\/[^/]*$/, '/index.php')); - var url = baseUrl + '?mode=getreport'; - - $.get(url, function(html) { - $('#report').html(html); - }).fail(function() { - $('#report').html( - '
' + - 'Error loading storage saturation report.' + - '
' - ); - }); - } - - function getComponentBase() { - return (window.saturationreportBaseUrl || '').replace(/\/[^/]*$/, ''); - } - - function loadScript(src, onload, onerror) { - var script = document.createElement('script'); - script.src = src; - script.onload = onload; - script.onerror = onerror || function() {}; - document.head.appendChild(script); - } - - function exportToPdf() { - var btn = $('#export-pdf-btn'); - var originalText = btn.html(); - btn.prop('disabled', true).html(' Generating...'); - - function doPdf() { - if (typeof html2canvas === 'undefined') { - var componentBase = getComponentBase(); - var localH2c = componentBase ? (componentBase + '/scripts/vendor/html2canvas.min.js') : ''; - var cdnH2c = 'https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js'; - loadScript(localH2c || cdnH2c, function() { doPdf(); }, function() { - if (localH2c) { loadScript(cdnH2c, doPdf, fallbackPdf); return; } - fallbackPdf(); - }); - return; - } - if (typeof window.jspdf === 'undefined' || !window.jspdf.jsPDF) { - var componentBase = getComponentBase(); - var localJspdf = componentBase ? (componentBase + '/scripts/vendor/jspdf.umd.min.js') : ''; - var cdnJspdf = 'https://cdnjs.cloudflare.com/ajax/libs/jspdf/2.5.1/jspdf.umd.min.js'; - loadScript(localJspdf || cdnJspdf, doPdf, function() { - if (localJspdf) loadScript(cdnJspdf, doPdf, fallbackPdf); - else fallbackPdf(); - }); - return; - } - var container = document.getElementById('saturationreport-container'); - if (!container) container = document.getElementById('report'); - if (!container) { - alert('Report container not found'); - btn.prop('disabled', false).html(originalText); - return; - } - html2canvas(container, { - backgroundColor: '#ffffff', - scale: 2, - logging: false, - useCORS: true - }).then(function(canvas) { - try { - var JsPDF = window.jspdf.jsPDF; - var doc = new JsPDF('p', 'mm', 'a4'); - var pageW = doc.internal.pageSize.getWidth(); - var pageH = doc.internal.pageSize.getHeight(); - var margin = 10; - var maxW = pageW - 2 * margin; - var maxH = pageH - 2 * margin; - var imgW = maxW; - var imgH = (canvas.height * maxW) / canvas.width; - if (imgH > maxH) { - imgH = maxH; - imgW = (canvas.width * maxH) / canvas.height; - } - doc.addImage(canvas.toDataURL('image/png'), 'PNG', margin, margin, imgW, imgH); - doc.save('storage-saturation-report-' + new Date().getTime() + '.pdf'); - } catch (err) { - console.error('PDF export error:', err); - alert('Failed to generate PDF. Try Print to PDF from the browser.'); - } - btn.prop('disabled', false).html(originalText); - }).catch(function(err) { - console.error('Capture error:', err); - fallbackPdf(); - }); - } - - function fallbackPdf() { - btn.prop('disabled', false).html(originalText); - window.print(); - } - - doPdf(); - } - - function exportToImage() { - if (typeof html2canvas === 'undefined') { - var componentBase = (window.saturationreportBaseUrl || '').replace(/\/[^/]*$/, ''); - var localSrc = componentBase ? (componentBase + '/scripts/vendor/html2canvas.min.js') : ''; - var cdnSrc = 'https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js'; - var script = document.createElement('script'); - script.src = localSrc || cdnSrc; - script.onload = function() { captureImage(); }; - script.onerror = function() { - if (localSrc && script.src === localSrc) { - var fallback = document.createElement('script'); - fallback.src = cdnSrc; - fallback.onload = function() { captureImage(); }; - fallback.onerror = function() { - alert('Failed to load image export library. Please try using browser screenshot or print-to-PDF instead.'); - }; - document.head.appendChild(fallback); - } else { - alert('Failed to load image export library. Please try using browser screenshot or print-to-PDF instead.'); - } - }; - document.head.appendChild(script); - } else { - captureImage(); - } - } - - function captureImage() { - var container = document.getElementById('saturationreport-container'); - if (!container) { - container = document.getElementById('report'); - } - if (!container) { - alert('Report container not found'); - return; - } - - var btn = $('#export-image-btn'); - var originalText = btn.html(); - btn.prop('disabled', true).html(' Generating...'); - - html2canvas(container, { - backgroundColor: '#ffffff', - scale: 2, - logging: false, - useCORS: true - }).then(function(canvas) { - var link = document.createElement('a'); - link.download = 'saturation-report-' + new Date().getTime() + '.png'; - link.href = canvas.toDataURL('image/png'); - link.click(); - btn.prop('disabled', false).html(originalText); - }).catch(function(err) { - console.error('Error capturing image:', err); - alert('Failed to generate image. Please try using browser screenshot or print-to-PDF instead.'); - btn.prop('disabled', false).html(originalText); - }); - } -});