Inheritance: extends Prezent\Doctrine\Translatable\Entity\AbstractTranslation, use trait Ojs\CoreBundle\Entity\DisplayTrait
示例#1
0
 /**
  * Translation helper method
  * @param null $locale
  * @return mixed|null|\Ojs\JournalBundle\Entity\SubmissionSettingTranslation
  */
 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 SubmissionSettingTranslation();
         if (!is_null($defaultTranslation)) {
             $translation->setSubmissionCloseText($defaultTranslation->getSubmissionCloseText());
             $translation->setSubmissionAbstractTemplate($defaultTranslation->getSubmissionAbstractTemplate());
             $translation->setSubmissionConfirmText($defaultTranslation->getSubmissionConfirmText());
         }
         $translation->setLocale($locale);
         $this->addTranslation($translation);
     }
     $this->currentTranslation = $translation;
     return $translation;
 }