- Модуль: iblock
- Путь к файлу: ~/bitrix/modules/iblock/lib/grid/panel/ui/actions/item/elementgroup/movetosectiongroupchild.php
- Класс: BitrixIblockGridPanelUIActionsItemElementGroupMoveToSectionGroupChild
- Вызов: MoveToSectionGroupChild::processRequest
public function processRequest(HttpRequest $request, bool $isSelectedAllRows): ?Result
{
$result = new Result();
$controls = $request->getPost('controls');
if (!is_array($controls))
{
return $result;
}
$sectionId = (int)($controls['section_id'] ?? 0);
if ($sectionId <= 0)
{
return $result;
}
if ($isSelectedAllRows)
{
$result->addErrors(
$this->moveElementsToSection($sectionId, true, [])->getErrors()
);
$result->addErrors(
$this->moveSectionsToSection($sectionId, true, [])->getErrors()
);
}
else
{
$ids = $this->getRequestRows($request);
if (empty($ids))
{
return null;
}
[$elementIds, $sectionIds] = RowType::parseIndexList($ids);
if ($elementIds)
{
$result->addErrors(
$this->moveElementsToSection($sectionId, false, $elementIds)->getErrors()
);
}
if ($sectionIds)
{
$result->addErrors(
$this->moveSectionsToSection($sectionId, false, $sectionIds)->getErrors()
);
}
}
return $result;
}