Release v2.15.4
Publish Docker Image / build-and-push-existing-registry (./build/Dockerfile, web, pulse-signage-web) (push) Successful in 1m50s
Publish Docker Image / build-and-push-existing-registry (./build/Dockerfile.player, player, pulse-signage-player) (push) Successful in 34s

This commit is contained in:
lzstealth committed 2026-10-17 16:01:00 +01:00
1 parent 64aeb1b47e
commit 05c9341b08
25 files changed
+595 -31

No files matched your search

+18
View File
@@ -417,6 +417,24 @@ async function buildTemplateContent(pool, template, body, filesByField, existing
delete generic.timetable_display_mode;
delete generic.timetable_max_items;
generic.date_filter = ['between', 'before', 'after'].includes(generic.date_filter) ? generic.date_filter : 'all';
for (const field of ['date_from', 'date_to']) {
const value = String(generic[field] || '').trim();
const date = value ? new Date(value) : null;
const active = generic.date_filter === 'between' || generic.date_filter === (field === 'date_from' ? 'after' : 'before');
if (active && date && Number.isNaN(date.getTime())) {
const error = new Error('Timetable date range must contain valid date-times.');
error.statusCode = 400;
throw error;
}
generic[field] = date && !Number.isNaN(date.getTime()) ? date.toISOString() : '';
}
if (generic.date_filter === 'between' && generic.date_from && generic.date_to && generic.date_from > generic.date_to) {
const error = new Error('Timetable date range must end on or after its start.');
error.statusCode = 400;
throw error;
}
generic.text = normalizedText;
generic.value = normalizedText;
generic.type = region.region_type;