JSFiddle - React, Tailwind, and code Playground
JavaScript
window.bxCLDRConfig =
_.defaults(window.bxCLDRConfig || {}, {
onlyBitrix: false,
body: 'television',
defaultEventTitle: 'Событие!',
defaultEventClass: 'calendarEvent',
popupId: 'eventsCalendarPopup',
animationSpeed: 100,
calendarId: 'eventsCalendar',
wrapperId: 'calendarWrapper',
calendarJSBaseUrl: window.calendarJSBaseURL,
jqueryMinVer: '2.1.0',
ajax: true,
dataUrl: '/calendar/data',
checkLibsAvailability: false,
showOnHover: false,
epointParserOff: true,
showRange: true,
markStyle: false,
selectionType: 'SEL_SINGLE',
animation: true,
min: null,
max: null,
noScroll: false,
showTime: false,
weekNumbers: false,
rangePrefix: 'e',
markIntersect: true,
cleanslateClass: 'cleanslate',
messages: {
'10001': "10001: Ошибка инициализации!",
'10002': "10002: Ошибка загрузки данных с сервера!",
'10003': "10003: Неправильная версия jQuery. Требуется - %s",
'10004': "10004: Ошибка загрузки главной библиотеки 'Calendar'",
'10005': "10005: Ошибка. Нет скрипта - %s",
'10006': "10006: Ошибка. Не найден контейнер календаря - #%s"
}
});
try {
(function ($) {
$(function () {
var config = window.bxCLDRConfig;
var _cache = {};
_cache.popup = null;
_cache.$popup = null;
_cache.$wrapper = $('[id=' + config.wrapperId + ']');
_cache.$calendar = $('[id=' + config.calendarId + ']');
_cache.$legend = $('div.calendar-info-footer', _cache.$wrapper);
_cache.templates = {};
_cache.templates.popup = null;
_cache.templates.row = null;
_cache.calendar = null;
_cache.data = null;
_cache.lang = {};
var $body = $('[id=' + config.body + ']');
var toggler = toggle({});
loadJSON(function (data) {
if (data) {
_cache.data = data || [];
initialize(function (err) {
if (err) {
throw new Error(err);
}
});
}
});
function Templates() {
var popupTemplate =...