2declare( strict_types = 1 );
4namespace MediaWiki\Extension\Translate\TranslatorInterface;
6use MediaWiki\Context\RequestContext;
9use MediaWiki\MediaWikiServices;
10use MediaWiki\User\User;
11use MediaWiki\Xml\XmlSelect;
28 $select = self::languageSelector();
30 $select->setTargetId(
'mw-input-translate-editlangs' );
32 $languages = MediaWikiServices::getInstance()->getLanguageNameUtils()->getLanguageNames();
34 $preferences[
'translate-editlangs'] = [
35 'class' => HTMLJsSelectToInputField::class,
37 'section' =>
'editing/translate',
38 'label-message' =>
'translate-pref-editassistlang',
39 'help-message' =>
'translate-pref-editassistlang-help',
41 'valid-values' => array_keys( $languages ),
42 'name' =>
'translate-editlangs',
48 $lang = RequestContext::getMain()->getLanguage();
49 $languages = MediaWikiServices::getInstance()->getLanguageNameUtils()->getLanguageNames( $lang->getCode() );
52 $selector =
new XmlSelect(
false,
'mw-language-selector' );
53 foreach ( $languages as $code => $name ) {
54 $selector->addOption(
"$code - $name", $code );
57 return new JsSelectToInput( $selector );