/** * Modifies the select box of languages * * @param array &$config configuration array * @return void */ public function user_language(array &$config) { $config['items'] = array(); $languages = array(); $sysLanguages = \TYPO3\CMS\Backend\Configuration\TranslationConfigurationProvider::getSystemLanguages(); $languages[] = array("Standard-Verhalten", ""); $languages[] = array("Aktuelle Seitenspache", "page"); $languages[] = array("Artikel für alle Sprachen anzeigen", "-1"); foreach ($sysLanguages as $language) { if ($language['uid'] > -1) { if ($language['uid'] == 0) { if ($this->settings['languageDefaultLanguageLabel'] != "") { $language['title'] = $this->settings['languageDefaultLanguageLabel']; } $language['hidden'] = 0; } if ($language['hidden'] == 0) { $languages[] = array($language['title'], $language['uid']); } } } $config['items'] = $languages; }
/** * Get array of allowed languages * * @return array languages */ public function getLanguages() { $return = array(); $languages = array(); $languagesSelect = array(); $sysLanguages = \TYPO3\CMS\Backend\Configuration\TranslationConfigurationProvider::getSystemLanguages(); //$sysLanguages = \TYPO3\CMS\Backend\Utility\BackendUtility::getSystemLanguages(); $language['title'] = "Artikel für alle Sprachen anzeigen"; $language['uid'] = -1; $language['flagIcon'] = "flags-europeanunion"; $language[0] = $language['title']; $language[1] = $language['uid']; $language[2] = $language['flagIcon']; $languages[-1] = $language; $languagesSelect[-1] = $language[0]; /* foreach($sysLanguages AS $language){ if($language[1]==0){ if($this->settings['languageDefaultLanguageLabel']!=""){ $language[0] = $this->settings['languageDefaultLanguageLabel']." [0]"; } if($this->settings['languageDefaultIsoFlag']!=""){ $language[2] = "flags-".$this->settings['languageDefaultIsoFlag']; } } $language['title'] = $language[0]; $language['uid'] = $language[1]; $language['flag'] = $language[2]; $languages[$language[1]] = $language; $languagesSelect[$language[1]] = $language[0]; } */ foreach ($sysLanguages as $language) { if ($language['uid'] > -1) { if ($language['uid'] == 0) { if ($this->settings['languageDefaultLanguageLabel'] != "") { $language['title'] = $this->settings['languageDefaultLanguageLabel']; } if ($this->settings['languageDefaultIsoFlag'] != "") { $language['flagIcon'] = "flags-" . $this->settings['languageDefaultIsoFlag']; } $language['hidden'] = 0; } if ($language['hidden'] == 0) { $language[0] = $language['title']; $language[1] = $language['uid']; $language[2] = $language['flagIcon']; $languages[$language['uid']] = $language; $languagesSelect[$language['uid']] = $language['title']; } } } $return['items'] = $languages; $return['select'] = $languagesSelect; return $return; }