- Модуль: rest
- Путь к файлу: ~/bitrix/modules/rest/lib/api/userfieldtype.php
- Класс: BitrixRestApiUserFieldType
- Вызов: UserFieldType::delete
static function delete($param, $n, CRestServer $server)
{
static::checkPermission($server);
$param = array_change_key_case($param, CASE_UPPER);
$userTypeId = toLower($param['USER_TYPE_ID']);
if($userTypeId == '')
{
throw new ArgumentNullException("USER_TYPE_ID");
}
$dbRes = PlacementTable::getList(array(
'filter' => array(
'=REST_APP.CLIENT_ID' => $server->getClientId(),
'=ADDITIONAL' => $userTypeId
),
'select' => array('ID', 'APP_ID', 'ADDITIONAL')
));
$placementInfo = $dbRes->fetch();
if($placementInfo)
{
$deleteResult = PlacementTable::delete($placementInfo['ID']);
if($deleteResult->isSuccess())
{
Callback::unbind($placementInfo);
}
else
{
$errorMessage = $deleteResult->getErrorMessages();
throw new RestException(
'Unable to delete User Field Type: '.implode(', ', $errorMessage),
RestException::ERROR_CORE
);
}
}
else
{
throw new RestException('User Field Type not found', RestException::ERROR_NOT_FOUND);
}
return true;
}