bundles/Insign/FormDataBundle/Event/DataObjectPostDeleteListener.php line 24

Open in your IDE?
  1. <?php
  2. /**
  3.  * Copyright insign gmbh. All rights reserved.
  4.  * See COPYING.txt for license details.
  5.  */
  6. declare(strict_types=1);
  7. namespace Insign\FormDataBundle\Event;
  8. use Insign\FormDataBundle\Services\Form\AssetsManager;
  9. use Pimcore\Event\Model\ElementEventInterface;
  10. use Pimcore\Event\Model\DataObjectEvent;
  11. use Pimcore\Model\DataObject\Krankheitsmeldung;
  12. use Pimcore\Model\DataObject\Unfallmeldung;
  13. class DataObjectPostDeleteListener
  14. {
  15.     private AssetsManager $assetsManager;
  16.     public function __construct(AssetsManager $assetsManager)
  17.     {
  18.         $this->assetsManager $assetsManager;
  19.     }
  20.     public function onDataObjectPreDelete(ElementEventInterface $event)
  21.     {
  22.         if ($event instanceof DataObjectEvent) {
  23.             $dataObject $event->getObject();
  24.             if($dataObject instanceof Krankheitsmeldung || ($dataObject instanceof Unfallmeldung)) {
  25.                 $key $dataObject->getInterne_Schadennummer();
  26.                 if($key) {
  27.                     $this->assetsManager->removeAssetsByUuid($key);
  28.                 }
  29.             }
  30.         }
  31.     }
  32. }