use Bitrix\Main\Localization\Loc; use Bitrix\Main\Web\Json; class CCalendarSceleton { public static function InitJS($config = array(), $data = array(), $additionalParams = array()) { global $APPLICATION; \Bitrix\Main\UI\Extension::load([ 'ajax', 'window', 'popup', 'access', 'date', 'viewer', 'color_picker', 'sidepanel', 'clipboard', 'ui.alerts', 'ui.buttons', 'ui.buttons.icons', 'ui.tooltip', 'ui.entity-selector', 'ui.forms', 'ui.hint', 'ui.confetti', 'calendar.util', 'calendar.entry', 'calendar.search', 'calendar.counters', 'calendar.controls', 'calendar.sliderloader', 'calendar.sync.manager', 'calendar.sync.interface', 'calendar.categorymanager', 'calendar.sharing.interface', 'calendar.sharing.public', ]); if(($config['type'] ?? null) === 'location') { \Bitrix\Main\UI\Extension::load([ 'calendar.rooms', 'calendar.roomsmanager', ]); } else { \Bitrix\Main\UI\Extension::load(['calendar.sectionmanager']); } if(\Bitrix\Main\Loader::includeModule('rest')) { \Bitrix\Main\UI\Extension::load('applayout'); } if(\Bitrix\Main\Loader::includeModule('webservice')) { \Bitrix\Main\UI\Extension::load('stssync'); } if (\Bitrix\Main\Loader::includeModule('bitrix24') && !in_array(\CBitrix24::getLicenseType(), array('company', 'demo', 'edu', 'bis_inc', 'nfr'))) { \CBitrix24::initLicenseInfoPopupJS(); } ?> CUtil::InitJSCore(array('event_calendar')); $config['weekStart'] = CCalendar::GetWeekStart(); $config['weekDays'] = self::GetWeekDaysEx($config['weekStart']); $config['days'] = self::GetWeekDays(); $config['month'] = array(Loc::getMessage('EC_JAN'), Loc::getMessage('EC_FEB'), Loc::getMessage('EC_MAR'), Loc::getMessage('EC_APR'), Loc::getMessage('EC_MAY'), Loc::getMessage('EC_JUN'), Loc::getMessage('EC_JUL'), Loc::getMessage('EC_AUG'), Loc::getMessage('EC_SEP'), Loc::getMessage('EC_OCT'), Loc::getMessage('EC_NOV'), Loc::getMessage('EC_DEC')); $config['month_r'] = array(Loc::getMessage('EC_JAN_R'), Loc::getMessage('EC_FEB_R'), Loc::getMessage('EC_MAR_R'), Loc::getMessage('EC_APR_R'), Loc::getMessage('EC_MAY_R'), Loc::getMessage('EC_JUN_R'), Loc::getMessage('EC_JUL_R'), Loc::getMessage('EC_AUG_R'), Loc::getMessage('EC_SEP_R'), Loc::getMessage('EC_OCT_R'), Loc::getMessage('EC_NOV_R'), Loc::getMessage('EC_DEC_R')); $APPLICATION->SetAdditionalCSS("/bitrix/js/calendar/cal-style.css"); ?>