static function registerLocaleFile($locale, $filename, $addToTop = false)
{
$localeFiles =& AppLocale::getLocaleFiles($locale);
$localeFile = new LocaleFile($locale, $filename);
if (!HookRegistry::call('PKPLocale::registerLocaleFile::isValidLocaleFile', array(&$localeFile))) {
if (!$localeFile->isValid()) {
return null;
}
}
if ($addToTop) {
// Work-around: unshift by reference.
array_unshift($localeFiles, '');
$localeFiles[0] =& $localeFile;
} else {
$localeFiles[] =& $localeFile;
}
HookRegistry::call('PKPLocale::registerLocaleFile', array(&$locale, &$filename, &$addToTop));
return $localeFile;
}