Код JS из HTT-Блоков
❗️ Данный код может отличаться от варианта из видео. Возможны: исправления ошибок, удаление лишних фрагментов кода, упрощение кода
➖➖➖
HTTP-БЛОК 1
// Переменная для записи ответа пользователя
setContactVariable("Д", "{{null}}");
setContactVariable("Вперёд", "→");
setContactVariable("Назад", "←");
setContactVariable("Страница", 0);
var D = new Date();
var d = 1;
var m = D.getMonth() + 1;
var y = D.getFullYear();
setContactVariable("День", d);
setContactVariable("Месяц", m);
setContactVariable("Год", y);
➖➖➖
HTTP-БЛОК 2
var next = getContactVariable("Вперёд");
var back = getContactVariable("Назад");
var page = +getContactVariable("Страница");
var select = getContactVariable("Д");
var day = getContactVariable("День");
var month = (getContactVariable("Месяц") - 1);
var year = getContactVariable("Год");
if (select == next) {
page = page + 1;
} else
if (select == back) {
page = page - 1;
};
setContactVariable("Страница", page);
// Получаем текущую дату
var D = new Date(year, (month + page), day);
// Распределяем дату на день, месяц и год
var d = D.getDate();
var m = D.getMonth() + 1;
var y = D.getFullYear();
// Получаем день недели указанной даты
function getWeekDay(date) {
var days = ["ВС","ПН","ВТ","СР","ЧТ","ПТ","СБ"];
return days[date.getDay()];
}
var firstDay = new Date(year, (month + page), 1);
days = ["ПН","ВТ","СР","ЧТ","ПТ","СБ","ВС"];
var n = 0;
var calendar = [];
for (var i = 1; i <= 42; i++ ) {
x = getWeekDay(firstDay);
if (x == days[n]){
a = calendar[n] = 1;
setContactVariable("Слот "+i, a);
break;
} else {
a = calendar[n] = "\n";
setContactVariable("Слот "+i, a);
n = n + 1;
};
};
// Последнее число выбранного месяца
function getLastDayOfMonth(y, m) {
date = new Date(y, m + 1, 0);
return date.getDate();
};
var LastDay = getLastDayOfMonth(y, m - 1);
var value = 0;
for (var i = n + 1; i <= 42; i++ ) {
if (value < LastDay){
value = value + 1;
a = calendar[i] = value;
setContactVariable("Слот "+i, a);
} else
if ((calendar[29] > 1 && i < 36) || calendar[36] > 1) {
a = calendar[i] = "\n";
setContactVariable("Слот "+i, a);
} else {
a = calendar[i] = "{{null}}";
setContactVariable("Слот "+i, a);
};
};
setContactVariable("МГ", m + "." + y);
var months = [
"Янв","Фев","Март",
"Апр","Май","Июнь","Июль",
"Авг","Сен","Окт",
"Нояб","Дек"
];
m = months[m-1];
setContactVariable("Дата", m+ " "+ y);