Блог Горошко Андрея Bitrix24 Получить основные настройки календаря calendar.settings.get

Получить основные настройки календаря calendar.settings.get

Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «Получить основные настройки календаря calendar.settings.get», проанализируем лучшие практики и покажем, как правильно использовать calendar.settings.get в реальных задачах.

Получить основные настройки календаря calendar.settings.get

> Scope: calendar
>
> Кто может выполнять метод: любой пользователь

Метод получает основные настройки календаря. Изменить основные настройки может только администратор портала.

Без параметров.

Примеры кода

  • cURL (Webhook)
    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{}' \
    https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webbhook_here**/calendar.settings.get
  • cURL (OAuth)
    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"auth":"**put_access_token_here**"}' \
    https://**put_your_bitrix24_address**/rest/calendar.settings.get
  • JS
    try
    {
    	const response = await $b24.callMethod(
    		'calendar.settings.get',
    		{}
    	);
    	
    	const result = response.getData().result;
    }
    catch( error )
    {
    	console.error('Error:', error);
    }
  • PHP
    try {
        $response = $b24Service
            ->core
            ->call(
                'calendar.settings.get',
                []
            );
    
        $result = $response
            ->getResponseData()
            ->getResult();
    
        echo 'Success: ' . print_r($result, true);
        // Нужная вам логика обработки данных
        processData($result);
    
    } catch (Throwable $e) {
        error_log($e->getMessage());
        echo 'Error getting calendar settings: ' . $e->getMessage();
    }
  • BX24.js
    BX24.callMethod(
        'calendar.settings.get',
        {}
    );
  • PHP CRest
    require_once('crest.php');

    $result = CRest::call(
        'calendar.settings.get',
        []
    );

    echo '<PRE>';
    print_r($result);
    echo '</PRE>';

Обработка ответа

HTTP-статус: 200

{
    "result": {
        "work_time_start": "9",
        "work_time_end": "19",
        "year_holidays": "1.01,2.01,7.01,23.02,8.03,1.05,9.05,12.06,4.11",
        "year_workdays": "31.12",
        "week_holidays": [
            "SA",
            "SU"
        ],
        "week_start": "MO",
        "user_name_template": "#NAME# #LAST_NAME#",
        "sync_by_push": false,
        "user_show_login": true,
        "path_to_user": "/company/personal/user/#user_id#/",
        "path_to_user_calendar": "/company/personal/user/#user_id#/calendar/",
        "path_to_group": "/workgroups/group/#group_id#/",
        "path_to_group_calendar": "/workgroups/group/#group_id#/calendar/",
        "path_to_vr": "",
        "path_to_rm": "",
        "rm_iblock_type": "",
        "rm_iblock_id": "",
        "dep_manager_sub": true,
        "denied_superpose_types": [],
        "pathes_for_sites": "",
        "forum_id": "8",
        "rm_for_sites": true,
        "path_to_type_company_calendar": "",
        "path_to_type_location": "",
        "path_to_type_open_event": ""
    },
    "time": {
        "start": 1733924639.802569,
        "finish": 1733924640.184363,
        "duration": 0.3817939758300781,
        "processing": 0.012382984161376953,
        "date_start": "2024-12-11T13:43:59+00:00",
        "date_finish": "2024-12-11T13:44:00+00:00"
    }
}

Возвращаемые данные

Название
тип
Описание
result
object
Корневой элемент ответа
work_time_start
string
Время начала рабочего дня
work_time_end
string
Время окончания рабочего дня
year_holidays
string
Список праздничных дней
week_holidays
array
Массив выходных дней
week_start
string
День начала недели
user_name_template
string
Шаблон имени пользователя
sync_by_push
boolean
Флаг автоматической синхронизации календарей по подписке. Push-события от Google/Office365
user_show_login
boolean
Флаг отображения логина пользователя
path_to_user
string
Шаблон ссылки на профиль пользователя
path_to_user_calendar
string
Шаблон ссылки на просмотр календаря пользователя
path_to_group
string
Шаблон ссылки на просмотр рабочей группы
path_to_group_calendar
string
Шаблон ссылки на просмотр календаря группы
path_to_vr
string
Шаблон ссылки к видеопереговорной
path_to_rm
string
Шаблон ссылки к переговорной
rm_iblock_type
string
Тип инфоблока бронирования переговорных и видеопереговорных
rm_iblock_id
string
Идентификатор инфоблока бронирования переговорных
dep_manager_sub
boolean
Флаг разрешения начальникам просматривать календари подчиненных
denied_superpose_types
array
Список типов календарей, которые не могут быть добавлены в избранные
pathes_for_sites
boolean
Устанавливает шаблоны ссылок общие для всех сайтов
forum_id
string
Идентификатор форума для комментариев
rm_for_sites
boolean
Устанавливает параметры переговорных общие для всех сайтов
path_to_type_company_calendar
string
Шаблон ссылки на просмотр календарей компании
path_to_type_location
string
Шаблон ссылки на просмотр бронирования переговорных
path_to_type_open_event
string
Шаблон ссылки на просмотр календаря открытых событий

Обработка ошибок

  • [](./index)
  • [](./calendar-user-settings-get)
  • [](./calendar-user-settings-set)

💡 Экспертное мнение и рекомендации

Практические рекомендации:

  • При написании кастомных компонентов для «Получить основные настройки календаря calendar.settings.get» всегда разделяйте бизнес-логику и представление (шаблон).
  • Используйте отладку SQL-запросов через конструкцию $wpdb->last_query или стандартный трекер Битрикса, чтобы контролировать нагрузку.

Похожая задача в бизнесе?

Помогу автоматизировать процессы и внедрить ИИ

Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.

Related Post

Как использовать метод SDK tasks.task.counters.get в Битрикс24Как использовать метод SDK tasks.task.counters.get в Битрикс24

Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «Как использовать метод SDK tasks.task.counters.get в Битрикс24», проанализируем

Изменить элемент универсального списка lists.element.updateИзменить элемент универсального списка lists.element.update

При разработке и поддержке проектов на платформе 1С-Битрикс критически важно использовать современные стандарты D7 API. В этом руководстве мы детально изучим тему «Изменить элемент универсального списка lists.element.update», разберем архитектурные особенности

Получить информацию о стадии rpa.stage.getПолучить информацию о стадии rpa.stage.get

Эффективная интеграция и кастомизация функционала в Битрикс24 часто требует работы на уровне API. Сегодня мы подробно рассмотрим «Получить информацию о стадии rpa.stage.get». Вы узнаете экспертные методики работы с rpa.stage.get и