aktueller stand
This commit is contained in:
@@ -865,9 +865,9 @@ app.post('/api/auth/logout', requireAuth, (req, res) => {
|
|||||||
if (req.session?.profile?.id && req.session?.storesCache) {
|
if (req.session?.profile?.id && req.session?.storesCache) {
|
||||||
cachedStoreSnapshots.set(req.session.profile.id, req.session.storesCache);
|
cachedStoreSnapshots.set(req.session.profile.id, req.session.storesCache);
|
||||||
}
|
}
|
||||||
sessionStore.delete(req.session.id);
|
sessionStore.update(req.session.id, { uiLoggedOutAt: Date.now() });
|
||||||
storeRefreshJobs.delete(req.session.id);
|
storeRefreshJobs.delete(req.session.id);
|
||||||
res.json({ success: true });
|
res.json({ success: true, backgroundJobsActive: true });
|
||||||
});
|
});
|
||||||
|
|
||||||
app.get('/api/auth/session', requireAuth, async (req, res) => {
|
app.get('/api/auth/session', requireAuth, async (req, res) => {
|
||||||
|
|||||||
@@ -496,17 +496,8 @@ async function getRegularPickupSchedule(session, storeId) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function resolveEffectiveNow(entry, now) {
|
|
||||||
const startValue = toDateValue(entry?.desiredDateRange?.start || entry?.desiredDate);
|
|
||||||
if (startValue && startValue > now.getTime()) {
|
|
||||||
return new Date(startValue);
|
|
||||||
}
|
|
||||||
return now;
|
|
||||||
}
|
|
||||||
|
|
||||||
async function getNextPickupCheckTime(session, entry, settings) {
|
async function getNextPickupCheckTime(session, entry, settings) {
|
||||||
const now = new Date();
|
const now = new Date();
|
||||||
const effectiveNow = resolveEffectiveNow(entry, now);
|
|
||||||
const offsets = (settings.pickupWindowOffsetsMinutes || [])
|
const offsets = (settings.pickupWindowOffsetsMinutes || [])
|
||||||
.map((value) => Number(value))
|
.map((value) => Number(value))
|
||||||
.filter((value) => Number.isFinite(value))
|
.filter((value) => Number.isFinite(value))
|
||||||
@@ -522,11 +513,11 @@ async function getNextPickupCheckTime(session, entry, settings) {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
const nowParts = getTimeZoneParts(effectiveNow, TIME_ZONE);
|
const nowParts = getTimeZoneParts(now, TIME_ZONE);
|
||||||
if (nowParts.weekday === null) {
|
if (nowParts.weekday === null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
const todayStart = getStartOfDayInTimeZone(effectiveNow, TIME_ZONE);
|
const todayStart = getStartOfDayInTimeZone(now, TIME_ZONE);
|
||||||
if (!todayStart) {
|
if (!todayStart) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -554,13 +545,13 @@ async function getNextPickupCheckTime(session, entry, settings) {
|
|||||||
|
|
||||||
let candidate = offsets
|
let candidate = offsets
|
||||||
.map((offset) => new Date(slotDate.getTime() + offset))
|
.map((offset) => new Date(slotDate.getTime() + offset))
|
||||||
.find((date) => date.getTime() > effectiveNow.getTime());
|
.find((date) => date.getTime() > now.getTime());
|
||||||
|
|
||||||
if (!candidate) {
|
if (!candidate) {
|
||||||
slotDate = addDays(slotDate, 7);
|
slotDate = addDays(slotDate, 7);
|
||||||
candidate = offsets
|
candidate = offsets
|
||||||
.map((offset) => new Date(slotDate.getTime() + offset))
|
.map((offset) => new Date(slotDate.getTime() + offset))
|
||||||
.find((date) => date.getTime() > effectiveNow.getTime());
|
.find((date) => date.getTime() > now.getTime());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (candidate && (!best || candidate.getTime() < best.getTime())) {
|
if (candidate && (!best || candidate.getTime() < best.getTime())) {
|
||||||
|
|||||||
Reference in New Issue
Block a user