public function translate_by_name_and_context($untranslated_text, $name, $context = "", &$has_translation = null)
 {
     if ($untranslated_text) {
         $translation = $this->string_from_registered($untranslated_text, $name, $context);
         if ($translation === false && $this->language == 'en') {
             $this->register_string($context, $name, $untranslated_text);
             $translation = $untranslated_text;
         }
     } else {
         $translation = parent::translate_by_name_and_context($untranslated_text, $name, $context);
     }
     return $translation ? $translation : $untranslated_text;
 }
 public function translate_by_name_and_context($untranslated_text, $name, $context = "", &$has_translation = null)
 {
     if ($untranslated_text) {
         $this->initialize_current_string($name, $context);
         $translation = $this->string_from_registered();
         if ($translation === false) {
             $this->register_string($context, $name, $untranslated_text);
             $translation = $untranslated_text;
         }
     } else {
         $translation = parent::translate_by_name_and_context($untranslated_text, $name, $context);
     }
     $has_translation = $translation !== false && $translation != $untranslated_text;
     return $translation !== false ? $translation : $untranslated_text;
 }
 public function translate_by_name_and_context($untranslated_text, $name, $context = "", &$has_translation = null)
 {
     if ($untranslated_text) {
         $translation = $this->string_from_registered($name, $context);
         if ($translation === false && $untranslated_text !== false && $this->use_original_cache) {
             // lookup translation from original text
             $key = md5($untranslated_text);
             $translation = isset($this->original_cache[$key]) ? $this->original_cache[$key] : false;
         }
         if ($translation === false && $this->language === 'en') {
             $this->register_string($context, $name, $untranslated_text);
             $translation = $untranslated_text;
         }
     } else {
         $translation = parent::translate_by_name_and_context($untranslated_text, $name, $context);
     }
     $has_translation = $translation !== false && $translation != $untranslated_text;
     return $translation !== false ? $translation : $untranslated_text;
 }