custom/plugins/TmmsCmsElementPeriodRequestForm/src/TmmsCmsElementPeriodRequestForm.php line 18

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace Tmms\CmsElementPeriodRequestForm;
  4.     use Doctrine\DBAL\Connection;
  5.     use Doctrine\DBAL\Exception\UniqueConstraintViolationException;
  6.     use Shopware\Core\Content\MailTemplate\Aggregate\MailTemplateType\MailTemplateTypeEntity;
  7.     use Shopware\Core\Defaults;
  8.     use Shopware\Core\Framework\DataAbstractionLayer\EntityRepositoryInterface;
  9.     use Shopware\Core\Framework\DataAbstractionLayer\Search\Criteria;
  10.     use Shopware\Core\Framework\DataAbstractionLayer\Search\Filter\EqualsFilter;
  11.     use Shopware\Core\Framework\Plugin;
  12.     use Shopware\Core\Framework\Plugin\Context\InstallContext;
  13.     use Shopware\Core\Framework\Plugin\Context\UninstallContext;
  14.     use Shopware\Core\Framework\Uuid\Uuid;
  15.     class TmmsCmsElementPeriodRequestForm extends Plugin
  16.     {
  17.       public const TEMPLATE_TYPE_NAME_IT 'Richiesta Form';
  18.       public const TEMPLATE_TYPE_NAME_DE 'Anfrageformular';
  19.         public const TEMPLATE_TYPE_NAME_EN 'request form';
  20.         public const TEMPLATE_TYPE_TECHNICAL_NAME 'tmms_request_form';
  21.         public function install(InstallContext $installContext): void
  22.         {
  23.             $this->addMailTemplate($installContext->getContext());
  24.             parent::install($installContext);
  25.         }
  26.         private function addMailTemplate($installContext){
  27.             /** @var EntityRepositoryInterface $mailTemplateTypeRepository */
  28.             $mailTemplateTypeRepository $this->container->get('mail_template_type.repository');
  29.             /** @var EntityRepositoryInterface $mailTemplateRepository */
  30.             $mailTemplateRepository $this->container->get('mail_template.repository');
  31.             $mailTemplateTypeId Uuid::randomHex();
  32.             $mailTemplateType = [
  33.                 [
  34.                     'id' => $mailTemplateTypeId,
  35.                     'name' => [
  36.                         'en-GB' => self::TEMPLATE_TYPE_NAME_EN,
  37.                         'de-DE' => self::TEMPLATE_TYPE_NAME_DE,
  38.                         'it-IT' => self::TEMPLATE_TYPE_NAME_IT,
  39.   
  40.                       Defaults::LANGUAGE_SYSTEM => self::TEMPLATE_TYPE_NAME_EN,
  41.                     ],
  42.                     'technicalName' => self::TEMPLATE_TYPE_TECHNICAL_NAME,
  43.                     'availableEntities' => [
  44.                         'salesChannel' => 'sales_channel',
  45.                     ],
  46.                 ],
  47.             ];
  48.             $mailTemplate = [
  49.                 [
  50.                     'id' => Uuid::randomHex(),
  51.                     'mailTemplateTypeId' => $mailTemplateTypeId,
  52.                     'subject' => [
  53.                         'en-GB' => 'request form received - {{ salesChannel.name }}',
  54.                         'de-DE' => 'Anfrage erhalten - {{ salesChannel.name }}',
  55.                         'it-IT' => 'Richiesta ordine live - {{ salesChannel.name }}',
  56.   
  57.                       Defaults::LANGUAGE_SYSTEM => 'request form received - {{ salesChannel.name }}',
  58.                     ],
  59.                     'description' => [
  60.                         'en-GB' => self::TEMPLATE_TYPE_NAME_EN,
  61.                         'de-DE' => self::TEMPLATE_TYPE_NAME_DE,
  62.                         'it-IT' => self::TEMPLATE_TYPE_NAME_IT,
  63.                         Defaults::LANGUAGE_SYSTEM => self::TEMPLATE_TYPE_NAME_EN,
  64.                     ],
  65.                     'senderName' => [
  66.                         'en-GB' => '{{ salesChannel.name }}',
  67.                         'de-DE' => '{{ salesChannel.name }}',
  68.                         'it-IT' => '{{ salesChannel.name }}',
  69.                       Defaults::LANGUAGE_SYSTEM => '{{ salesChannel.name }}',
  70.                     ],
  71.                     'contentPlain' => [
  72.                       'it-IT' => "NUOVA RICHIESTA DAL FORM\n\nOrigin: {{ periodRequestFormData.origin }} \nOrigin value: {{ periodRequestFormData.originName }} ({{ periodRequestFormData.originId }}) \n{% if periodRequestFormData.salutation != \"\" %}Salutation: {{ periodRequestFormData.salutation }} \n{% endif %}{% if periodRequestFormData.firstname != \"\" %}Firstname: {{ periodRequestFormData.firstname }} \n{% endif %}{% if periodRequestFormData.lastname != \"\" %}Lastname: {{ periodRequestFormData.lastname }} \n{% endif %}{% if periodRequestFormData.street != \"\" %}Street address: {{ periodRequestFormData.street }} \n{% endif %}{% if periodRequestFormData.zipcode != \"\" %}Postal code: {{ periodRequestFormData.zipcode }} \n{% endif %}{% if periodRequestFormData.city != \"\" %}City: {{ periodRequestFormData.city }} \n{% endif %}{% if periodRequestFormData.country != \"\" %}Country: {{ periodRequestFormData.country }} \n{% endif %}{% if periodRequestFormData.email != \"\" %}Mail: {{ periodRequestFormData.email }} \n{% endif %}{% if periodRequestFormData.phone != \"\" %}Phone: {{ periodRequestFormData.phone }} \n{% endif %}{% if periodRequestFormData.comment != \"\" %}Comment: {{ periodRequestFormData.comment }} \n{% endif %}{% if periodRequestFormData.date != \"\" %}Period: {{ periodRequestFormData.date }}\n{% endif %}{% if periodRequestFormData.freeInput != \"\" %}{{ periodRequestFormData.freeInputLabel }}: {{ periodRequestFormData.freeInput }}\n{% endif %}{% if periodRequestFormData.freeInput2 != \"\" %}{{ periodRequestFormData.freeInput2Label }}: {{ periodRequestFormData.freeInput2 }}\n{% endif %}{% if periodRequestFormData.freeInput3 != \"\" %}{{ periodRequestFormData.freeInput3Label }}: {{ periodRequestFormData.freeInput3 }}\n{% endif %}{% if periodRequestFormData.freeInput4 != \"\" %}{{ periodRequestFormData.freeInput4Label }}: {{ periodRequestFormData.freeInput4 }}\n{% endif %}\nKind Regards,\nYours",
  73.                       'en-GB' => "Hello, following data were transmitted.\n\nOrigin: {{ periodRequestFormData.origin }} \nOrigin value: {{ periodRequestFormData.originName }} ({{ periodRequestFormData.originId }}) \n{% if periodRequestFormData.salutation != \"\" %}Salutation: {{ periodRequestFormData.salutation }} \n{% endif %}{% if periodRequestFormData.firstname != \"\" %}Firstname: {{ periodRequestFormData.firstname }} \n{% endif %}{% if periodRequestFormData.lastname != \"\" %}Lastname: {{ periodRequestFormData.lastname }} \n{% endif %}{% if periodRequestFormData.street != \"\" %}Street address: {{ periodRequestFormData.street }} \n{% endif %}{% if periodRequestFormData.zipcode != \"\" %}Postal code: {{ periodRequestFormData.zipcode }} \n{% endif %}{% if periodRequestFormData.city != \"\" %}City: {{ periodRequestFormData.city }} \n{% endif %}{% if periodRequestFormData.country != \"\" %}Country: {{ periodRequestFormData.country }} \n{% endif %}{% if periodRequestFormData.email != \"\" %}Mail: {{ periodRequestFormData.email }} \n{% endif %}{% if periodRequestFormData.phone != \"\" %}Phone: {{ periodRequestFormData.phone }} \n{% endif %}{% if periodRequestFormData.comment != \"\" %}Comment: {{ periodRequestFormData.comment }} \n{% endif %}{% if periodRequestFormData.date != \"\" %}Period: {{ periodRequestFormData.date }}\n{% endif %}{% if periodRequestFormData.freeInput != \"\" %}{{ periodRequestFormData.freeInputLabel }}: {{ periodRequestFormData.freeInput }}\n{% endif %}{% if periodRequestFormData.freeInput2 != \"\" %}{{ periodRequestFormData.freeInput2Label }}: {{ periodRequestFormData.freeInput2 }}\n{% endif %}{% if periodRequestFormData.freeInput3 != \"\" %}{{ periodRequestFormData.freeInput3Label }}: {{ periodRequestFormData.freeInput3 }}\n{% endif %}{% if periodRequestFormData.freeInput4 != \"\" %}{{ periodRequestFormData.freeInput4Label }}: {{ periodRequestFormData.freeInput4 }}\n{% endif %}\nKind Regards,\nYours",
  74.                         'de-DE' => "Hallo, die nachfolgenden Daten wurden übermittelt.\n\nHerkunft: {{ periodRequestFormData.origin }} \nHerkunftswert: {{ periodRequestFormData.originName }} ({{ periodRequestFormData.originId }}) \n{% if periodRequestFormData.salutation != \"\" %}Anrede: {{ periodRequestFormData.salutation }} \n{% endif %}{% if periodRequestFormData.firstname != \"\" %}Vorname: {{ periodRequestFormData.firstname }} \n{% endif %}{% if periodRequestFormData.lastname != \"\" %}Nachname: {{ periodRequestFormData.lastname }} \n{% endif %}{% if periodRequestFormData.street != \"\" %}Straße: {{ periodRequestFormData.street }} \n{% endif %}{% if periodRequestFormData.zipcode != \"\" %}Postleitzahl: {{ periodRequestFormData.zipcode }} \n{% endif %}{% if periodRequestFormData.city != \"\" %}Ort: {{ periodRequestFormData.city }} \n{% endif %}{% if periodRequestFormData.country != \"\" %}Land: {{ periodRequestFormData.country }} \n{% endif %}{% if periodRequestFormData.email != \"\" %}E-Mail: {{ periodRequestFormData.email }} \n{% endif %}{% if periodRequestFormData.phone != \"\" %}Telefon: {{ periodRequestFormData.phone }} \n{% endif %}{% if periodRequestFormData.comment != \"\" %}Kommentar: {{ periodRequestFormData.comment }} \n{% endif %}{% if periodRequestFormData.date != \"\" %}Zeitraum: {{ periodRequestFormData.date }}\n{% endif %}{% if periodRequestFormData.freeInput != \"\" %}{{ periodRequestFormData.freeInputLabel }}: {{ periodRequestFormData.freeInput }}\n{% endif %}{% if periodRequestFormData.freeInput2 != \"\" %}{{ periodRequestFormData.freeInput2Label }}: {{ periodRequestFormData.freeInput2 }}\n{% endif %}{% if periodRequestFormData.freeInput3 != \"\" %}{{ periodRequestFormData.freeInput3Label }}: {{ periodRequestFormData.freeInput3 }}\n{% endif %}{% if periodRequestFormData.freeInput4 != \"\" %}{{ periodRequestFormData.freeInput4Label }}: {{ periodRequestFormData.freeInput4 }}\n{% endif %}\nViele Grüße,\nIhr",
  75.                         Defaults::LANGUAGE_SYSTEM => "Hello, following data were transmitted.\n\nOrigin: {{ periodRequestFormData.origin }} \nOrigin value: {{ periodRequestFormData.originName }} ({{ periodRequestFormData.originId }}) \n{% if periodRequestFormData.salutation != \"\" %}Salutation: {{ periodRequestFormData.salutation }} \n{% endif %}{% if periodRequestFormData.firstname != \"\" %}Firstname: {{ periodRequestFormData.firstname }} \n{% endif %}{% if periodRequestFormData.lastname != \"\" %}Lastname: {{ periodRequestFormData.lastname }} \n{% endif %}{% if periodRequestFormData.street != \"\" %}Street address: {{ periodRequestFormData.street }} \n{% endif %}{% if periodRequestFormData.zipcode != \"\" %}Postal code: {{ periodRequestFormData.zipcode }} \n{% endif %}{% if periodRequestFormData.city != \"\" %}City: {{ periodRequestFormData.city }} \n{% endif %}{% if periodRequestFormData.country != \"\" %}Country: {{ periodRequestFormData.country }} \n{% endif %}{% if periodRequestFormData.email != \"\" %}Mail: {{ periodRequestFormData.email }} \n{% endif %}{% if periodRequestFormData.phone != \"\" %}Phone: {{ periodRequestFormData.phone }} \n{% endif %}{% if periodRequestFormData.comment != \"\" %}Comment: {{ periodRequestFormData.comment }} \n{% endif %}{% if periodRequestFormData.date != \"\" %}Period: {{ periodRequestFormData.date }}\n{% endif %}{% if periodRequestFormData.freeInput != \"\" %}{{ periodRequestFormData.freeInputLabel }}: {{ periodRequestFormData.freeInput }}\n{% endif %}{% if periodRequestFormData.freeInput2 != \"\" %}{{ periodRequestFormData.freeInput2Label }}: {{ periodRequestFormData.freeInput2 }}\n{% endif %}{% if periodRequestFormData.freeInput3 != \"\" %}{{ periodRequestFormData.freeInput3Label }}: {{ periodRequestFormData.freeInput3 }}\n{% endif %}{% if periodRequestFormData.freeInput4 != \"\" %}{{ periodRequestFormData.freeInput4Label }}: {{ periodRequestFormData.freeInput4 }}\n{% endif %}\nKind Regards,\nYours",
  76.                     ],
  77.                     'contentHtml' => [
  78.                       'it-IT' => '<div style="font-size:12px;">Buongiorno,<br>Nuova richiesta dal form.<br/><br/>Dati: {{ periodRequestFormData.origin }}<br/>Origin value: {{ periodRequestFormData.originName }} ({{ periodRequestFormData.originId }})<br/>{% if periodRequestFormData.salutation != "" %}Salutation: {{ periodRequestFormData.salutation }}<br/>{% endif %}{% if periodRequestFormData.firstname != "" %}Firstname: {{ periodRequestFormData.firstname }}<br/>{% endif %}{% if periodRequestFormData.lastname != "" %}Lastname: {{ periodRequestFormData.lastname }}<br/>{% endif %}{% if periodRequestFormData.street != "" %}Street address: {{ periodRequestFormData.street }}<br/>{% endif %}{% if periodRequestFormData.zipcode != "" %}Postal code: {{ periodRequestFormData.zipcode }}<br/>{% endif %}{% if periodRequestFormData.city != "" %}City: {{ periodRequestFormData.city }}<br/>{% endif %}{% if periodRequestFormData.country != "" %}Country: {{ periodRequestFormData.country }}<br/>{% endif %}{% if periodRequestFormData.email != "" %}Mail: {{ periodRequestFormData.email }}<br/>{% endif %}{% if periodRequestFormData.phone != "" %}Phone: {{ periodRequestFormData.phone }}<br/>{% endif %}{% if periodRequestFormData.comment != "" %}Comment: {{ periodRequestFormData.comment }}<br/>{% endif %}{% if periodRequestFormData.date != "" %}Period: {{ periodRequestFormData.date }}<br/>{% endif %}{% if periodRequestFormData.freeInput != "" %}{{ periodRequestFormData.freeInputLabel }}: {{ periodRequestFormData.freeInput }}<br/>{% endif %}{% if periodRequestFormData.freeInput2 != "" %}{{ periodRequestFormData.freeInput2Label }}: {{ periodRequestFormData.freeInput2 }}<br/>{% endif %}{% if periodRequestFormData.freeInput3 != "" %}{{ periodRequestFormData.freeInput3Label }}: {{ periodRequestFormData.freeInput3 }}<br/>{% endif %}{% if periodRequestFormData.freeInput4 != "" %}{{ periodRequestFormData.freeInput4Label }}: {{ periodRequestFormData.freeInput4 }}<br/>{% endif %}<br/>Kind Regards,<br/>Yours</div>',
  79.                       'en-GB' => '<div style="font-size:12px;">Hello,<br>the following data were transmitted.<br/><br/>Origin: {{ periodRequestFormData.origin }}<br/>Origin value: {{ periodRequestFormData.originName }} ({{ periodRequestFormData.originId }})<br/>{% if periodRequestFormData.salutation != "" %}Salutation: {{ periodRequestFormData.salutation }}<br/>{% endif %}{% if periodRequestFormData.firstname != "" %}Firstname: {{ periodRequestFormData.firstname }}<br/>{% endif %}{% if periodRequestFormData.lastname != "" %}Lastname: {{ periodRequestFormData.lastname }}<br/>{% endif %}{% if periodRequestFormData.street != "" %}Street address: {{ periodRequestFormData.street }}<br/>{% endif %}{% if periodRequestFormData.zipcode != "" %}Postal code: {{ periodRequestFormData.zipcode }}<br/>{% endif %}{% if periodRequestFormData.city != "" %}City: {{ periodRequestFormData.city }}<br/>{% endif %}{% if periodRequestFormData.country != "" %}Country: {{ periodRequestFormData.country }}<br/>{% endif %}{% if periodRequestFormData.email != "" %}Mail: {{ periodRequestFormData.email }}<br/>{% endif %}{% if periodRequestFormData.phone != "" %}Phone: {{ periodRequestFormData.phone }}<br/>{% endif %}{% if periodRequestFormData.comment != "" %}Comment: {{ periodRequestFormData.comment }}<br/>{% endif %}{% if periodRequestFormData.date != "" %}Period: {{ periodRequestFormData.date }}<br/>{% endif %}{% if periodRequestFormData.freeInput != "" %}{{ periodRequestFormData.freeInputLabel }}: {{ periodRequestFormData.freeInput }}<br/>{% endif %}{% if periodRequestFormData.freeInput2 != "" %}{{ periodRequestFormData.freeInput2Label }}: {{ periodRequestFormData.freeInput2 }}<br/>{% endif %}{% if periodRequestFormData.freeInput3 != "" %}{{ periodRequestFormData.freeInput3Label }}: {{ periodRequestFormData.freeInput3 }}<br/>{% endif %}{% if periodRequestFormData.freeInput4 != "" %}{{ periodRequestFormData.freeInput4Label }}: {{ periodRequestFormData.freeInput4 }}<br/>{% endif %}<br/>Kind Regards,<br/>Yours</div>',
  80.                         'de-DE' => '<div style="font-size:12px;">Hallo,<br>die nachfolgenden Daten wurden übermittelt.<br/><br/>Herkunft: {{ periodRequestFormData.origin }}<br/>Herkunftswert: {{ periodRequestFormData.originName }} ({{ periodRequestFormData.originId }})<br/>{% if periodRequestFormData.salutation != "" %}Anrede: {{ periodRequestFormData.salutation }}<br/>{% endif %}{% if periodRequestFormData.firstname != "" %}Vorname: {{ periodRequestFormData.firstname }}<br/>{% endif %}{% if periodRequestFormData.lastname != "" %}Nachname: {{ periodRequestFormData.lastname }}<br/>{% endif %}{% if periodRequestFormData.street != "" %}Straße: {{ periodRequestFormData.street }}<br/>{% endif %}{% if periodRequestFormData.zipcode != "" %}Postleitzahl: {{ periodRequestFormData.zipcode }}<br/>{% endif %}{% if periodRequestFormData.city != "" %}Ort: {{ periodRequestFormData.city }}<br/>{% endif %}{% if periodRequestFormData.country != "" %}Land: {{ periodRequestFormData.country }}<br/>{% endif %}{% if periodRequestFormData.email != "" %}E-Mail: {{ periodRequestFormData.email }}<br/>{% endif %}{% if periodRequestFormData.phone != "" %}Telefon: {{ periodRequestFormData.phone }}<br/>{% endif %}{% if periodRequestFormData.comment != "" %}Kommentar: {{ periodRequestFormData.comment }}<br/>{% endif %}{% if periodRequestFormData.date != "" %}Zeitraum: {{ periodRequestFormData.date }}<br/>{% endif %}{% if periodRequestFormData.freeInput != "" %}{{ periodRequestFormData.freeInputLabel }}: {{ periodRequestFormData.freeInput }}<br/>{% endif %}{% if periodRequestFormData.freeInput2 != "" %}{{ periodRequestFormData.freeInput2Label }}: {{ periodRequestFormData.freeInput2 }}<br/>{% endif %}{% if periodRequestFormData.freeInput3 != "" %}{{ periodRequestFormData.freeInput3Label }}: {{ periodRequestFormData.freeInput3 }}<br/>{% endif %}{% if periodRequestFormData.freeInput4 != "" %}{{ periodRequestFormData.freeInput4Label }}: {{ periodRequestFormData.freeInput4 }}<br/>{% endif %}<br/>Viele Grüße,<br/>Ihr</div>',
  81.                         Defaults::LANGUAGE_SYSTEM => '<div style="font-size:12px;">Hello,<br>the following data were transmitted.<br/><br/>Origin: {{ periodRequestFormData.origin }}<br/>Origin value: {{ periodRequestFormData.originName }} ({{ periodRequestFormData.originId }})<br/>{% if periodRequestFormData.salutation != "" %}Salutation: {{ periodRequestFormData.salutation }}<br/>{% endif %}{% if periodRequestFormData.firstname != "" %}Firstname: {{ periodRequestFormData.firstname }}<br/>{% endif %}{% if periodRequestFormData.lastname != "" %}Lastname: {{ periodRequestFormData.lastname }}<br/>{% endif %}{% if periodRequestFormData.street != "" %}Street address: {{ periodRequestFormData.street }}<br/>{% endif %}{% if periodRequestFormData.zipcode != "" %}Postal code: {{ periodRequestFormData.zipcode }}<br/>{% endif %}{% if periodRequestFormData.city != "" %}City: {{ periodRequestFormData.city }}<br/>{% endif %}{% if periodRequestFormData.country != "" %}Country: {{ periodRequestFormData.country }}<br/>{% endif %}{% if periodRequestFormData.email != "" %}Mail: {{ periodRequestFormData.email }}<br/>{% endif %}{% if periodRequestFormData.phone != "" %}Phone: {{ periodRequestFormData.phone }}<br/>{% endif %}{% if periodRequestFormData.comment != "" %}Comment: {{ periodRequestFormData.comment }}<br/>{% endif %}{% if periodRequestFormData.date != "" %}Period: {{ periodRequestFormData.date }}<br/>{% endif %}{% if periodRequestFormData.freeInput != "" %}{{ periodRequestFormData.freeInputLabel }}: {{ periodRequestFormData.freeInput }}<br/>{% endif %}{% if periodRequestFormData.freeInput2 != "" %}{{ periodRequestFormData.freeInput2Label }}: {{ periodRequestFormData.freeInput2 }}<br/>{% endif %}{% if periodRequestFormData.freeInput3 != "" %}{{ periodRequestFormData.freeInput3Label }}: {{ periodRequestFormData.freeInput3 }}<br/>{% endif %}{% if periodRequestFormData.freeInput4 != "" %}{{ periodRequestFormData.freeInput4Label }}: {{ periodRequestFormData.freeInput4 }}<br/>{% endif %}<br/>Kind Regards,<br/>Yours</div>',
  82.                     ],
  83.                 ],
  84.             ];
  85.             try {
  86.                 $mailTemplateTypeRepository->create($mailTemplateType$installContext);
  87.                 $mailTemplateRepository->create($mailTemplate$installContext);
  88.             } catch (UniqueConstraintViolationException $exception) {
  89.             }
  90.         }
  91.         public function uninstall(UninstallContext $uninstallContext): void
  92.         {
  93.             if ($uninstallContext->keepUserData()) {
  94.                 parent::uninstall($uninstallContext);
  95.                 return;
  96.             }
  97.             $this->deleteMailTemplate($uninstallContext->getContext());
  98.             parent::uninstall($uninstallContext);
  99.         }
  100.         private function deleteMailTemplate($uninstallContext){
  101.             /** @var EntityRepositoryInterface $mailTemplateTypeRepository */
  102.             $mailTemplateTypeRepository $this->container->get('mail_template_type.repository');
  103.             /** @var EntityRepositoryInterface $mailTemplateRepository */
  104.             $mailTemplateRepository $this->container->get('mail_template.repository');
  105.             /** @var MailTemplateTypeEntity $requestFormMailTemplateType */
  106.             $requestFormMailTemplateType $mailTemplateTypeRepository->search(
  107.                 (new Criteria())->addFilter(new EqualsFilter('technicalName'self::TEMPLATE_TYPE_TECHNICAL_NAME)),
  108.                 $uninstallContext
  109.             )->first();
  110.             $mailTemplateIds $mailTemplateRepository->searchIds(
  111.                 (new Criteria())->addFilter(new EqualsFilter('mailTemplateTypeId'$requestFormMailTemplateType->getId())),
  112.                 $uninstallContext
  113.             )->getIds();
  114.             $ids array_map(static function ($id) { return ['id' => $id]; }, $mailTemplateIds);
  115.             $mailTemplateRepository->delete($ids$uninstallContext);
  116.             $mailTemplateTypeRepository->delete([['id' => $requestFormMailTemplateType->getId()]], $uninstallContext);
  117.             $connection $this->container->get(Connection::class);
  118.             $connection->executeStatement('DROP TABLE IF EXISTS `periodrequestform`');
  119.         }
  120.     }