diff --git a/inc/translator.php b/inc/translator.php index ecc227c..3e3eeef 100755 --- a/inc/translator.php +++ b/inc/translator.php @@ -44,13 +44,12 @@ class Translator extends PhpObject $bAllTrans = ($sTransKey==''); //Look up in the selected language dictionary - if(in_array($sLang, $this->asLanguages) && ($bAllTrans || array_key_exists($sTransKey, $this->asTranslations[$sLang]))) - { - $oTransText = $bAllTrans?$this->asTranslations[$sLang]:$this->asTranslations[$sLang][$sTransKey]; + if(in_array($sLang, $this->asLanguages) && ($bAllTrans || array_key_exists($sTransKey, $this->asTranslations[$sLang]))) { + if($bAllTrans) $oTransText = array_merge($this->asTranslations[$this->sDefaultLang], $this->asTranslations[$sLang]); + else $oTransText = $this->asTranslations[$sLang][$sTransKey]; } //Look up in the default language dictionary - elseif(array_key_exists($sTransKey, $this->asTranslations[$this->sDefaultLang])) - { + elseif(!$bAllTrans && array_key_exists($sTransKey, $this->asTranslations[$this->sDefaultLang])) { $this->addWarning('Missing translation in "'.$sLang.'" for the key "'.$sTransKey.'", falling back to "'.$this->sDefaultLang.'"'); $oTransText = $this->asTranslations[$this->sDefaultLang][$sTransKey]; }