custom/plugins/CioSalesRepresentative/src/CioSalesRepresentative.php line 16

Open in your IDE?
  1. <?php declare(strict_types=1);
  2. namespace CioSalesRepresentative;
  3. use CioSalesRepresentative\Definition\SalesRepresentative\SalesRepresentativeCollection;
  4. use CioSalesRepresentative\Definition\SalesRepresentative\SalesRepresentativeEntity;
  5. use Sas\BlogModule\Content\Blog\BlogEntriesDefinition;
  6. use Shopware\Core\Framework\Context;
  7. use Shopware\Core\Framework\DataAbstractionLayer\EntityRepositoryInterface;
  8. use Shopware\Core\Framework\DataAbstractionLayer\Search\Criteria;
  9. use Shopware\Core\Framework\DataAbstractionLayer\Search\Filter\EqualsAnyFilter;
  10. use Shopware\Core\Framework\DataAbstractionLayer\Search\Filter\EqualsFilter;
  11. use Shopware\Core\Framework\Plugin;
  12. use Shopware\Core\Framework\Plugin\Context\InstallContext;
  13. class CioSalesRepresentative extends Plugin
  14. {
  15.     public function install(InstallContext $installContext): void
  16.     {
  17.         parent::install($installContext); // TODO: Change the autogenerated stub
  18.         $this->createBlogMediaFolder($installContext->getContext());
  19.     }
  20.     public function createBlogMediaFolder(Context $context): void
  21.     {
  22.         $criteria = new Criteria();
  23.         $criteria->addFilter(
  24.             new EqualsFilter('entity''cio_sales_representative')
  25.         );
  26.         /** @var EntityRepositoryInterface $mediaFolderRepository */
  27.         $mediaFolderRepository $this->container->get('media_default_folder.repository');
  28.         $defaultFolder $mediaFolderRepository->search($criteria$context)->first();
  29.         if (!$defaultFolder) {
  30.             $mediaFolderRepository->create([
  31.                 [
  32.                     'entity' => 'cio_sales_representative',
  33.                     'associationFields' => ['media'],
  34.                     'folder' => [
  35.                         'name' => 'Vertriebsbeauftragte',
  36.                         'useParentConfiguration' => false,
  37.                         'configuration' => [
  38.                             'createThumbnails' => false,
  39.                             'mediaThumbnailSizes' => [],
  40.                         ],
  41.                     ],
  42.                 ],
  43.             ], $context);
  44.         }
  45.     }
  46. }