Open Journal Systems  3.3.0
DefaultTranslationPlugin.inc.php
1 <?php
2 
16 import('lib.pkp.classes.plugins.GenericPlugin');
17 
19 
23  function getDisplayName() {
24  return __('plugins.generic.defaultTranslation.displayName');
25  }
26 
30  function getDescription() {
31  return __('plugins.generic.defaultTranslation.description');
32  }
33 
37  function register($category, $path, $mainContextId = null) {
38  $success = parent::register($category, $path, $mainContextId);
39  if ($success && $this->getEnabled()) {
40  HookRegistry::register('PKPLocale::translate', array($this, 'translate'));
41  HookRegistry::register('PKPLocale::registerLocaleFile::isValidLocaleFile', array(&$this, 'isValidLocaleFile'));
42  }
43  return $success;
44  }
45 
49  function getSeq() {
50  return -1;
51  }
52 
59  function translate($hookName, $args) {
60  $key = $args[0];
61  $params = $args[1];
62  $locale = $args[2];
63  $localeFiles = $args[3];
64  $value =& $args[4];
65 
66  foreach ($localeFiles as $localeFile) {
67  $fileName = $localeFile->getFilename();
68  $newFileName = str_replace($locale, 'en_US', $fileName);
69  $newFile = new LocaleFile('en_US', $newFileName);
70  $value = $newFile->translate($key, $params);
71  if ($value !== null) {
72  return true;
73  }
74  }
75  return false;
76  }
77 
84  function isValidLocaleFile($hookName, $args) {
85  return true;
86  }
87 
88 }
LocaleFile
Abstraction of a locale file.
Definition: LocaleFile.inc.php:17
DefaultTranslationPlugin\isValidLocaleFile
isValidLocaleFile($hookName, $args)
Definition: DefaultTranslationPlugin.inc.php:84
Plugin\getEnabled
getEnabled()
Definition: Plugin.inc.php:868
DefaultTranslationPlugin
Definition: DefaultTranslationPlugin.inc.php:18
DefaultTranslationPlugin\getDisplayName
getDisplayName()
Definition: DefaultTranslationPlugin.inc.php:23
DefaultTranslationPlugin\translate
translate($hookName, $args)
Definition: DefaultTranslationPlugin.inc.php:59
HookRegistry\register
static register($hookName, $callback, $hookSequence=HOOK_SEQUENCE_NORMAL)
Definition: HookRegistry.inc.php:70
DefaultTranslationPlugin\getDescription
getDescription()
Definition: DefaultTranslationPlugin.inc.php:30
GenericPlugin
Abstract class for generic plugins.
Definition: GenericPlugin.inc.php:18
DefaultTranslationPlugin\getSeq
getSeq()
Definition: DefaultTranslationPlugin.inc.php:49