diff options
author | Frederic Guillot <fred@kanboard.net> | 2016-04-12 21:26:17 -0400 |
---|---|---|
committer | Frederic Guillot <fred@kanboard.net> | 2016-04-12 21:26:17 -0400 |
commit | af7027ea31a691e2eea6d813f6aa3cf08f8b9d0a (patch) | |
tree | 8524395f06b30f812dca5cd68dd15fa09e3a2410 /app/Console/LocaleComparator.php | |
parent | 2a74ed6e63b05627928e1dd6eeb67d824f4c1903 (diff) |
Rename CLI classes
Diffstat (limited to 'app/Console/LocaleComparator.php')
-rw-r--r-- | app/Console/LocaleComparator.php | 81 |
1 files changed, 0 insertions, 81 deletions
diff --git a/app/Console/LocaleComparator.php b/app/Console/LocaleComparator.php deleted file mode 100644 index 8e5e0904..00000000 --- a/app/Console/LocaleComparator.php +++ /dev/null @@ -1,81 +0,0 @@ -<?php - -namespace Kanboard\Console; - -use RecursiveIteratorIterator; -use RecursiveDirectoryIterator; -use Symfony\Component\Console\Input\InputInterface; -use Symfony\Component\Console\Output\OutputInterface; - -class LocaleComparator extends Base -{ - const REF_LOCALE = 'fr_FR'; - - protected function configure() - { - $this - ->setName('locale:compare') - ->setDescription('Compare application translations with the '.self::REF_LOCALE.' locale'); - } - - protected function execute(InputInterface $input, OutputInterface $output) - { - $strings = array(); - $it = new RecursiveIteratorIterator(new RecursiveDirectoryIterator('app')); - $it->rewind(); - - while ($it->valid()) { - if (! $it->isDot() && substr($it->key(), -4) === '.php') { - $strings = array_merge($strings, $this->search($it->key())); - } - - $it->next(); - } - - $this->compare(array_unique($strings)); - } - - public function show(array $strings) - { - foreach ($strings as $string) { - echo " '".str_replace("'", "\'", $string)."' => '',".PHP_EOL; - } - } - - public function compare(array $strings) - { - $reference_file = 'app/Locale/'.self::REF_LOCALE.'/translations.php'; - $reference = include $reference_file; - - echo str_repeat('#', 70).PHP_EOL; - echo 'MISSING STRINGS'.PHP_EOL; - echo str_repeat('#', 70).PHP_EOL; - $this->show(array_diff($strings, array_keys($reference))); - - echo str_repeat('#', 70).PHP_EOL; - echo 'USELESS STRINGS'.PHP_EOL; - echo str_repeat('#', 70).PHP_EOL; - $this->show(array_diff(array_keys($reference), $strings)); - } - - public function search($filename) - { - $content = file_get_contents($filename); - $strings = array(); - - if (preg_match_all('/\b[et]\((\'\K.*?\') *[\)\,]/', $content, $matches) && isset($matches[1])) { - $strings = $matches[1]; - } - - if (preg_match_all('/\bdt\((\'\K.*?\') *[\)\,]/', $content, $matches) && isset($matches[1])) { - $strings = array_merge($strings, $matches[1]); - } - - array_walk($strings, function (&$value) { - $value = trim($value, "'"); - $value = str_replace("\'", "'", $value); - }); - - return $strings; - } -} |