• Модуль: rpa
  • Путь к файлу: ~/bitrix/modules/rpa/lib/userpermissions.php
  • Класс: BitrixRpaUserPermissions
  • Вызов: UserPermissions::canMoveToStage
public function canMoveToStage(Stage $stageTo): bool
{
	if ($this->isAccessDeniedToEverything())
	{
		return false;
	}
	if(static::canMoveAnywhere())
	{
		return true;
	}

	$type = $stageTo->getType();
	$typeId = $type->getId();

	if(!isset($this->availableNextStages[$typeId]))
	{
		$this->availableNextStages[$typeId] = [];
		$stages = clone $type->getStages();
		reset($stages);
		foreach($stages as $stage)
		{
			if($this->canMoveFromStage($type, $stage->getId()))
			{
				foreach($stage->getPossibleNextStageIds() as $nextStageId)
				{
					$this->availableNextStages[$typeId][$nextStageId] = $nextStageId;
				}
			}
		}
	}

	return isset($this->availableNextStages[$typeId][$stageTo->getId()]);
}