<?php
namespace ProxaImport;
use Shopware\Core\Framework\Context;
use Shopware\Core\Framework\Plugin;
use Shopware\Core\Framework\Plugin\Context\ActivateContext;
use Shopware\Core\Framework\Plugin\Context\DeactivateContext;
class ProxaImport extends Plugin
{
const IMPORT_NAME = 'Proxa product import';
const UPDATE_NAME = 'Proxa product update';
public function activate(ActivateContext $activateContext): void
{
$this->makeImport();
}
private function makeImport()
{
$repo = $this->container->get('import_export_profile.repository');
$upsert = [
[
'id' => md5(self::IMPORT_NAME),
'name' => self::IMPORT_NAME,
'label' => self::IMPORT_NAME,
'sourceEntity' => 'proxa_product',
'fileType' => 'text/csv',
'delimiter' => ';',
'enclosure' => '"',
], [
'id' => md5(self::UPDATE_NAME),
'name' => self::UPDATE_NAME,
'label' => self::UPDATE_NAME,
'sourceEntity' => 'proxa_product',
'fileType' => 'text/csv',
'delimiter' => ';',
'enclosure' => '"',
],
];
$repo->upsert($upsert, Context::createDefaultContext());
}
public function deactivate(DeactivateContext $deactivateContext): void
{
$this->deleteImport();
}
private function deleteImport()
{
$repo = $this->container->get('import_export_profile.repository');
$repo->delete([
['id' => md5(self::IMPORT_NAME)],
['id' => md5(self::IMPORT_NAME)],
], Context::createDefaultContext());
}
}