mypastebin/static/js/qrcode-handler.js
2025-05-29 22:40:58 +02:00

37 lines
1.5 KiB
JavaScript

document.addEventListener('DOMContentLoaded', () => {
const pasteId = document.body.dataset.pasteId; // Obtener `pasteId` desde `data-*`
const downloadUrl = document.body.dataset.downloadUrl; // `data-download-url`
const qrCodeContainer = document.getElementById('qrcode');
if (qrCodeContainer && downloadUrl) {
new QRCode(qrCodeContainer, {
text: downloadUrl,
width: 200,
height: 200,
colorDark: "#000000",
colorLight: "#ffffff",
correctLevel: QRCode.CorrectLevel.H
});
const downloadQrButton = document.getElementById('download-qr');
if (downloadQrButton) {
downloadQrButton.addEventListener('click', () => {
const canvas = qrCodeContainer.querySelector('canvas');
if (canvas) {
const pngUrl = canvas.toDataURL("image/png").replace("image/png", "image/octet-stream");
const downloadLink = document.createElement('a');
downloadLink.href = pngUrl;
downloadLink.download = `qr_code_paste_${pasteId}.png`;
document.body.appendChild(downloadLink);
downloadLink.click();
document.body.removeChild(downloadLink);
showToast('QR descargado exitosamente!', 'bg-success');
} else {
showToast('Error al generar el código QR.', 'bg-danger');
}
});
}
}
});