- Модуль: iblock
- Путь к файлу: ~/bitrix/modules/iblock/lib/grid/panel/ui/actions/item/editactionsitem.php
- Класс: BitrixIblockGridPanelUIActionsItemEditActionsItem
- Вызов: EditActionsItem::processRequest
public function processRequest(HttpRequest $request, bool $isSelectedAllRows): ?Result
{
$result = new Result();
$rows = $request->getPost('FIELDS');
$rows = $this->appendFilesToRows($request, $rows);
foreach ($rows as $id => $fields)
{
[$type, $id] = RowType::parseIndex($id);
$fields = $this->getColumns()->prepareEditableColumnsValues($fields);
if (empty($fields))
{
continue;
}
if ($type === RowType::ELEMENT)
{
if (!$this->rights->canEditElement($id))
{
$message = Loc::getMessage('', [
'#ID#' => $id,
]);
$result->addError(
new Error($message)
);
continue;
}
$result->addErrors(
$this->saveElement($id, $fields)->getErrors()
);
}
else
{
if (!$this->rights->canEditSection($id))
{
$message = Loc::getMessage('IBLOCK_GRID_PANEL_UI_EDIT_ACTIONS_ITEM_ACCESS_DENIED', [
'#ID#' => $id,
]);
$result->addError(
new Error($message)
);
continue;
}
$result->addErrors(
$this->saveSection($id, $fields)->getErrors()
);
}
}
return $result;
}