Chargement...  ·  Semaine
Produit Prix
Chargement de la base de données...
Ma liste
Cliquez sur un produit pour l'ajouter
+ ecoTag + regOld + stag + ''; }).join(''); tbL.appendChild(div); }); } // ── Export CSV ──────────────────────────────────────────────────────────────── function exportCSV() { if (!lastData) return; var res = lastData.res, stores = lastData.stores; var csv = 'Article,Marque,' + stores.join(',') + ',Meilleur prix,Magasin\n'; res.forEach(function(r) { csv += '"' + r.article + '","' + (r.marque || '') + '",' + stores.map(function(s) { var p = r.prix[s]; return p && p.montant != null ? p.montant + (p.source === 'solde' ? ' SOLDE' : ' rég.') : ''; }).join(',') + ',' + (r._best < Infinity ? r._best.toFixed(2) + '$' : '') + ',' + (r._bs || '') + '\n'; }); var a = document.createElement('a'); a.href = URL.createObjectURL(new Blob(['\ufeff' + csv], {type: 'text/csv;charset=utf-8'})); a.download = 'panierEpargne-' + (lastData.semaine || '').replace(/[\s–—\/]/g, '-') + '.csv'; a.click(); } // Fermer modal avec Escape document.addEventListener('keydown', function(e) { if (e.key === 'Escape') fermerModal(); }); document.getElementById('modal').addEventListener('click', function(e) { if (e.target === this) fermerModal(); });