Exemplo n.º 1
0
 /**
  * @param \Orm\Zed\ProductOption\Persistence\SpyProductOptionType $productOptionTypeEntity
  * @param array $localizedNames
  *
  * @return void
  */
 protected function createOrUpdateOptionTypeTranslations(SpyProductOptionType $productOptionTypeEntity, array $localizedNames)
 {
     if ($productOptionTypeEntity->isNew()) {
         $productOptionTypeEntity->save();
     }
     foreach ($localizedNames as $localeName => $localizedOptionTypeName) {
         if ($this->localeFacade->hasLocale($localeName) === false) {
             continue;
         }
         $localeTransfer = $this->localeFacade->getLocale($localeName);
         $translationEntity = $this->queryContainer->queryProductOptionTypeTranslationByFks($productOptionTypeEntity->getIdProductOptionType(), $localeTransfer->getIdLocale())->findOneOrCreate();
         $translationEntity->setName($localizedOptionTypeName);
         $translationEntity->setFkProductOptionType($productOptionTypeEntity->getIdProductOptionType());
         $translationEntity->setFkLocale($localeTransfer->getIdLocale());
         $translationEntity->save();
         $productOptionTypeEntity->addSpyProductOptionTypeTranslation($translationEntity);
     }
     $productOptionTypeEntity->save();
 }