- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/util/calendar.php
- Класс: Bitrix\Tasks\Util\Calendar
- Вызов: Calendar::getSettings
static function getSettings($siteId = false)
{
$result = static::getDefaultSettings();
if($siteId === false)
{
$siteId = SITE_ID;
}
$site = \CSite::GetByID($siteId)->fetch();
$weekDay = $site['WEEK_START'];
$weekDaysMap = array(
'SU', 'MO', 'TU', 'WE', 'TH', 'FR', 'SA'
);
if((string) $weekDay != '' && isset($weekDaysMap[$weekDay]))
{
$result['WEEK_START'] = $weekDaysMap[$weekDay];
}
$calendarSettings = \Bitrix\Tasks\Integration\Calendar::getSettings();
if(!empty($calendarSettings))
{
if(is_array($calendarSettings['week_holidays']))
{
$result['WEEKEND'] = $calendarSettings['week_holidays'];
}
/*
if((string) $calendarSettings['week_start'] != '')
{
$result['WEEK_START'] = $calendarSettings['week_start'];
}
*/
if((string) $calendarSettings['year_holidays'] != '')
{
$holidays = explode(',', $calendarSettings['year_holidays']);
if(is_array($holidays) && !empty($holidays))
{
foreach($holidays as $day)
{
$day = trim($day);
list($day, $month) = explode('.', $day);
$day = intval($day);
$month = intval($month);
if($day && $month)
{
$result['HOLIDAYS'][] = array('M' => $month, 'D' => $day);
}
}
}
}
$timeStart = explode('.', (string)$calendarSettings['work_time_start']);
if(isset($timeStart[0]))
{
$result['HOURS']['START']['H'] = (int)$timeStart[0];
}
if(isset($timeStart[1]))
{
$result['HOURS']['START']['M'] = (int)$timeStart[1];
}
$timeEnd = explode('.', (string)$calendarSettings['work_time_end']);
if(isset($timeEnd[0]))
{
$result['HOURS']['END']['H'] = (int)$timeEnd[0];
}
if(isset($timeEnd[1]))
{
$result['HOURS']['END']['M'] = (int)$timeEnd[1];
}
}
return $result;
}