fix(maintenance): Ensure the start/end date are valid.

This commit is contained in:
Ionys 2025-06-11 12:06:11 +02:00
parent a462945a45
commit fe3a8dcd73

View file

@ -158,14 +158,20 @@ class Maintenance extends BeanModel {
bean.active = obj.active; bean.active = obj.active;
if (obj.dateRange[0]) { if (obj.dateRange[0]) {
new Date(obj.dateRange[0]); // Ensure it's a valid date const parsedDate = new Date(obj.dateRange[0]);
if (isNaN(parsedDate.getTime()) || parsedDate.getFullYear() > 9999)
throw new Error("Invalid start date");
bean.start_date = obj.dateRange[0]; bean.start_date = obj.dateRange[0];
} else { } else {
bean.start_date = null; bean.start_date = null;
} }
if (obj.dateRange[1]) { if (obj.dateRange[1]) {
new Date(obj.dateRange[1]); // Ensure it's a valid date const parsedDate = new Date(obj.dateRange[1]);
if (isNaN(parsedDate.getTime()) || parsedDate.getFullYear() > 9999)
throw new Error("Invalid end date");
bean.end_date = obj.dateRange[1]; bean.end_date = obj.dateRange[1];
} else { } else {
bean.end_date = null; bean.end_date = null;