- Модуль: calendar
- Путь к файлу: ~/bitrix/modules/calendar/lib/userfield/resourcebooking.php
- Класс: BitrixCalendarUserFieldResourceBooking
- Вызов: ResourceBooking::prepareSettings
static function prepareSettings($userField = [])
{
$userField = [
'SETTINGS' => [
'SELECTED_RESOURCES' => $userField['SETTINGS']['SELECTED_RESOURCES'] ?? null,
'SELECTED_USERS' => $userField['SETTINGS']['SELECTED_USERS'] ?? null,
'USE_USERS' => $userField['SETTINGS']['USE_USERS'] ?? null,
'USE_RESOURCES' => $userField['SETTINGS']['USE_RESOURCES'] ?? null,
'FULL_DAY' => $userField['SETTINGS']['FULL_DAY'] ?? null,
'ALLOW_OVERBOOKING' => $userField['SETTINGS']['ALLOW_OVERBOOKING'] ?? null,
'USE_SERVICES' => $userField['SETTINGS']['USE_SERVICES'] ?? null,
'SERVICE_LIST' => $userField['SETTINGS']['SERVICE_LIST'] ?? null,
'TIMEZONE' => $userField['SETTINGS']['TIMEZONE'] ?? null,
'USE_USER_TIMEZONE' => $userField['SETTINGS']['USE_USER_TIMEZONE'] ?? null,
],
];
$selectedResources = [];
if (is_array($userField["SETTINGS"]["SELECTED_RESOURCES"]))
{
$selectedResources = self::handleResourceList($userField["SETTINGS"]["SELECTED_RESOURCES"]);
}
$selectedUsers = [];
if (is_array($userField["SETTINGS"]["SELECTED_USERS"]))
{
foreach($userField["SETTINGS"]["SELECTED_USERS"] as $user)
{
if (intval($user) > 0)
{
$selectedUsers[] = intval($user);
}
}
}
return array(
"USE_USERS" => $userField["SETTINGS"]["USE_USERS"] === 'N' ? 'N' : 'Y',
"USE_RESOURCES" => $userField["SETTINGS"]["USE_RESOURCES"] === 'N' ? 'N' : 'Y',
"RESOURCES" => self::getDefaultResourcesList(),
"SELECTED_RESOURCES" => $selectedResources,
"SELECTED_USERS" => $selectedUsers,
"FULL_DAY" => $userField["SETTINGS"]["FULL_DAY"] === 'Y' ? 'Y' : 'N',
"ALLOW_OVERBOOKING" => $userField["SETTINGS"]["ALLOW_OVERBOOKING"] === 'N' ? 'N' : 'Y',
"USE_SERVICES" => $userField["SETTINGS"]["USE_SERVICES"] === 'N' ? 'N' : 'Y',
"SERVICE_LIST" => is_array($userField["SETTINGS"]["SERVICE_LIST"]) ? $userField["SETTINGS"]["SERVICE_LIST"] : self::getDefaultServiceList(),
"RESOURCE_LIMIT" => self::getBitrx24Limitation(),
"TIMEZONE" => $userField["SETTINGS"]["TIMEZONE"],
"USE_USER_TIMEZONE" => $userField["SETTINGS"]["USE_USER_TIMEZONE"] === 'Y' ? 'Y' : 'N'
);
}