<?php
declare(strict_types=1);
namespace NetInventors\NetiNextCmsElementBuilder\Subscriber;
use NetInventors\NetiNextCmsElementBuilder\Core\Content\Element\ElementEntity;
use Shopware\Core\Framework\DataAbstractionLayer\Event\EntityLoadedEvent;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
class ElementLoadSubscriber implements EventSubscriberInterface
{
public static function getSubscribedEvents(): array
{
return [
'neti_ceb_element.loaded' => 'onLoad',
];
}
public function onLoad(EntityLoadedEvent $event): void
{
/** @var ElementEntity $entity */
foreach ($event->getEntities() as $entity) {
$entity->setSlotName(
str_replace('_', '-', $entity->getName())
);
}
}
}