+13
-3
@@ -2,11 +2,17 @@ const SUPABASE_URL = 'https://chixssrphfgxvqqigkzo.supabase.co';
|
||||
const SUPABASE_ANON_KEY = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImNoaXhzc3JwaGZneHZxcWlna3pvIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NzQ2OTE0OTEsImV4cCI6MjA5MDI2NzQ5MX0.Az_Ew2J2zdOMcSV0UNAjBS-LPqGpqhsaN4IyZ5R7iqU';
|
||||
const sbClient = supabase.createClient(SUPABASE_URL, SUPABASE_ANON_KEY);
|
||||
|
||||
const html5QrCode = new Html5Qrcode("reader");
|
||||
let html5QrCode = null;
|
||||
const scannerOverlay = document.getElementById('scanner-overlay');
|
||||
|
||||
document.getElementById('startScanBtn').addEventListener('click', async () => {
|
||||
if (typeof Html5Qrcode === 'undefined') {
|
||||
alert("扫码组件加载失败,请刷新页面后重试。");
|
||||
return;
|
||||
}
|
||||
|
||||
scannerOverlay.style.display = 'flex';
|
||||
html5QrCode = html5QrCode || new Html5Qrcode("reader");
|
||||
|
||||
const config = {
|
||||
fps: 15,
|
||||
@@ -46,7 +52,7 @@ const SUPABASE_URL = 'https://chixssrphfgxvqqigkzo.supabase.co';
|
||||
});
|
||||
|
||||
async function closeScanner() {
|
||||
if (html5QrCode.isScanning) {
|
||||
if (html5QrCode && html5QrCode.isScanning) {
|
||||
await html5QrCode.stop();
|
||||
}
|
||||
scannerOverlay.style.display = 'none';
|
||||
@@ -111,6 +117,10 @@ const SUPABASE_URL = 'https://chixssrphfgxvqqigkzo.supabase.co';
|
||||
}[char]));
|
||||
}
|
||||
|
||||
function encodeUrlParam(value) {
|
||||
return encodeURIComponent(String(value ?? ''));
|
||||
}
|
||||
|
||||
function renderAwardStats(data, awardRecipientCounts) {
|
||||
const holderCounts = (data || []).reduce((counts, item) => {
|
||||
const holderName = item.holder_name || '未填写';
|
||||
@@ -205,7 +215,7 @@ const SUPABASE_URL = 'https://chixssrphfgxvqqigkzo.supabase.co';
|
||||
<td>${escapeHtml(item.holder_name || '-')}</td>
|
||||
<td>${escapeHtml(item.honor_title || '-')}</td>
|
||||
<td>${escapeHtml(item.issue_date || '-')}</td>
|
||||
<td><button class="tech-link-button secondary" type="button" onclick="goToDetail('${item.id}')">查看详情</button></td>
|
||||
<td><a class="tech-link-button secondary" href="certificate.html?id=${encodeUrlParam(item.id)}">查看详情</a></td>
|
||||
</tr>
|
||||
`;
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user