MoK: Zeiten-Bug gefixt

This commit is contained in:
2024-03-19 19:10:13 +01:00
parent 458e417523
commit 28ff0df2ba
3 changed files with 43 additions and 31 deletions

View File

@@ -211,11 +211,12 @@ function validateForm(form, prefix) {
var startTimeInput = $(`#${prefix}start-time`);
var endTimeInput = $(`#${prefix}end-time`);
$("#srv-date").val(start.format("DD.MM.YYYY"));
$("#srv-end").val(endTimeInput.val());
$("#srv-start").val(startTimeInput.val());
$("#srv-end-date").val(end.format("DD.MM.YYYY"));
$("#srv-start").val(startTimeInput.val());
$("#srv-end").val(endTimeInput.val());
$("#srv-doku1").val(doku1);
$("#srv-doku2").val(doku2);
$("#srv-doku3").val(doku3);
@@ -374,39 +375,48 @@ function getStartAndEndDate(prefix) {
var startDatePicker = $("#" + prefix + "start-date-picker");
var endDatePicker = $("#" + prefix + "end-date-picker");
// Bei leeren Start- und Endfeldern. Muss ein Dummydate zurückgeben,
// damit das Speichern ohne Angabe der Start- und Endzeit möglich ist.
if($("#" + prefix + "start-time").val().length === 0 || $("#" + prefix + "end-time").val().length === 0) {
var bareDate = new Date();
bareDate.setHours(0);
bareDate.setMinutes(0);
bareDate.setSeconds(1);
var dummyDate = moment(bareDate);
return [dummyDate, dummyDate];
}
startTimePicker.datetimepicker("show");
startTimePicker.datetimepicker("hide");
startDatePicker.datetimepicker("show");
startDatePicker.datetimepicker("hide");
endTimePicker.datetimepicker("show");
endTimePicker.datetimepicker("hide");
endDatePicker.datetimepicker("show");
endDatePicker.datetimepicker("hide");
var startTime = startTimePicker.datetimepicker("date");
var endTime = endTimePicker.datetimepicker("date");
var startDate = startDatePicker.datetimepicker("date");
var endDate = endDatePicker.datetimepicker("date");
var a = startDate === undefined || startDate === null || !startDate.isValid();
var b = endDatePicker.length === 0 ? false : endDate === undefined || endDate === null || !endDate.isValid();
// Bei leeren Startzeit- und Endzeitfeldern. Muss ein Dummydate zurückgeben,
// damit das Speichern ohne Angabe der Start- und Endzeit möglich ist.
if(a && $(`#${prefix}start-time`).val().length === 0 || $(`#${prefix}end-time`).val().length === 0) {
var dummyStart = startDate;
var dummyEnd = endDatePicker.length === 0 ? startDate.clone() : endDate;
dummyStart.hours(0);
dummyStart.minutes(0);
dummyStart.seconds(1);
dummyEnd.hours(0);
dummyEnd.minutes(0);
dummyEnd.seconds(1);
if (dummyEnd.isBefore(dummyStart)) {
return null;
}
return [dummyStart, dummyEnd];
}
startTimePicker.datetimepicker("show");
startTimePicker.datetimepicker("hide");
endTimePicker.datetimepicker("show");
endTimePicker.datetimepicker("hide");
var startTime = startTimePicker.datetimepicker("date");
var endTime = endTimePicker.datetimepicker("date");
var c = startTime === undefined || startTime === null || !startTime.isValid();
var d = endTime === undefined || endTime === null || !endTime.isValid();