56 $hash = md5(
$type .
':' . $TStext);
58 $cache = GeneralUtility::makeInstance(CacheManager::class)->getCache(
'cache_hash');
59 $cachedContent = $cache->get($hash);
60 if (is_array($cachedContent)) {
61 $storedData = $cachedContent[0];
62 $storedMD5 = $cachedContent[1];
63 $storedData[
'match'] = [];
64 $storedData = $this->
matching($storedData);
65 $checkMD5 = md5(serialize($storedData));
66 if ($checkMD5 == $storedMD5) {
68 'TSconfig' => $storedData[
'TSconfig'],
73 $shash = md5($checkMD5 . $hash);
74 $cachedSpec = $cache->get($shash);
75 if (is_array($cachedSpec)) {
76 $storedData = $cachedSpec;
78 'TSconfig' => $storedData[
'TSconfig'],
85 'TSconfig' => $storeData[
'TSconfig'],
89 $cache->set($shash, $storeData, [
'ident_' .
$type .
'_TSconfig'], 0);
94 $md5 = md5(serialize($storeData));
95 $cache->set($hash, [$storeData, $md5], [
'ident_' .
$type .
'_TSconfig'], 0);
97 'TSconfig' => $storeData[
'TSconfig'],
114 $matchObj = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\
TYPO3\CMS\Backend\Configuration\TypoScript\ConditionMatching\ConditionMatcher::class);
115 $matchObj->setRootline($this->rootLine);
116 $matchObj->setPageId($this->
id);
117 $this->
parse($TSconfig, $matchObj);
133 if (is_array($cc[
'sections'])) {
135 $matchObj = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\
TYPO3\CMS\Backend\Configuration\TypoScript\ConditionMatching\ConditionMatcher::class);
136 $matchObj->setRootline($this->rootLine);
137 $matchObj->setPageId($this->
id);
138 foreach ($cc[
'sections'] as $key => $pre) {
139 if ($matchObj->match($pre)) {
140 $cc[
'match'][$key] = $pre;