// Функция для получения следующей рабочей даты (понедельник - пятница)
function getNextWorkingDate() {
const now = new Date();
let daysAhead = 0;
// Если сейчас пятница или позже, переходим к следующему понедельнику
const dayOfWeek = now.getDay();
if (dayOfWeek === 5 || dayOfWeek === 6 || dayOfWeek === 0) {
daysAhead = (8 - dayOfWeek) % 7 + 1; // Для пятницы (5) -> понедельник (1), суббота(6)->понедельник, воскресенье(0)->понедельник
} else {
// Для будней - следующий день
daysAhead = 1;
}
const nextDate = new Date(now);
nextDate.setDate(now.getDate() + daysAhead);
// Устанавливаем время на 15:00 MSK (UTC+3)
nextDate.setHours(12, 0, 0, 0); // 15:00 MSK = 12:00 UTC
return nextDate;
}
// Функция для форматирования даты в русский формат: "16 сентября"
function formatDateToRussian(date) {
const day = date.getDate();
const monthNames = [
'января', 'февраля', 'марта', 'апреля', 'мая', 'июня',
'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря'
];
const month = monthNames[date.getMonth()];
return `${day} ${month}`;
}
// Функция для обновления даты на странице
function updateWebinarDate() {
const nextWorkingDate = getNextWorkingDate();
const formattedDate = formatDateToRussian(nextWorkingDate);
// Стили, соответствующие дизайну страницы
const dateStyles = `
font-family: 'Montserrat', sans-serif;
font-weight: 700;
font-size: 24px;
color: #000000;
line-height: 1.2;
text-align: center;
`;
// Обновляем элемент с датой. Предполагаем, что дата находится в элементе с ID "webinar-date"
const dateElement = document.getElementById('webinar-date');
if (dateElement) {
dateElement.innerHTML = `${formattedDate} 15.00 мск`;
} else {
// Альтернативно, если дата в элементе с классом .webinar-date-time
const altElement = document.querySelector('.webinar-date-time');
if (altElement) {
altElement.innerHTML = `${formattedDate} 15.00 мск`;
} else {
// Поиск по тексту (менее надежно, но как запасной вариант)
const elements = document.querySelectorAll('*');
for (let el of elements) {
if (el.textContent && el.textContent.includes('16 сентября 15.00 мск')) {
el.innerHTML = el.innerHTML.replace(
/16 сентября 15\.00 мск/,
`${formattedDate} 15.00 мск`
);
break;
}
}
}
}
}
// Проверяем, нужно ли обновить дату: если текущее время >= 14:00 MSK (11:00 UTC)
function shouldUpdateDate() {
const now = new Date();
const mskOffset = 3 * 60 * 60 * 1000; // MSK UTC+3
const mskTime = new Date(now.getTime() + mskOffset);
const hours = mskTime.getUTCHours();
const minutes = mskTime.getUTCMinutes();
return (hours > 14) || (hours === 14 && minutes >= 0);
}
// Инициализация при загрузке страницы
document.addEventListener('DOMContentLoaded', function() {
if (shouldUpdateDate()) {
updateWebinarDate();
}
});