• Модуль: disk
  • Путь к файлу: ~/bitrix/modules/disk/lib/internals/basecomponent.php
  • Класс: BitrixDiskInternalsBaseComponent
  • Вызов: BaseComponent::resolveAction
protected function resolveAction()
{
	$listOfActions = $this->normalizeListOfAction($this->listActions());

	$this->realActionName = null;
	//todo? action prefix? Url Manager?
	$action = $this->arParams[$this->actionPrefix] ?? $this->request->getQuery($this->actionPrefix);
	if($action && is_string($action) && isset($listOfActions[strtolower($action)]))
	{
		$this->realActionName = strtolower($action);
	}

	if(!$this->realActionName || $this->realActionName === 'default')
	{
		$this->setProcessToDefaultAction();
		return $this;
	}

	$description = $listOfActions[$this->realActionName];
	if(!in_array($this->request->getRequestMethod(), $description['method'], true))
	{
		$this->setProcessToDefaultAction();
	}
	else
	{
		$this->setAction($description['name'], $description);
	}

	return $this;
}