/* ═══════════════════════════════════════════════════════════════════════ * Fajl: static/js/export_dropdown.js | v1.0.0 | 05.05.2026 * Autor: Damir Radulić / damir@rinet.one * Lokacija: /opt/pgz-sport/static/js/export_dropdown.js * Svrha: Shared "Export ▾" dropdown — CSV / XLSX / PDF — za sve tablice u * sport2.html, app.html, crm_v2.html, erp_full.html. Iza scene * koristi /api/v2/export?format=...&endpoint=... s autoriziranim * Bearer tokenom iz localStorage / sessionStorage. * Public API: * window.attachExportDropdown(buttonEl, endpointFn, filenameBase) * - buttonEl: ', '', '
', '' ].join(''); wrap.appendChild(menu); menu.__trigger = btn; btn.addEventListener('click', function (ev) { ev.stopPropagation(); // Close other open menus first. document.querySelectorAll('.pgz-exp-menu.on').forEach(function (m) { if (m !== menu) m.classList.remove('on'); }); menu.classList.toggle('on'); }); menu.addEventListener('click', function (ev) { var t = ev.target.closest('button[data-fmt]'); if (!t) return; ev.stopPropagation(); menu.classList.remove('on'); _trigger(t.getAttribute('data-fmt'), endpointFn, filenameBase); }); } window.attachExportDropdown = attachExportDropdown; })();