Рейтинг: 4  
Новая
Предложил Пользователь 3089 24.12.2017 01:24:57

Допустить свою стилизацию дат в календаре BX.calendar

Сейчас (main 17.5.4) можно управлять выбором дат. Для этого нужно воспользоваться параметром callback и указать в нем функцию, возвращающую false для дат, которые выбирать нельзя.

Но этого недостаточно. Требуется визуально показать "нехорошие" даты, чтобы посетителю сайта не приходилось играть в минера. А для этого нужен еще один callback, возвращающий строку с дополнительными стилями для даты.

Дата этой библиотекой показывается ссылкой. Вся верстка создается в BX.JCCalendar._create_layer.
Стиля bx-calendar-weekend, используемого для традиционных выходных, недостаточно, т.к. есть еще и производственный календарь, даты в прошлом.

BX.calendar используется в стандартной компоненте bitrix:main.calendar.

Моя идея расширяет опубликованную в 2015 году идею о возможности выбора диапазона дат.

Добавлено:

Задача существенно шире стилизации. Из нее органично следует вторая - возможность перестройки календаря, если условия стилизации изменились. В моей ситуации это нужно для календаря с выбором желаемой клиентом даты доставки. Условия доставки могут измениться при выборе другого адреса доставки. Простая стилизация будет недостаточна, т.к. календарь "из коробки" строится один раз за все время жизни страницы.