Inheritance: extends Gedmo\Translatable\Entity\MappedSuperclass\AbstractPersonalTranslation
コード例 #1
0
ファイル: Author.php プロジェクト: hasantayyar/ojs
 /**
  * Translation helper method
  * @param null $locale
  * @return mixed|null|\Ojs\JournalBundle\Entity\AuthorTranslation
  */
 public function translate($locale = null)
 {
     if (null === $locale) {
         $locale = $this->currentLocale;
     }
     if (!$locale) {
         throw new \RuntimeException('No locale has been set and currentLocale is empty');
     }
     if ($this->currentTranslation && $this->currentTranslation->getLocale() === $locale) {
         return $this->currentTranslation;
     }
     $defaultTranslation = $this->translations->get($this->getDefaultLocale());
     if (!($translation = $this->translations->get($locale))) {
         $translation = new AuthorTranslation();
         if (!is_null($defaultTranslation)) {
             $translation->setTitle($defaultTranslation->getTitle());
             $translation->setSummary($defaultTranslation->getSummary());
         }
         $translation->setLocale($locale);
         $this->addTranslation($translation);
     }
     $this->currentTranslation = $translation;
     return $translation;
 }