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

Open in your IDE?
  1. <?php declare(strict_types=1);
  2. namespace CoeAccountOrtPlzSw6;
  3. use CoeAccountOrtPlzSw6\Core\System\Country\CountryZipValidationDefintion;
  4. use Doctrine\DBAL\Driver\Connection;
  5. use Shopware\Core\Framework\Plugin;
  6. use Shopware\Core\Framework\Plugin\Context\InstallContext;
  7. use Shopware\Core\Framework\Plugin\Context\UninstallContext;
  8. class CoeAccountOrtPlzSw6 extends Plugin {
  9.     /**
  10.      * @param InstallContext $context
  11.      * @author Jeffry Block <jeffry.block@codeenterprise.de>
  12.      * @throws \Shopware\Core\Framework\DataAbstractionLayer\Exception\InconsistentCriteriaIdsException
  13.      */
  14.     public function install(InstallContext $context): void
  15.     {
  16.         parent::install($context);
  17.     }
  18.     /**
  19.      * @param UninstallContext $context
  20.      * @author Jeffry Block <jeffry.block@codeenterprise.de>
  21.      */
  22.     public function uninstall(UninstallContext $context): void
  23.     {
  24.         parent::uninstall($context);
  25.         if ($context->keepUserData()) {
  26.             return;
  27.         }
  28.         /** @var Connection $con */
  29.         $con $this->container->get("Doctrine\DBAL\Connection");
  30.         $classNames = [
  31.             CountryZipValidationDefintion::ENTITY_NAME,
  32.         ];
  33.         foreach ($classNames as $className) {
  34.             $con->executeStatement(\sprintf('DROP TABLE IF EXISTS `%s`'$className));
  35.         }
  36.     }
  37.     /** Example Pattern
  38.     AC => ASCN 1ZZ
  39.     AD => AD[1-7]0\d
  40.     AF => \d{4}
  41.     AI => (?:AI-)?2640
  42.     AL => \d{4}
  43.     AM => (?:37)?\d{4}
  44.     AR => ((?:[A-HJ-NP-Z])?\d{4})([A-Z]{3})?
  45.     AS => (96799)(?:[ \-](\d{4}))?
  46.     AT => \d{4}
  47.     AU => \d{4}
  48.     AX => 22\d{3}
  49.     AZ => \d{4}
  50.     BA => \d{5}
  51.     BB => BB\d{5}
  52.     BD => \d{4}
  53.     BE => \d{4}
  54.     BG => \d{4}
  55.     BH => (?:\d|1[0-2])\d{2}
  56.     BL => 9[78][01]\d{2}
  57.     BM => [A-Z]{2} ?[A-Z0-9]{2}
  58.     BN => [A-Z]{2} ?\d{4}
  59.     BR => \d{5}-?\d{3}
  60.     BT => \d{5}
  61.     BY => \d{6}
  62.     CC => 6799
  63.     CH => [1-9]\d{3}
  64.     CL => \d{7}
  65.     CN => \d{6}
  66.     CO => \d{6}
  67.     CR => \d{45}|\d{3}-\d{4}
  68.     CV => \d{4}
  69.     CX => 6798
  70.     CY => \d{4}
  71.     CZ => \d{3} ?\d{2}
  72.     DE => \d{5}
  73.     DK => \d{4}
  74.     DO => \d{5}
  75.     DZ => \d{5}
  76.     EC => \d{6}
  77.     EE => \d{5}
  78.     EG => \d{5}
  79.     EH => \d{5}
  80.     ES => ^([0-4]\d{4}|5[0-2]\d{3})$
  81.     ET => \d{4}
  82.     FI => \d{5}
  83.     FK => FIQQ 1ZZ
  84.     FM => (9694[1-4])(?:[ \-](\d{4}))?
  85.     FO => \d{3}
  86.     FR => \d{1}(?:A|B|\d{1}) ?\d{3}
  87.     GE => \d{4}
  88.     GF => 9[78]3\d{2}
  89.     GG => GY\d[\dA-Z]? ?\d[ABD-HJLN-UW-Z]{2}
  90.     GI => GX11 1AA
  91.     GL => 39\d{2}
  92.     GN => \d{3}
  93.     GP => 9[78][01]\d{2}
  94.     GR => \d{3} ?\d{2}
  95.     GS => SIQQ 1ZZ
  96.     GT => \d{5}
  97.     GU => (969(?:[12]\d|3[12]))(?:[ \-](\d{4}))?
  98.     GW => \d{4}
  99.     HK => 999077 //Hong Kong
  100.     HM => \d{4}
  101.     HN => \d{5}
  102.     HR => \d{5}
  103.     HT => \d{4}
  104.     HU => \d{4}
  105.     ID => \d{5}
  106.     IE => [\dA-Z]{3}( ?[\dA-Z]{4})?
  107.     IL => \d{5}(?:\d{2})?
  108.     IM => IM\d[\dA-Z]? ?\d[ABD-HJLN-UW-Z]{2}
  109.     IN => \d{6}
  110.     IO => BBND 1ZZ
  111.     IQ => \d{5}
  112.     IR => \d{5}-?\d{5}
  113.     IS => \d{3}
  114.     IT => \d{5}
  115.     JE => JE\d[\dA-Z]? ?\d[ABD-HJLN-UW-Z]{2}
  116.     JM => [a-zA-Z]{2}
  117.     JO => \d{5}
  118.     JP => \d{3}-?\d{4}
  119.     KE => \d{5}
  120.     KG => \d{6}
  121.     KH => \d{5}
  122.     KR => \d{3}(?:\d{2}|-\d{3})
  123.     KW => \d{5}
  124.     KY => KY\d-\d{4}
  125.     KZ => \d{6}
  126.     LA => \d{5}
  127.     LB => (?:\d{4})(?: ?(?:\d{4}))?
  128.     LI => 948[5-9]|949[0-7]
  129.     LK => \d{5}
  130.     LR => \d{4}
  131.     LS => \d{3}
  132.     LT => (LT-)?\d{5}
  133.     LU => \d{4}
  134.     LV => (LV-)?\d{4}
  135.     MA => \d{5}
  136.     MC => 980\d{2}
  137.     MD => \d{4}
  138.     ME => 8\d{4}
  139.     MF => 9[78][01]\d{2}
  140.     MG => \d{3}
  141.     MH => (969[67]\d)(?:[ \-](\d{4}))?
  142.     MK => \d{4}
  143.     MM => \d{5}
  144.     MN => \d{5}
  145.     MO => 999078 //Macau
  146.     MP => (9695[012])(?:[ \-](\d{4}))?
  147.     MQ => 9[78]2\d{2}
  148.     MT => [A-Z]{3} ?\d{24}
  149.     MU => \d{3}(?:\d{2}|[A-Z]{2}\d{3})
  150.     MV => \d{5}
  151.     MX => \d{5}
  152.     MY => \d{5}
  153.     MZ => \d{4}
  154.     NC => 988\d{2}
  155.     NE => \d{4}
  156.     NF => 2899
  157.     NG => \d{6}
  158.     NI => \d{5}
  159.     NL => [1-9]{1}\d{3}([ ]?[A-Z]{2})
  160.     NO => \d{4}
  161.     NP => \d{5}
  162.     NZ => \d{4}
  163.     OM => (?:PC )?\d{3}
  164.     PA => \d{4}
  165.     PE => (?:LIMA \d{12}|CALLAO 0?\d)|[0-2]\d{4}
  166.     PF => 987\d{2}
  167.     PG => \d{3}
  168.     PH => \d{4}
  169.     PK => \d{5}
  170.     PL => \d{2}-\d{3}
  171.     PM => 9[78]5\d{2}
  172.     PN => PCRN 1ZZ
  173.     PR => (00[679]\d{2})(?:[ \-](\d{4}))?
  174.     PT => \d{4}-\d{3}
  175.     PW => (969(?:39|40))(?:[ \-](\d{4}))?
  176.     PY => \d{4}
  177.     RE => 9[78]4\d{2}
  178.     RO => \d{6}
  179.     RS => \d{56}
  180.     RU => \d{6}
  181.     SA => \d{5}
  182.     SE => \d{3} ?\d{2}
  183.     SG => \d{6}
  184.     SH => (?:ASCN|STHL) 1ZZ
  185.     SI => \d{4}
  186.     SJ => \d{4}
  187.     SK => \d{3} ?\d{2}
  188.     SM => 4789\d
  189.     SN => \d{5}
  190.     SO => [A-Z]{2} ?\d{5}
  191.     SV => CP [1-3][1-7][0-2]\d
  192.     SZ => [HLMS]\d{3}
  193.     TA => TDCU 1ZZ
  194.     TC => TKCA 1ZZ
  195.     TH => \d{5}
  196.     TJ => \d{6}
  197.     TM => \d{6}
  198.     TN => \d{4}
  199.     TR => \d{5}
  200.     TW => \d{3}(?:\d{2})?
  201.     TZ => \d{45}
  202.     UA => \d{5}
  203.     UM => 96898
  204.     US => (\d{5})(?:[ \-](\d{4}))?
  205.     UY => \d{5}
  206.     UZ => \d{6}
  207.     VA => 00120
  208.     VC => VC\d{4}
  209.     VE => \d{4}
  210.     VG => VG\d{4}
  211.     VI => (008(?:(?:[0-4]\d)|(?:5[01])))(?:[ \-](\d{4}))?
  212.     VN => \d{6}
  213.     WF => 986\d{2}
  214.     XK => [1-7]\d{4}
  215.     YT => 976\d{2}
  216.     ZA => \d{4}
  217.     ZM => \d{5} */
  218. }