From 8ca6cc32b2c789a3149861159ad258f2cb9491e3 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 28 Apr 2024 14:39:39 +0200 Subject: Adding upstream version 2.11.4. Signed-off-by: Daniel Baumann --- .../library/Translation/Cli/TranslationCommand.php | 73 ++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 modules/translation/library/Translation/Cli/TranslationCommand.php (limited to 'modules/translation/library/Translation/Cli/TranslationCommand.php') diff --git a/modules/translation/library/Translation/Cli/TranslationCommand.php b/modules/translation/library/Translation/Cli/TranslationCommand.php new file mode 100644 index 0000000..af3582c --- /dev/null +++ b/modules/translation/library/Translation/Cli/TranslationCommand.php @@ -0,0 +1,73 @@ +app, $locale); + $helper->setConfig($this->Config()); + return $helper; + } + + /** + * Check whether the given locale code is valid + * + * @param string $code The locale code to validate + * + * @return string The validated locale code + * + * @throws Exception In case the locale code is invalid + */ + public function validateLocaleCode($code) + { + if (! preg_match('@[a-z]{2}_[A-Z]{2}@', $code)) { + throw new IcingaException( + 'Locale code \'%s\' is not valid. Expected format is: ll_CC', + $code + ); + } + + return $code; + } + + /** + * Check whether the given module is available and enabled + * + * @param string $name The module name to validate + * + * @return string The validated module name + * + * @throws Exception In case the given module is not available or not enabled + */ + public function validateModuleName($name) + { + $enabledModules = $this->app->getModuleManager()->listEnabledModules(); + + if (! in_array($name, $enabledModules)) { + throw new IcingaException( + 'Module with name \'%s\' not found or is not enabled', + $name + ); + } + + return $name; + } +} -- cgit v1.2.3