<?php
/**
* Copyright insign gmbh. All rights reserved.
* See COPYING.txt for license details.
*/
declare(strict_types=1);
namespace Insign\FormDataBundle\Event;
use Pimcore\Event\Model\Asset\ResolveUploadTargetEvent;
use Pimcore\Model\Asset\Service;
use Pimcore\Model\DataObject\AbstractObject;
class AssetsEventListener
{
/**
* @param ResolveUploadTargetEvent $event
* @return void
* @throws \Exception
*/
public function onResolveUploadTarget(ResolveUploadTargetEvent $event)
{
$context = $event->getContext();
if ($context["containerType"] == "object") {
$objectId = $context["objectId"];
$object = AbstractObject::getById($objectId);
if ($object) {
$className = $object->getClass()->getName();
if($className == 'Krankheitsmeldung' || $className === 'Unfallmeldung') {
$uuid = $object->getInterne_Schadennummer();
$targetPath = '/' .$uuid . "/";
$parent = Service::createFolderByPath($targetPath);
if ($parent) {
$event->setParentId($parent->getId());
}
}
}
}
}
}