src/EventListener/Importer/Ecomerce/EcomCatSecListener.php line 10

Open in your IDE?
  1. <?php
  2. namespace App\EventListener\Importer\Ecomerce;
  3. use Pimcore\Bundle\DataImporterBundle\Event\DataObject\PreSaveEvent;
  4. use Pimcore\Model\DataObject\Data\ElementMetadata;
  5. class EcomCatSecListener
  6. {
  7.     public function onPreSave(PreSaveEvent $event)
  8.     {
  9.         if ($event->getConfigName() !== 'ecomCatSecundarias') {
  10.             return;
  11.         }
  12.         $data $event->getRawData();
  13.         $product $event->getDataObject();
  14.         $productKey $data[0];
  15.         $category $data[1];
  16.         $orden $data[2];
  17.         if (empty($category)) {
  18.             return;
  19.         }
  20.         $categoriasSecundarias $product->getCategoriasSecundarias();
  21.         /** @var ElementMetadata $categoriasSecundaria */
  22.         foreach ($categoriasSecundarias as $categoriasSecundaria) {
  23.             if ($categoriasSecundaria->getElement()->getFullPath() === $category) {
  24.                 $categoriasSecundaria->setData(['Orden_1' => $orden]);
  25.                 $categoriasSecundaria->setColumns(['Orden_1']);
  26.             }
  27.         }
  28.     }
  29. }