Reputation: 67
I'm trying to set time using variables using jquery datetimepicker. So the problem is the following: in my logic i've datetimepicker that can select date and time. When the user click on form field and select date only, the plugin set selected date and current time. But we have different time available set by code (for example: monday 9:00 to 12:00 (step 1 hour), tuesday 8:00 to 11:00). So the picker doesn't have to set the current time but the first time available, for example 9:00 for monday.
When i select date only, it set also the time (but is wrong because in this case we have only 9:00 in the morning), so the result should be: 2022/04/01 09:00
How can i set it up? Below some code example:
Datetimepicker(jquery):
/**
* @param currentDateTime {Date}
*/
const allowTimeOnSelectedDay = function (currentDateTime) {
if (currentDateTime != null) {
var currentDay = currentDateTime.getDay();
const map1 = data.week.map(el => {
if (el.day == currentDay) {
let allowedTimes = generateAllowedTime(el.startingMattina, el.closingMattina, el.startingPome, el.closingPome);
console.log(allowedTimes);
console.log(allowedTimes[0]);
this.setOptions({
allowTimes: allowedTimes
});
}
});
}
};
$('#datetimepicker11').datetimepicker({
dayOfWeekStart: 1,
formatDate: 'd/m/Y H:i',
minDate: dateToStart,
maxDate: new Date(Date.parse(data.endDate)),
startDate: dateToStart,
beforeShowDay: function (date) {
for (let i = 0; i < arr.length; i++) {
if (date.getMonth() == arr[i].getMonth() && date.getDate() == arr[i].getDate()) {
return [false, ""]
}
}
return [true, ""];
},
onChangeDateTime: allowTimeOnSelectedDay,
onShow: allowTimeOnSelectedDay,
//onSelectDate : formattedDateOnSelectedDateOnly,
});
Upvotes: 0
Views: 640