...Человеческий поиск в разработке...
- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/classes/general/crm_activity.php
- Класс: \CAllCrmActivity
- Вызов: CAllCrmActivity::CheckCompletePermission
static function CheckCompletePermission($ownerType, $ownerID, $userPermissions = null, $params = null) { $ownerTypeName = is_numeric($ownerType) ? CCrmOwnerType::ResolveName((int)$ownerType) : mb_strtoupper(strval($ownerType)); if(!is_int($ownerID)) { $ownerID = (int)$ownerID; } if(!$userPermissions) { $userPermissions = self::GetUserPermissions(); } if(is_array($params)) { $ID = isset($params['ID']) ? $params['ID'] : 0; $fields = isset($params['FIELDS']) ? $params['FIELDS'] : null; if((!is_array($fields) || !isset($fields['TYPE_ID']) || !isset($fields['PROVIDER_ID']) )&& $ID > 0) { $fields = self::GetByID($ID, false); } if(is_array($fields)) { $provider = self::GetActivityProvider($fields); if ($provider !== null) { $associatedEntityID = isset($fields['ASSOCIATED_ENTITY_ID']) ? (int)$fields['ASSOCIATED_ENTITY_ID'] : 0; $result = $provider::checkCompletePermission($associatedEntityID, $fields, $userPermissions->GetUserID()); if (is_bool($result)) { return $result; } } } } $permissionEntityType = CCrmPerms::ResolvePermissionEntityType($ownerTypeName, $ownerID); return CCrmAuthorizationHelper::CheckUpdatePermission($permissionEntityType, $ownerID, $userPermissions); }