52 lines
1.4 KiB
JavaScript
52 lines
1.4 KiB
JavaScript
import { alleenIngelogd, database } from "./index.js";
|
|
|
|
// Controleer of iemand ingelogd is
|
|
alleenIngelogd();
|
|
|
|
// Toon naam van ingelogde gebruiker
|
|
document.getElementById('naam').textContent =
|
|
database.authStore.record.naam;
|
|
|
|
// Haal eerste record is waarop gebruiker NIET uitgeklokt is (dan is iemand namelijk ingeklokt)
|
|
let ingeklokt = undefined;
|
|
|
|
try {
|
|
const item = await database.collection('klokken').getFirstListItem('uitgeklokt = NULL');
|
|
ingeklokt = item.id;
|
|
document.getElementById('klokknop').textContent = 'Uitklokken';
|
|
} catch {
|
|
// Niet ingeklokt, want niet gevonden
|
|
}
|
|
|
|
document.getElementById('klokknop').addEventListener('click', async () => {
|
|
try {
|
|
if (!ingeklokt) {
|
|
await inklokken();
|
|
} else {
|
|
await uitklokken();
|
|
}
|
|
} catch {
|
|
alert('In- of uitklokken mislukt');
|
|
}
|
|
});
|
|
|
|
document.getElementById('uitlogknop').addEventListener('click', () => {
|
|
database.authStore.clear();
|
|
window.location.href = 'inloggen.html';
|
|
});
|
|
|
|
async function inklokken() {
|
|
const item = await database.collection('klokken')
|
|
.create({ medewerker: database.authStore.record.id });
|
|
|
|
document.getElementById('klokknop').textContent = 'Uitklokken';
|
|
ingeklokt = item.id;
|
|
}
|
|
|
|
async function uitklokken() {
|
|
await database.collection('klokken')
|
|
.update(ingeklokt);
|
|
|
|
document.getElementById('klokknop').textContent = 'Inklokken';
|
|
ingeklokt = undefined;
|
|
} |