custom/plugins/JlauLoginAsCustomer/src/JlauLoginAsCustomer.php line 12

Open in your IDE?
  1. <?php declare(strict_types=1);
  2. namespace Jlau\LoginAsCustomer;
  3. use Jlau\LoginAsCustomer\Controller\LoginAsCustomer;
  4. use Shopware\Core\Framework\Plugin;
  5. use Shopware\Core\Framework\Plugin\Context\ActivateContext;
  6. use Shopware\Core\Framework\Plugin\Context\DeactivateContext;
  7. use Shopware\Core\Framework\Util\Random;
  8. use Shopware\Core\System\SystemConfig\SystemConfigService;
  9. class JlauLoginAsCustomer extends Plugin
  10. {
  11.     public function activate(ActivateContext $activateContext): void
  12.     {
  13.         $configService $this->container->get(SystemConfigService::class);
  14.         $random Random::getAlphanumericString(32);
  15.         $configService->set('JlauLoginAsCustomer.config.secret'$random);
  16.         $ivlen openssl_cipher_iv_length(LoginAsCustomer::CIPHER);
  17.         $iv Random::getAlphanumericString($ivlen);
  18.         $configService->set('JlauLoginAsCustomer.config.iv'$iv);
  19.     }
  20.     public function deactivate(DeactivateContext $deactivateContext): void
  21.     {
  22.         $configService $this->container->get(SystemConfigService::class);
  23.         $configService->delete('JlauLoginAsCustomer.config.secret');
  24.         $configService->delete('JlauLoginAsCustomer.config.iv');
  25.     }
  26.     public function enrichPrivileges(): array
  27.     {
  28.         return [
  29.             'login_as_customer' => [
  30.                 'jlau.customer.login-as-customer'
  31.             ]
  32.         ];
  33.     }
  34. }