Это мой код index.js < /p>
Код: Выделить всё
import { db } from "./firebase-config.js";
import { ref, child, get, update } from "https://www.gstatic.com/firebasejs/12.2.1/firebase-database.js";
window.processTicket = async function processTicket(decodedText) {
console.log("processTicket called with:", decodedText);
const ticketRef = ref(db, `family-fiesta-25/${decodedText}`);
console.log("Ticket ref path:", ticketRef.toString());
try {
const snapshot = await get(ticketRef);
console.log("Snapshot exists?", snapshot.val());
if (snapshot.exists()) {
const data= snapshot.val();
console.log("Ticket data:", ticketData);
if (data.status === "checked_in") {
console.warn(`Ticket ${decodedText} already check-in.`);
alert(`Ticket ${decodedText} already check-in.`);
return;
}
console.log("Updating ticket status to 'checked_in'...");
await update(ticketRef, { status: "checked_in" });
const afterUpdateSnapshot = await get(ticketRef);
console.log("Ticket updated:", afterUpdateSnapshot.val());
alert(`🎉 Ticket ${decodedText} berhasil di-check-in!`);
} else {
console.warn("Ticket not found:", decodedText);
alert(`Ticket ${decodedText} not found. Please recheck again ticket code`);
}
} catch (err) {
console.error("Error updating:", err);
}
}
window.onload = () => {
const html5QrCode = new Html5Qrcode("reader");
html5QrCode.start(
{ facingMode: "environment" },
{ fps: 10, qrbox: 250 },
(decodedText) => {
processTicket(decodedText);
}).catch(err => console.error("QR Init err", err));
};
< /code>
Это мой index.html < /p>
Family Fiesta 2025 | QR Code Check In
QR Code Check-In
Test Ticket
< /code>
Это моя Firebase-config.js < /p>
import { initializeApp } from "https://www.gstatic.com/firebasejs/12.2.1/firebase-app.js";
import { getAnalytics } from "https://www.gstatic.com/firebasejs/12.2.1/firebase-analytics.js";
import { getDatabase } from "https://www.gstatic.com/firebasejs/12.2.1/firebase-database.js";
// TODO: Add SDKs for Firebase products that you want to use
// https://firebase.google.com/docs/web/setup#available-libraries
// Your web app's Firebase configuration
// For Firebase JS SDK v7.20.0 and later, measurementId is optional
const firebaseConfig = {
apiKey: "XXXXXXXXXXXXXXXXXXXXXXX-XXXXXXXXXXXXXXXXXXXX",
authDomain: "MY_DOMAIN.firebaseapp.com",
projectId: "XXXXXXXXXXXX",
storageBucket: "XXXXXXXXXXXXX.firebasestorage.app",
messagingSenderId: "XXXXXXXXXXXXXXX",
appId: "X:XXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
measurementId: "XXXXXXXXXXX",
databaseUrl: "https://MY_DB_PATH.firebasedatabase.app"
};
// Initialize Firebase
const app = initializeApp(firebaseConfig);
const analytics = getAnalytics(app);
const db = getDatabase(app);
export { db };
Подробнее здесь: https://stackoverflow.com/questions/797 ... javascript