moduleNameMapper = $moduleNameMapper; } /** * Get mod strings for given $language * @param $language * @return ModStrings|null */ public function getModStrings(string $language): ?ModStrings { $this->init(); if (empty($language)) { return null; } $enabledLanguages = get_languages(); if (empty($enabledLanguages) || !array_key_exists($language, $enabledLanguages)) { throw new ItemNotFoundException(self::MSG_LANGUAGE_NOT_FOUND . "'$language'"); } global $moduleList; $allModStringsArray = []; foreach ($moduleList as $module) { $frontendName = $this->moduleNameMapper->toFrontEnd($module); $allModStringsArray[$frontendName] = return_module_language($language, $module); } if (empty($allModStringsArray)) { throw new ItemNotFoundException(self::MSG_LANGUAGE_NOT_FOUND . "'$language'"); } $modStrings = new ModStrings(); $modStrings->setId($language); $modStrings->setItems($allModStringsArray); $this->close(); return $modStrings; } }