diff options
Diffstat (limited to 'tools/pa2lang.php')
-rw-r--r-- | tools/pa2lang.php | 108 |
1 files changed, 0 insertions, 108 deletions
diff --git a/tools/pa2lang.php b/tools/pa2lang.php deleted file mode 100644 index 95e926641..000000000 --- a/tools/pa2lang.php +++ /dev/null @@ -1,108 +0,0 @@ -<?php -/** - * Migrate PHP array to .lang files. - * - * PHP 5.3 - * - * @license MIT - * @author Romain d'Alverny, rdalverny, rda - * @copyright 2012/05 -*/ - -if (php_sapi_name() !== 'cli') { - echo "CLI only.\n"; - exit(1); -} - -if (version_compare(PHP_VERSION, '5.3.0') < 0) { - echo "PHP 5.3 needed.\n"; - exit(1); -} - -define('APP_ROOT', realpath(__DIR__ . '/..')); - -$php_source = isset($argv[1]) ? $argv[1] : null; -$var = isset($argv[2]) ? $argv[2] : null; -$domain = isset($argv[3]) ? $argv[3] : null; - -if (is_null($php_source) || is_null($var) || is_null($domain)) { - echo <<<U -Usage: - pa2lang.php path/to/source.php var_name domain_name - - -U; - exit(1); -} - -echo "ohai!\n"; - -$dest = sprintf('%s/langs/{LOC}/%s.{LOC}.lang', APP_ROOT, $domain); - -$php_source = realpath(APP_ROOT . '/' . $php_source); -if (is_null($php_source)) { - echo "$php_source is not found. kthxbye.\n"; - exit(1); -} - -echo "Loading " . $php_source . " looking for \$$var\n"; - -include $php_source; - -if (!isset($$var)) { - echo "$var is not set. kthxbye\n"; - exit(1); -} - -echo sprintf("Found %d locales here: %s.\n", - count($$var), implode(', ', array_keys($$var))); - -$files = array(); -$eng_array = $$var; -$eng_array = $eng_array['en']; -$number_of_eng_strings = count($eng_array); - -foreach ($$var as $k => $v) { - - echo sprintf("> %s has %d translated strings, adding the rest %d untranslated.", $k, count($v), ($number_of_eng_strings - count($v))); - $v = array_merge($eng_array, $v); // add untranslated strings - - $f = array(); - $f[] = sprintf('# Generated by pa2lang.php on %s', date('c')); - $f[] = sprintf('# from %s $%s', $php_source, $var); - - foreach ($v as $s0 => $s1) { - $s0 = str_replace("\n", ' ', $s0); - $s0 = preg_replace('/\s+/', ' ', $s0); // remove multiple spaces - $s0 = str_replace("\'", "'", $s0); // remove also backslashes - - if (is_array($s1)) { - echo "\nWe have an array for string $k:'$s0':\n"; - foreach ($s1 as $sv) - echo " * ", $sv, "\n"; - - echo "\nThis can't be inserted into this .lang file. Fix this upstream and come back.\n\n"; - exit(1); - } - $s1 = str_replace("\n", ' ', $s1); - $s1 = preg_replace('/\s+/', ' ', $s1); - $s1 = str_replace("\'", "'", $s1); - - $f[] = ''; - $f[] = ';' . $s0; - $f[] = $s1; - $f[] = "\n"; - } - - echo " ok\n"; - $files[$k] = implode("\n", $f); -} - -echo "Saving those into ...\n"; -foreach ($files as $k => $data) { - $file = str_replace('{LOC}', $k, $dest); -// file_put_contents($file, $data); -} - -echo "Done.\n"; -exit(0);
\ No newline at end of file |