Release v2.15.4
This commit is contained in:
1 parent
64aeb1b47e
commit
05c9341b08
25 files changed
+595
-31
No files matched your search
@@ -17,6 +17,7 @@ const AUDIT_EVENT_CATEGORIES = Object.freeze({
|
||||
RSS_FEEDS: 'rss-feeds',
|
||||
TIMETABLES: 'timetables',
|
||||
WEATHER: 'weather',
|
||||
MEDIA_ASSETS: 'media-assets',
|
||||
SCREEN_CONTROLS: 'screen-controls'
|
||||
});
|
||||
const AUDIT_CATEGORY_KEYS = Object.freeze(Object.values(AUDIT_EVENT_CATEGORIES));
|
||||
@@ -37,6 +38,7 @@ const AUDIT_CATEGORY_LABELS = Object.freeze({
|
||||
'rss-feeds': 'RSS Feeds',
|
||||
timetables: 'Timetables',
|
||||
weather: 'Weather',
|
||||
'media-assets': 'Media Assets',
|
||||
'screen-controls': 'Screen Controls'
|
||||
});
|
||||
const SCREEN_CONTROL_COMMAND_KEYS = Object.freeze(['pause', 'blackout', 'reload', 'navigation', 'moveclient', 'setclientname']);
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in new issue
Block a user