• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

FluidTYPO3 / vhs / 13012391762

28 Jan 2025 02:15PM UTC coverage: 71.877% (-0.02%) from 71.896%
13012391762

push

github

NamelessCoder
[BUGFIX] Read ContentObjectRenderer from currentContentObject attribute if set

0 of 2 new or added lines in 1 file covered. (0.0%)

5628 of 7830 relevant lines covered (71.88%)

17.19 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

50.0
/Classes/Utility/ContentObjectFetcher.php
1
<?php
2
namespace FluidTYPO3\Vhs\Utility;
3

4
/*
5
 * This file is part of the FluidTYPO3/Vhs project under GPLv2 or later.
6
 *
7
 * For the full copyright and license information, please read the
8
 * LICENSE.md file that was distributed with this source code.
9
 */
10

11
use Psr\Http\Message\ServerRequestInterface;
12
use TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface;
13
use TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer;
14
use TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController;
15

16
class ContentObjectFetcher
17
{
18
    public static function resolve(?ConfigurationManagerInterface $configurationManager = null): ?ContentObjectRenderer
19
    {
20
        $contentObject = null;
96✔
21
        $request = ($configurationManager !== null && method_exists($configurationManager, 'getRequest')
96✔
22
            ? $configurationManager->getRequest()
×
23
            : ($GLOBALS['TYPO3_REQUEST'] ?? null)) ?? $GLOBALS['TYPO3_REQUEST'] ?? null;
96✔
24

25
        if ($request && $configurationManager === null) {
96✔
26
            $contentObject = static::resolveFromRequest($request);
×
27
        }
28

29
        if ($contentObject === null) {
96✔
30
            if ($configurationManager !== null && method_exists($configurationManager, 'getContentObject')) {
96✔
31
                $contentObject = $configurationManager->getContentObject();
96✔
32
            } elseif ($request) {
×
33
                $contentObject = static::resolveFromRequest($request);
×
34
            }
35
        }
36

37
        return $contentObject;
96✔
38
    }
39

40
    protected static function resolveFromRequest(ServerRequestInterface $request): ?ContentObjectRenderer
41
    {
NEW
42
        if (($cObject = $request->getAttribute('currentContentObject')) instanceof ContentObjectRenderer) {
×
NEW
43
            return $cObject;
×
44
        }
45
        /** @var TypoScriptFrontendController $controller */
46
        $controller = $request->getAttribute('frontend.controller');
×
47
        return $controller instanceof TypoScriptFrontendController ? $controller->cObj : null;
×
48
    }
49
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc