custom/plugins/MoorlFoundation/src/MoorlFoundation.php line 11

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace MoorlFoundation;
  4. use Doctrine\DBAL\Connection;
  5. use Shopware\Core\Framework\Plugin;
  6. use Shopware\Core\Framework\Plugin\Context\UninstallContext;
  7. class MoorlFoundation extends Plugin
  8. {
  9.     public const NAME 'MoorlFoundation';
  10.     public const DATA_CREATED_AT '2001-11-11 11:11:11.111';
  11.     public const PLUGIN_TABLES = [
  12.         'moorl_cms_element_config',
  13.         'moorl_location',
  14.         'moorl_sorting',
  15.         'moorl_sorting_translation',
  16.     ];
  17.     public function uninstall(UninstallContext $context): void
  18.     {
  19.         parent::uninstall($context);
  20.         if ($context->keepUserData()) {
  21.             return;
  22.         }
  23.         $this->dropTables();
  24.     }
  25.     private function dropTables(): void
  26.     {
  27.         $connection $this->container->get(Connection::class);
  28.         foreach (self::PLUGIN_TABLES as $table) {
  29.             $sql sprintf('SET FOREIGN_KEY_CHECKS=0; DROP TABLE IF EXISTS `%s`;'$table);
  30.             $connection->executeUpdate($sql);
  31.         }
  32.     }
  33. }