GetOtEnvVarViewHelper.php 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <?php
  2. namespace Opentalent\OtTemplating\ViewHelpers\Request;
  3. use Closure;
  4. use Opentalent\OtCore\Service\OpentalentEnvService;
  5. use Opentalent\OtCore\ViewHelpers\OtAbstractViewHelper;
  6. use TYPO3Fluid\Fluid\Core\Rendering\RenderingContextInterface;
  7. /**
  8. * Returns an opentalent environment variable from the OpentalentEnvService
  9. *
  10. * {namespace ot=Opentalent\OtTemplating\ViewHelpers}
  11. *
  12. * {ot:request.getOtEnvVar(argument: 'name')}
  13. *
  14. * @package Opentalent\OtTemplating\ViewHelpers
  15. */
  16. class GetOtEnvVarViewHelper extends OtAbstractViewHelper {
  17. private OpentalentEnvService $opentalentEnvService;
  18. /**
  19. * @param OpentalentEnvService $opentalentEnvService
  20. */
  21. public function injectOpentalentEnvService(OpentalentEnvService $opentalentEnvService)
  22. {
  23. $this->opentalentEnvService = $opentalentEnvService;
  24. }
  25. /**
  26. * -- This method is expected by Fluid --
  27. * Declares the viewhelper's parameters
  28. */
  29. public function initializeArguments()
  30. {
  31. $this->registerArgument('argument',
  32. 'string',
  33. "The argument's name",
  34. true);
  35. }
  36. /**
  37. * -- This method is expected by Fluid --
  38. * Renders the content as html
  39. *
  40. * @param array $arguments
  41. * @param Closure $renderChildrenClosure
  42. * @param RenderingContextInterface $renderingContext
  43. * @return string
  44. */
  45. public function render() {
  46. $argument = $this->arguments['argument'];
  47. return $this->opentalentEnvService->get($argument);
  48. }
  49. }