/** * Gets object translation of the current field * * @return AbstractPersonalTranslation[] */ public function getFieldTranslations() { return $this->object ? array_filter($this->object->getTranslations()->toArray(), function (AbstractPersonalTranslation $translation) { return $translation->getField() == $this->field; }) : array(); }
/** * Updates base fields using translations * * @param TranslatedPersonalEntityInterface $entity */ protected function updateFields(TranslatedPersonalEntityInterface $entity) { $entity->setTranslatableLocale($this->translationsHelper->getDefaultLocale()); foreach ($entity->getTranslations() as $translation) { /** @var AbstractPersonalTranslation $translation */ if ($translation->getLocale() == $entity->getLocale()) { $method = 'set' . ucfirst($translation->getField()); if (method_exists($entity, $method)) { call_user_func(array($entity, $method), $translation->getContent()); } } } }