diff options
author | git-marijus <mario@mariovavti.com> | 2017-11-04 10:22:58 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-04 10:22:58 +0100 |
commit | cfbeb1655daba511f4843b8ba070a247e233fb29 (patch) | |
tree | 8ef7bf1e06a5d223228b370121bda97695af7d0e /library/intl/src/Language/LanguageRepository.php | |
parent | 1a737be2b408135177a9e94dcffd0f68c0aca90b (diff) | |
parent | 39c194c5c32e49f461b8b42a3f4e411a3a5cde3c (diff) | |
download | volse-hubzilla-cfbeb1655daba511f4843b8ba070a247e233fb29.tar.gz volse-hubzilla-cfbeb1655daba511f4843b8ba070a247e233fb29.tar.bz2 volse-hubzilla-cfbeb1655daba511f4843b8ba070a247e233fb29.zip |
Merge branch 'dev' into docu
Diffstat (limited to 'library/intl/src/Language/LanguageRepository.php')
-rw-r--r-- | library/intl/src/Language/LanguageRepository.php | 96 |
1 files changed, 0 insertions, 96 deletions
diff --git a/library/intl/src/Language/LanguageRepository.php b/library/intl/src/Language/LanguageRepository.php deleted file mode 100644 index 50335cdc0..000000000 --- a/library/intl/src/Language/LanguageRepository.php +++ /dev/null @@ -1,96 +0,0 @@ -<?php - -namespace CommerceGuys\Intl\Language; - -use CommerceGuys\Intl\LocaleResolverTrait; -use CommerceGuys\Intl\Exception\UnknownLanguageException; - -/** - * Manages languages based on JSON definitions. - */ -class LanguageRepository implements LanguageRepositoryInterface -{ - use LocaleResolverTrait; - - /** - * Per-locale language definitions. - * - * @var array - */ - protected $definitions = array(); - - /** - * Creates a LanguageRepository instance. - * - * @param string $definitionPath The path to the currency definitions. - * Defaults to 'resources/language'. - */ - public function __construct($definitionPath = null) - { - $this->definitionPath = $definitionPath ? $definitionPath : __DIR__ . '/../../resources/language/'; - } - - /** - * {@inheritdoc} - */ - public function get($languageCode, $locale = null, $fallbackLocale = null) - { - $locale = $this->resolveLocale($locale, $fallbackLocale); - $definitions = $this->loadDefinitions($locale); - if (!isset($definitions[$languageCode])) { - throw new UnknownLanguageException($languageCode); - } - - return $this->createLanguageFromDefinition($definitions[$languageCode], $locale); - } - - /** - * {@inheritdoc} - */ - public function getAll($locale = null, $fallbackLocale = null) - { - $locale = $this->resolveLocale($locale, $fallbackLocale); - $definitions = $this->loadDefinitions($locale); - $languages = array(); - foreach ($definitions as $languageCode => $definition) { - $languages[$languageCode] = $this->createLanguageFromDefinition($definition, $locale); - } - - return $languages; - } - - /** - * Loads the language definitions for the provided locale. - * - * @param string $locale The desired locale. - * - * @return array - */ - protected function loadDefinitions($locale) - { - if (!isset($this->definitions[$locale])) { - $filename = $this->definitionPath . $locale . '.json'; - $this->definitions[$locale] = json_decode(file_get_contents($filename), true); - } - - return $this->definitions[$locale]; - } - - /** - * Creates a language object from the provided definition. - * - * @param array $definition The language definition. - * @param string $locale The locale of the language definition. - * - * @return Language - */ - protected function createLanguageFromDefinition(array $definition, $locale) - { - $language = new Language(); - $language->setLanguageCode($definition['code']); - $language->setName($definition['name']); - $language->setLocale($locale); - - return $language; - } -} |