diff options
Diffstat (limited to 'cli/i18n/I18nIgnoreFile.php')
| -rw-r--r-- | cli/i18n/I18nIgnoreFile.php | 63 |
1 files changed, 0 insertions, 63 deletions
diff --git a/cli/i18n/I18nIgnoreFile.php b/cli/i18n/I18nIgnoreFile.php deleted file mode 100644 index a05a3d5e8..000000000 --- a/cli/i18n/I18nIgnoreFile.php +++ /dev/null @@ -1,63 +0,0 @@ -<?php - -require_once __DIR__ . '/I18nFileInterface.php'; - -class I18nIgnoreFile implements I18nFileInterface { - - private $i18nPath; - - public function __construct() { - $this->i18nPath = __DIR__ . '/ignore'; - } - - public function dump(array $i18n) { - foreach ($i18n as $language => $content) { - $filename = $this->i18nPath . DIRECTORY_SEPARATOR . $language . '.php'; - file_put_contents($filename, $this->format($content)); - } - } - - public function load() { - $i18n = array(); - $files = new DirectoryIterator($this->i18nPath); - foreach ($files as $file) { - if (!$file->isFile()) { - continue; - } - $i18n[$file->getBasename('.php')] = (include $file->getPathname()); - } - - return $i18n; - } - - /** - * Format an array of translation - * - * It takes an array of translation and format it to be dumped in a - * translation file. The array is first converted to a string then some - * formatting regexes are applied to match the original content. - * - * @param array $translation - * @return string - */ - private function format($translation) { - $translation = var_export(($translation), true); - $patterns = array( - '/array \(/', - '/=>\s*array/', - '/ {2}/', - '/\d+ => /', - ); - $replacements = array( - 'array(', - '=> array', - "\t", // Double quoting is mandatory to have a tab instead of the \t string - '', - ); - $translation = preg_replace($patterns, $replacements, $translation); - - // Double quoting is mandatory to have new lines instead of \n strings - return sprintf("<?php\n\nreturn %s;\n", $translation); - } - -} |
