function getLocaleFiles($locale) { if (!Locale::isLocaleValid($locale)) { return null; } $localeFiles = array(Locale::getMainLocaleFilename($locale)); $plugins =& PluginRegistry::loadAllPlugins(); foreach (array_keys($plugins) as $key) { $plugin =& $plugins[$key]; $localeFile = $plugin->getLocaleFilename($locale); if (!empty($localeFile)) { $localeFiles[] = $localeFile; } unset($plugin); } return $localeFiles; }
/** * Test all locale files for the supplied locale against the supplied * reference locale, returning an array of errors. * @param $locale string Name of locale to test * @param $referenceLocale string Name of locale to test against * @return array */ function testLocale($locale, $referenceLocale) { $localeFile =& new LocaleFile($locale, Locale::getMainLocaleFilename($locale)); $referenceLocaleFile =& new LocaleFile($referenceLocale, Locale::getMainLocaleFilename($referenceLocale)); $errors = $localeFile->testLocale($referenceLocaleFile); unset($localeFile); unset($referenceLocaleFile); $plugins =& PluginRegistry::loadAllPlugins(); foreach (array_keys($plugins) as $key) { $plugin =& $plugins[$key]; $referenceLocaleFilename = $plugin->getLocaleFilename($referenceLocale); if ($referenceLocaleFilename) { $localeFile =& new LocaleFile($locale, $plugin->getLocaleFilename($locale)); $referenceLocaleFile =& new LocaleFile($referenceLocale, $referenceLocaleFilename); $errors = array_merge_recursive($errors, $localeFile->testLocale($referenceLocaleFile)); unset($localeFile); unset($referenceLocaleFile); } unset($plugin); } return $errors; }