/** * Create path based on passed $controller and $arguments * $controllerAction has to be of form "Controller::action" * $arguments can be any array which will be converted into a query string * * Example: {{ url('Default:index') }} * * @param $controllerAction * @param array $arguments * @param boolean $ajax * @return string */ public function functionPath($controllerAction, $arguments = array(), $ajax = false) { $controllerParts = explode(':', $controllerAction, 3); if (count($controllerParts) < 2) { throw new \InvalidArgumentException('Invalid call of functionPath/functionUrl(). You need to specify controller and action'); } else { $arguments['orchestraAction'] = $controllerParts[1]; $arguments['orchestraController'] = $controllerParts[0]; $arguments['page'] = $this->request->query->get('page'); } return Controller::generatePath($this->request, $arguments, $ajax); }