[TYPO3-mvc] HMENU userFunc & extbase
Simon Weber
weber at voxmedien.de
Wed Jun 23 18:18:37 CEST 2010
Thanks !
That did the trick.
Simon
Am 23.06.2010 18:06, schrieb Franz Koch:
> Hi,
>
>> does someone here have experience using an extbase-Action as HMENU
>> userFunc ?
>> I get to the point that my action gets called, but if I return an array
>> the menu always stays empty.
>> I'm totally out of ideas here.
>
> I had to modify the callActionMethod in my controller to be able to
> return non-string results. Try adding this method in your menu controller:
>
> /**
> * Calls the specified action method and passes the arguments.
> *
> * If the action returns a string, it is appended to the content in the
> * response object. If the action doesn't return anything and a valid
> * view exists, the view is rendered automatically.
> *
> * @param string $actionMethodName Name of the action method to call
> * @return void
> * @api
> */
> protected function callActionMethod() {
> $argumentsAreValid = TRUE;
> $preparedArguments = array();
> foreach ($this->arguments as $argument) {
> $preparedArguments[] = $argument->getValue();
> }
>
> if ($this->argumentsMappingResults->hasErrors()) {
> $actionResult = call_user_func(array($this, $this->errorMethodName));
> } else {
> $actionResult = call_user_func_array(array($this,
> $this->actionMethodName), $preparedArguments);
> }
> if ($actionResult === NULL && $this->view instanceof
> Tx_Extbase_MVC_View_ViewInterface) {
> $this->response->appendContent($this->view->render());
> } elseif (is_string($actionResult) && strlen($actionResult) > 0) {
> $this->response->appendContent($actionResult);
> } else if ($actionResult) {
> $this->response->setContent($actionResult);
> }
> }
>
>
More information about the TYPO3-project-typo3v4mvc
mailing list