Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsgiehl <stefan@piwik.org>2018-10-09 12:26:47 +0300
committersgiehl <stefan@piwik.org>2018-10-09 12:26:47 +0300
commit648bc9443680df7633287d6ed5ecadbaf79af1ae (patch)
tree0c7201cca0b5130e82a6c7aebbc966a99e4c7357 /plugins/LanguagesManager
parent61bacf885b8db1d38e9407c7e918984fcbd7df74 (diff)
translation updates
Diffstat (limited to 'plugins/LanguagesManager')
-rw-r--r--plugins/LanguagesManager/Commands/Update.php25
1 files changed, 24 insertions, 1 deletions
diff --git a/plugins/LanguagesManager/Commands/Update.php b/plugins/LanguagesManager/Commands/Update.php
index 913c44da3f..a4a664b455 100644
--- a/plugins/LanguagesManager/Commands/Update.php
+++ b/plugins/LanguagesManager/Commands/Update.php
@@ -9,6 +9,7 @@
namespace Piwik\Plugins\LanguagesManager\Commands;
+use Piwik\Plugin\Manager;
use Piwik\Plugins\LanguagesManager\API;
use Symfony\Component\Console\Helper\DialogHelper;
use Symfony\Component\Console\Input\ArrayInput;
@@ -30,6 +31,7 @@ class Update extends TranslationBase
->addOption('username', 'u', InputOption::VALUE_OPTIONAL, 'Transifex username')
->addOption('password', 'p', InputOption::VALUE_OPTIONAL, 'Transifex password')
->addOption('slug', 's', InputOption::VALUE_OPTIONAL, 'Transifex project slug')
+ ->addOption('all', 'a', InputOption::VALUE_NONE, 'Force to update all plugins (even non core). Can not be used with plugin option')
->addOption('plugin', 'P', InputOption::VALUE_OPTIONAL, 'optional name of plugin to update translations for');
}
@@ -50,6 +52,7 @@ class Update extends TranslationBase
}
$plugin = $input->getOption('plugin');
+ $forceAllPlugins = $input->getOption('all');
if (!$input->isInteractive()) {
$output->writeln("(!) Non interactive mode: New languages will be skipped");
@@ -57,7 +60,7 @@ class Update extends TranslationBase
$pluginList = array($plugin);
if (empty($plugin)) {
- $pluginList = self::getPluginsInCore();
+ $pluginList = $forceAllPlugins ? self::getAllPlugins() : self::getPluginsInCore();
array_unshift($pluginList, '');
} else {
$input->setOption('force', true); // force plugin only updates
@@ -132,6 +135,26 @@ class Update extends TranslationBase
* Returns all plugins having their own translations that are bundled in core
* @return array
*/
+ public static function getAllPlugins()
+ {
+ static $pluginsWithTranslations;
+
+ if (!empty($pluginsWithTranslations)) {
+ return $pluginsWithTranslations;
+ }
+
+ $pluginsWithTranslations = glob(sprintf('%s/plugins/*/lang/en.json', PIWIK_INCLUDE_PATH));
+ $pluginsWithTranslations = array_map(function ($elem) {
+ return str_replace(array(sprintf('%s/plugins/', PIWIK_INCLUDE_PATH), '/lang/en.json'), '', $elem);
+ }, $pluginsWithTranslations);
+
+ return $pluginsWithTranslations;
+ }
+
+ /**
+ * Returns all plugins having their own translations that are bundled in core
+ * @return array
+ */
public static function getPluginsInCore()
{
static $pluginsInCore;