adjusting to new storage location of render functions
All checks were successful
ci/woodpecker/push/code-style Pipeline was successful
ci/woodpecker/push/functional-tests/1 Pipeline was successful
ci/woodpecker/push/functional-tests/2 Pipeline was successful
ci/woodpecker/push/functional-tests/3 Pipeline was successful
ci/woodpecker/push/functional-tests/4 Pipeline was successful
All checks were successful
ci/woodpecker/push/code-style Pipeline was successful
ci/woodpecker/push/functional-tests/1 Pipeline was successful
ci/woodpecker/push/functional-tests/2 Pipeline was successful
ci/woodpecker/push/functional-tests/3 Pipeline was successful
ci/woodpecker/push/functional-tests/4 Pipeline was successful
This commit is contained in:
parent
7585baee36
commit
baf5636bd3
4 changed files with 19 additions and 4 deletions
|
@ -11,6 +11,7 @@ use Doctrine\ORM\Query\Parameter;
|
||||||
use Neos\Flow\Annotations as Flow;
|
use Neos\Flow\Annotations as Flow;
|
||||||
use Neos\Flow\Persistence\Doctrine\Query;
|
use Neos\Flow\Persistence\Doctrine\Query;
|
||||||
use Neos\FluidAdaptor\Core\Widget\AbstractWidgetController;
|
use Neos\FluidAdaptor\Core\Widget\AbstractWidgetController;
|
||||||
|
use Neos\FluidAdaptor\View\TemplateView;
|
||||||
use Neos\Utility\TypeHandling;
|
use Neos\Utility\TypeHandling;
|
||||||
|
|
||||||
class FluidJsonController extends AbstractWidgetController
|
class FluidJsonController extends AbstractWidgetController
|
||||||
|
@ -80,6 +81,12 @@ class FluidJsonController extends AbstractWidgetController
|
||||||
public function indexAction()
|
public function indexAction()
|
||||||
{
|
{
|
||||||
$this->view->assign('entityClassName', $this->query->getType());
|
$this->view->assign('entityClassName', $this->query->getType());
|
||||||
|
if ($this->view instanceof TemplateView) {
|
||||||
|
$renderingContext = $this->request
|
||||||
|
->getInternalArgument('__widgetContext')
|
||||||
|
->getViewHelperChildNodeRenderingContext();
|
||||||
|
$this->view->assignMultiple($renderingContext->getVariableProvider()->getAll());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
||||||
namespace DigiComp\FluidJsonViews\ViewHelpers;
|
namespace DigiComp\FluidJsonViews\ViewHelpers;
|
||||||
|
|
||||||
use DigiComp\FluidJsonViews\ViewHelpers\Controller\FluidJsonController;
|
use DigiComp\FluidJsonViews\ViewHelpers\Controller\FluidJsonController;
|
||||||
use DigiComp\FluidRenderFunctions\InvokeRenderFunctionInterface;
|
use DigiComp\FluidRenderFunctions\ViewHelpers\Traits\ValidateRenderFunctionTrait;
|
||||||
use Neos\Flow\Annotations as Flow;
|
use Neos\Flow\Annotations as Flow;
|
||||||
use Neos\Flow\Mvc\Exception\InfiniteLoopException;
|
use Neos\Flow\Mvc\Exception\InfiniteLoopException;
|
||||||
use Neos\Flow\Mvc\Exception\StopActionException;
|
use Neos\Flow\Mvc\Exception\StopActionException;
|
||||||
|
@ -16,6 +16,8 @@ use Neos\FluidAdaptor\Core\Widget\Exception\MissingControllerException;
|
||||||
|
|
||||||
class FluidJsonViewHelper extends AbstractWidgetViewHelper
|
class FluidJsonViewHelper extends AbstractWidgetViewHelper
|
||||||
{
|
{
|
||||||
|
use ValidateRenderFunctionTrait;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @inheritDoc
|
* @inheritDoc
|
||||||
* @Flow\Inject
|
* @Flow\Inject
|
||||||
|
@ -38,7 +40,7 @@ class FluidJsonViewHelper extends AbstractWidgetViewHelper
|
||||||
$this->registerArgument('objects', QueryResult::class, 'Objects to show in table.', true);
|
$this->registerArgument('objects', QueryResult::class, 'Objects to show in table.', true);
|
||||||
$this->registerArgument(
|
$this->registerArgument(
|
||||||
'renderFunction',
|
'renderFunction',
|
||||||
InvokeRenderFunctionInterface::class,
|
'string',
|
||||||
'callabe to use to render single object',
|
'callabe to use to render single object',
|
||||||
true
|
true
|
||||||
);
|
);
|
||||||
|
@ -51,6 +53,12 @@ class FluidJsonViewHelper extends AbstractWidgetViewHelper
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function validateArguments()
|
||||||
|
{
|
||||||
|
parent::validateArguments();
|
||||||
|
$this->validateRenderFunctionArgument('renderFunction');
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @throws InfiniteLoopException
|
* @throws InfiniteLoopException
|
||||||
* @throws InvalidControllerException
|
* @throws InvalidControllerException
|
||||||
|
|
|
@ -7,7 +7,7 @@ Let me provide you an example:
|
||||||
<rf:registerRenderFunction as="renderTag">
|
<rf:registerRenderFunction as="renderTag">
|
||||||
{subject.name}
|
{subject.name}
|
||||||
</rf:registerRenderFunction>
|
</rf:registerRenderFunction>
|
||||||
<fj:fluidJson objects="{tags}" renderFunction="{renderTag}" searchProperties="{0: 'name'}">
|
<fj:fluidJson objects="{tags}" renderFunction="renderTag" searchProperties="{0: 'name'}">
|
||||||
<a href="{dataUri}">jsonView</a>
|
<a href="{dataUri}">jsonView</a>
|
||||||
</fj:fluidJson>
|
</fj:fluidJson>
|
||||||
```
|
```
|
||||||
|
|
|
@ -3,6 +3,6 @@
|
||||||
<rf:registerRenderFunction as="renderTag">
|
<rf:registerRenderFunction as="renderTag">
|
||||||
{subject.name}
|
{subject.name}
|
||||||
</rf:registerRenderFunction>
|
</rf:registerRenderFunction>
|
||||||
<fj:fluidJson objects="{tags}" renderFunction="{renderTag}" searchProperties="{0: 'name'}">
|
<fj:fluidJson objects="{tags}" renderFunction="renderTag" searchProperties="{0: 'name'}">
|
||||||
<a href="{dataUri}">jsonView</a>
|
<a href="{dataUri}">jsonView</a>
|
||||||
</fj:fluidJson>
|
</fj:fluidJson>
|
||||||
|
|
Loading…
Reference in a new issue