N°2060 [WIP] Initialisation of the portal application: Refactor way brick controllers forward actions between each others

This commit is contained in:
Molkobain
2019-07-11 17:44:55 +02:00
parent ee45e546a8
commit cd6fe171cd
4 changed files with 36 additions and 30 deletions

View File

@@ -382,7 +382,7 @@ class ObjectController extends BrickController
'sObjectClass' => get_class($oTargetObject),
);
return $this->forward($this->GetControllerNameFromRoute('p_object_create'), $aRouteParams, $oRequest->query->all());
return $this->ForwardFromRoute('p_object_create', $aRouteParams, $oRequest->query->all());
}
/**
@@ -1390,21 +1390,4 @@ class ObjectController extends BrickController
return $aObjectData;
}
/**
* Returns a string containing the controller and action name of a specific route, typically used for request forwarding.
*
* Example: 'p_object_create' returns 'Combodo\iTop\Portal\Controller\ObjectController::CreateAction'
*
* @param string $sRouteName
*
* @return string
*/
private function GetControllerNameFromRoute($sRouteName)
{
$oRouteCollection = $this->get('router')->getRouteCollection();
$aRouteDefaults = $oRouteCollection->get($sRouteName)->getDefaults();
return $aRouteDefaults['_controller'];
}
}