_helper = $helper; $this->_uppercaseFilter = $uppercaseFilter; } /** * Return option array * * @return array */ public function toOptionArray() { $languages = []; foreach ($this->_helper->getLanguageCodes() as $languageCode) { $localeCode = $this->_helper->convertLanguageCodeToLocaleCode($languageCode); $translationForSpecifiedLanguage = \Locale::getDisplayLanguage($localeCode, $localeCode); $translationForDefaultLanguage = \Locale::getDisplayLanguage($localeCode); $label = sprintf( '%s / %s (%s)', $this->_uppercaseFilter->filter($translationForSpecifiedLanguage), $translationForDefaultLanguage, $languageCode ); $languages[] = ['value' => $languageCode, 'label' => $label]; } return $languages; } }