<?php declare(strict_types=1);
namespace ProxaOrderManagement;
use ProxaOrderManagement\Bootstrap\CustomField\CustomFieldManager;
use ProxaOrderManagement\Bootstrap\Mail\MailManager;
use Shopware\Core\Framework\Plugin;
use Shopware\Core\Framework\Plugin\Context\ActivateContext;
use Shopware\Core\Framework\Plugin\Context\DeactivateContext;
use Shopware\Core\Framework\Plugin\Context\UpdateContext;
class ProxaOrderManagement extends Plugin
{
/**
* @param ActivateContext $activateContext
* @return void
*/
public function activate(ActivateContext $activateContext): void
{
(new CustomFieldManager($this->container))->makeCustomFieldSets();
(new MailManager($this->container))->activate();
$this->crateFilesFolder();
}
/**
* @param UpdateContext $updateContext
* @return void
*/
public function update(UpdateContext $updateContext): void
{
(new CustomFieldManager($this->container))->makeCustomFieldSets();
}
/**
* @param DeactivateContext $deactivateContext
* @return void
*/
public function deactivate(DeactivateContext $deactivateContext): void
{
(new CustomFieldManager($this->container))->deleteCustomFieldSets();
}
private function crateFilesFolder()
{
$dir = $this->container->getParameter('kernel.project_dir') . '/files/warehouse/product';
if (!file_exists($dir)) {
mkdir($dir, 0777, true);
}
}
}