78 public function getParsedData($fileReference, $languageKey, $charset,
$errorMode, $isLocalizationOverride = FALSE) {
79 $hash = md5($fileReference . $languageKey . $charset);
82 if (!$this->store->hasData($fileReference,
'default') && $languageKey !==
'default') {
83 $this->getParsedData($fileReference,
'default', $charset, $this->errorMode);
86 if ($this->store->hasData($fileReference, $languageKey)) {
87 return $this->store->getData($fileReference);
91 $data = $this->cacheInstance->get($hash);
92 if ($data !== FALSE) {
93 $this->store->setData($fileReference, $languageKey, $data);
94 return $this->store->getData($fileReference);
98 $this->store->setConfiguration($fileReference, $languageKey, $charset);
100 $parser = $this->store->getParserInstance($fileReference);
102 $LOCAL_LANG = $parser->getParsedData($this->store->getAbsoluteFileReference($fileReference), $languageKey, $charset);
103 }
catch (
Exception\FileNotFoundException $exception) {
105 $this->store->setData($fileReference, $languageKey, array());
106 $LOCAL_LANG = $this->store->getData($fileReference);
110 if (!$isLocalizationOverride && isset(
$GLOBALS[
'TYPO3_CONF_VARS'][
'SYS'][
'locallangXMLOverride'])) {
115 $this->store->setData($fileReference, $languageKey,
$LOCAL_LANG[$languageKey]);
118 $this->cacheInstance->set($hash, $this->store->getDataByLanguage($fileReference, $languageKey));
120 return $this->store->getData($fileReference);
136 $overrides = array();
137 $fileReferenceWithoutExtension = $this->store->getFileReferenceWithoutExtension($fileReference);
138 $locallangXMLOverride =
$GLOBALS[
'TYPO3_CONF_VARS'][
'SYS'][
'locallangXMLOverride'];
139 foreach ($this->store->getSupportedExtensions() as $extension) {
140 if (isset($locallangXMLOverride[$languageKey][$fileReferenceWithoutExtension .
'.' . $extension]) && is_array($locallangXMLOverride[$languageKey][$fileReferenceWithoutExtension .
'.' . $extension])) {
141 $overrides = array_merge($overrides, $locallangXMLOverride[$languageKey][$fileReferenceWithoutExtension .
'.' . $extension]);
142 } elseif (isset($locallangXMLOverride[$fileReferenceWithoutExtension .
'.' . $extension]) && is_array($locallangXMLOverride[$fileReferenceWithoutExtension .
'.' . $extension])) {
143 $overrides = array_merge($overrides, $locallangXMLOverride[$fileReferenceWithoutExtension .
'.' . $extension]);
146 if (count($overrides) > 0) {
147 foreach ($overrides as $overrideFile) {
localizationOverride($fileReference, $languageKey, $charset, $errorMode, array &$LOCAL_LANG)
static mergeRecursiveWithOverrule(array &$original, array $overrule, $addKeys=TRUE, $includeEmptyValues=TRUE, $enableUnsetFeature=TRUE)
static makeInstance($className)
if(!defined('TYPO3_MODE')) $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_userauth.php']['logoff_pre_processing'][]
static getFileAbsFileName($filename, $onlyRelative=TRUE, $relToTYPO3_mainDir=FALSE)