X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs-website;a=blobdiff_plain;f=vendor%2Fdrupal%2Fconsole%2Fsrc%2FCommand%2FLocale%2FLanguageAddCommand.php;fp=vendor%2Fdrupal%2Fconsole%2Fsrc%2FCommand%2FLocale%2FLanguageAddCommand.php;h=4baf8ef9e418cec538d10f1b8337401e4b26c1cd;hp=0000000000000000000000000000000000000000;hb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae;hpb=57c063afa3f66b07c4bbddc2d6129a96d90f0aad diff --git a/vendor/drupal/console/src/Command/Locale/LanguageAddCommand.php b/vendor/drupal/console/src/Command/Locale/LanguageAddCommand.php new file mode 100644 index 000000000..4baf8ef9e --- /dev/null +++ b/vendor/drupal/console/src/Command/Locale/LanguageAddCommand.php @@ -0,0 +1,109 @@ +site = $site; + $this->moduleHandler = $moduleHandler; + parent::__construct(); + } + + protected function configure() + { + $this + ->setName('locale:language:add') + ->setDescription($this->trans('commands.locale.language.add.description')) + ->addArgument( + 'language', + InputArgument::REQUIRED, + $this->trans('commands.locale.translation.status.arguments.language') + ); + } + + protected function execute(InputInterface $input, OutputInterface $output) + { + $io = new DrupalStyle($input, $output); + $moduleHandler = $this->moduleHandler; + $moduleHandler->loadInclude('locale', 'inc', 'locale.translation'); + $moduleHandler->loadInclude('locale', 'module'); + + $language = $input->getArgument('language'); + $languages = $this->site->getStandardLanguages(); + + if (isset($languages[$language])) { + $langcode = $language; + } elseif (array_search($language, $languages)) { + $langcode = array_search($language, $languages); + } else { + $io->error( + sprintf( + $this->trans('commands.locale.language.add.messages.invalid-language'), + $language + ) + ); + + return 1; + } + + try { + $language = ConfigurableLanguage::createFromLangcode($langcode); + $language->type = LOCALE_TRANSLATION_REMOTE; + $language->save(); + + $io->info(sprintf($this->trans('commands.locale.language.add.messages.language-add-successfully'), $language->getName())); + } catch (\Exception $e) { + $io->error($e->getMessage()); + + return 1; + } + + return 0; + } +}