b374k
m1n1 1.01
Apache/2.4.41 (Ubuntu)
Linux vmi616275.contaboserver.net 5.4.0-84-generic #94-Ubuntu SMP Thu Aug 26 20:27:37 UTC 2021 x86_64
uid=33(www-data) gid=33(www-data) groups=33(www-data)
server ip : 62.171.164.128 | your ip : 127.0.0.1
safemode OFF
 >  / home / dev2.destoffenstraat.com / app / code / Amasty / ExportPro / Export / Form /
Filename/home/dev2.destoffenstraat.com/app/code/Amasty/ExportPro/Export/Form/Fields.php
Size4.14 kb
Permissionrw-r--r--
Ownerroot : root
Create time17-Aug-2025 10:26
Last modified14-Jun-2025 23:39
Last accessed23-Aug-2025 02:07
Actionsedit | rename | delete | download (gzip)
Viewtext | code | image
<?php

declare(strict_types=1);

/**
* @author Amasty Team
* @copyright Copyright (c) Amasty (https://www.amasty.com)
* @package Export Pro for Magento 2 (System)
*/

namespace Amasty\ExportPro\Export\Form;

use Amasty\ExportCore\Api\Config\EntityConfigInterface;
use Amasty\ExportCore\Api\Config\ProfileConfigInterface;
use Amasty\ExportCore\Api\FormInterface;
use Magento\Framework\App\RequestInterface;

class Fields extends \Amasty\ExportCore\Export\Form\FieldsAdvanced
{
/**
* @var string
*/
private $customPrefixTagNameImage;

public function getData(ProfileConfigInterface $profileConfig): array
{
$data = parent::getData($profileConfig);
$data['fields'][$profileConfig->getEntityCode()]['use_custom_prefix'] =
$profileConfig->getExtensionAttributes()->getUseCustomPrefix();

return $data;
}

public function prepareConfig(ProfileConfigInterface $profileConfig, RequestInterface $request): FormInterface
{
parent::prepareConfig($profileConfig, $request);
$profileConfig->getExtensionAttributes()->setUseCustomPrefix(
$request->getParam('fields')['customer_entity']['use_custom_prefix'] ?? '0'
);

return $this;
}

public function prepareFieldsContainers(
EntityConfigInterface $entityConfig,
?array $relationsConfig,
int $level,
string $fieldName = '',
string $parentKey = ''
): array {
$result = parent::prepareFieldsContainers($entityConfig, $relationsConfig, $level, $fieldName, $parentKey);
$index = $this->getEntityIndex($parentKey, $entityConfig->getEntityCode());
if ($level === 0) {
$result[$index]['children']['use_custom_prefix'] = [
'arguments' => [
'data' => [
'config' => [
'label' => __('Use Custom Entity Key'),
'dataType' => 'boolean',
'prefer' => 'toggle',
'valueMap' => ['true' => '1', 'false' => '0'],
'default' => '',
'sortOrder' => '0',
'formElement' => 'checkbox',
'visible' => true,
'componentType' => 'field',
'tooltipTpl' => 'Amasty_ExportCore/form/element/tooltip',
'tooltip' => [
'description' => '<img src="' . $this->getCustomPrefixTagNameImage(). '"/>'
]
]
]
]
];
$result[$index]['children']['field_code_output']['arguments']['data']['config']['component'] =
'Amasty_ExportPro/js/form/element/custom-prefix';
} elseif (isset($result[$index]['children'][$index . '_container']['children']['field_code'])) {
$result[$index]['children'][$index . '_container']['children']['field_code']['arguments']['data']
['config']['formElement'] = 'hidden';
$fieldCodeOutput = &$result[$index]['children'][$index . '_container']['children']['field_code_output']
['arguments']['data']['config'];
$fieldCodeOutput['placeholder'] = $fieldName;
$fieldCodeOutput['label'] = __('Custom Entity Key');
$fieldCodeOutput['component'] = 'Amasty_ExportPro/js/form/element/custom-prefix';
unset($fieldCodeOutput['tooltip']);
}

return $result;
}

protected function getCustomPrefixTagNameImage(): string
{
if (null === $this->customPrefixTagNameImage) {
if (!empty($this->arguments['customPrefixTagNameImage'])) {
$this->customPrefixTagNameImage = $this->assetRepo->getUrl(
$this->arguments['customPrefixTagNameImage']
);
} else {
$this->customPrefixTagNameImage = $this->assetRepo->getUrl(
'Amasty_ExportCore::images/custom_prefix_tag_name.gif'
);
}
}

return $this->customPrefixTagNameImage;
}
}