development #20
@@ -24,6 +24,11 @@
|
|||||||
let eventsError = $state('');
|
let eventsError = $state('');
|
||||||
|
|
||||||
onMount(async () => {
|
onMount(async () => {
|
||||||
|
// Load the persisted event ID from local storage
|
||||||
|
const storedEventId = localStorage.getItem('selectedScannerEventId');
|
||||||
|
if (storedEventId) {
|
||||||
|
selectedEventId = storedEventId;
|
||||||
|
}
|
||||||
await loadEvents();
|
await loadEvents();
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -40,9 +45,14 @@
|
|||||||
if (error) throw error;
|
if (error) throw error;
|
||||||
events = eventsData || [];
|
events = eventsData || [];
|
||||||
|
|
||||||
// If there are events, select the first one by default
|
// Check if the previously selected event is still in the list
|
||||||
if (events.length > 0) {
|
const selectedEventExists = events.some((event) => event.id === selectedEventId);
|
||||||
|
|
||||||
|
// If no event is selected, or the selected one is no longer valid, default to the first event
|
||||||
|
if ((!selectedEventId || !selectedEventExists) && events.length > 0) {
|
||||||
selectedEventId = events[0].id;
|
selectedEventId = events[0].id;
|
||||||
|
} else if (events.length === 0) {
|
||||||
|
selectedEventId = ''; // No events available
|
||||||
}
|
}
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.error('Error loading events:', err);
|
console.error('Error loading events:', err);
|
||||||
@@ -52,6 +62,13 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Persist the selected event ID to local storage whenever it changes
|
||||||
|
$effect(() => {
|
||||||
|
if (selectedEventId) {
|
||||||
|
localStorage.setItem('selectedScannerEventId', selectedEventId);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
// Process a scanned QR code
|
// Process a scanned QR code
|
||||||
$effect(() => {
|
$effect(() => {
|
||||||
if (scanned_id === '') return;
|
if (scanned_id === '') return;
|
||||||
|
|||||||
Reference in New Issue
Block a user