Как сделать:
<style>
.pastDay{opacity:.4;pointer-events:none}.pastDay::before{display:none}.today{color:#000 !important}
</style>
<script>
$(document).ready(function(){var a,b,c=new Date,d=c.getHours(),e=c.getMinutes(),f=c.getMonth()+1,g=c.getFullYear();$("form").on("DOMSubtreeModified",".t-input-block_inited-date-picker",function(){if($(".today").addClass("pastDay"),$(".cal-month .today").removeClass("selected-day"),$(".today").prevAll("tbody tr>td").addClass("pastDay"),$(".today").parent("tr").prevAll("tr").addClass("pastDay"),b=$(".today").attr("data-picker"),14>d?a=0:(14===d&&0<e||14<d)&&(a=1),b){var c=new Date(b.replace(/,/g,"."));c.setDate(c.getDate()+a+1);var h=`${c.getFullYear()}-${+c.getMonth()+1}-${c.getDate()}`;$(".cal-month td[data-picker=\""+h+"\"]").addClass("selected-day");for(var j=1;j<=a;j+=1)c=new Date(b.replace(/,/g,".")),c.setDate(c.getDate()+j),h=`${c.getFullYear()}-${+c.getMonth()+1}-${c.getDate()}`,$(".cal-month td[data-picker=\""+h+"\"]").addClass("pastDay")}var k=$("select.dp-select-month option:selected").val(),l=$("select.dp-select-year option:selected").val();(k<f&&l<=g||l<g)&&$(".cal-month tr").addClass("pastDay")})});
</script>
<style>
.pastDay {
opacity: 0.4;
pointer-events: none;
}
.pastDay::before {
display: none;
}
.today {
color: #000!important;
}
</style>
<script>
$(document).ready(function(){
var date = new Date(),
hours = date.getHours(),
minutes = date.getMinutes(),
month = date.getMonth() + 1,
year = date.getFullYear();
var counter, dataPickerValue; // добавила счетчик
$("form").on('DOMSubtreeModified', ".t-input-block_inited-date-picker", function() {
$('.today').addClass('pastDay');
$('.cal-month .today').removeClass('selected-day'); // Убираем кружок у действующего числа
$('.today').prevAll('tbody tr>td').addClass('pastDay');
$('.today').parent('tr').prevAll('tr').addClass('pastDay');
dataPickerValue = $('.today').attr('data-picker'); // Узнаем значение data-picker атрибута
if (hours < 14) {
// Если часов меньше 14, то счетчик равен 0
counter = 0;
} else if (hours === 14 && minutes > 0 || hours > 14) {
// Если часы равны 14, а минуты больше 0 (14:30, к примеру)
// Или если часов больше 14 счетчик равен 1
counter = 1;
}
if (dataPickerValue) {
var setDataPickerAttr = new Date(dataPickerValue.replace(/,/g, '.'));
setDataPickerAttr.setDate(setDataPickerAttr.getDate() + counter + 1);
var findDate = `${setDataPickerAttr.getFullYear()}-${Number(setDataPickerAttr.getMonth()) + 1}-${setDataPickerAttr.getDate()}`
// Даем активный статус (кружок) нужной дате
$('.cal-month td[data-picker="' + findDate+'"]').addClass('selected-day');
for (var i = 1; i <= counter; i += 1){
// Делаем не активными все даты, кроме нужных
setDataPickerAttr = new Date(dataPickerValue.replace(/,/g, '.'));
setDataPickerAttr.setDate(setDataPickerAttr.getDate() + i);
findDate = `${setDataPickerAttr.getFullYear()}-${Number(setDataPickerAttr.getMonth())+1}-${setDataPickerAttr.getDate()}`
$('.cal-month td[data-picker="'+findDate+'"]').addClass('pastDay');
};
}
var picM = $('select.dp-select-month option:selected').val();
var picD = $('select.dp-select-year option:selected').val();
if (picM<month && picD<=year || picD<year ){
$('.cal-month tr').addClass('pastDay');
};
});
});
</script>