|
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 / Checkout / Model / |
Filename | /home/dev2.destoffenstraat.com/app/code/Amasty/Checkout/Model/SaveFields.php |
Size | 2.08 kb |
Permission | rwxrwxrwx |
Owner | root : root |
Create time | 17-Aug-2025 10:26 |
Last modified | 23-Nov-2022 12:33 |
Last accessed | 21-Aug-2025 20:26 |
Actions | edit | rename | delete | download (gzip) |
View | text | code | image |
<?php
declare(strict_types=1);
/**
* @author Amasty Team
* @copyright Copyright (c) 2022 Amasty (https://www.amasty.com)
* @package One Step Checkout for Magento 2
*/
namespace Amasty\Checkout\Model;
use Amasty\Checkout\Api\Data\PlaceholderInterface;
use Amasty\CheckoutCore\Model\Field;
use Magento\Framework\Api\DataObjectHelper;
use Magento\Framework\Exception\CouldNotDeleteException;
use Magento\Framework\Exception\CouldNotSaveException;
class SaveFields
{
/**
* @var PlaceholderRepository
*/
private $placeholderRepository;
/**
* @var DataObjectHelper
*/
private $dataObjectHelper;
public function __construct(
PlaceholderRepository $placeholderRepository,
DataObjectHelper $dataObjectHelper
) {
$this->placeholderRepository = $placeholderRepository;
$this->dataObjectHelper = $dataObjectHelper;
}
/**
* @param array $fields
* @param int $storeId
*
* @throws CouldNotDeleteException
* @throws CouldNotSaveException
*/
public function saveFields(array $fields, int $storeId): void
{
foreach ($fields as $attributeId => $fieldData) {
$placeholderEntity = $this->placeholderRepository->getById(
(int)$fieldData[PlaceholderInterface::PLACEHOLDER_ID]
);
if (($storeId != Field::DEFAULT_STORE_ID && empty($fieldData['use_default']))
|| $storeId == Field::DEFAULT_STORE_ID) {
unset($fieldData[PlaceholderInterface::PLACEHOLDER_ID], $fieldData['id']);
$fieldData[PlaceholderInterface::ATTRIBUTE_ID] = $attributeId;
$fieldData[PlaceholderInterface::STORE_ID] = $storeId;
$this->dataObjectHelper->populateWithArray(
$placeholderEntity,
$fieldData,
PlaceholderInterface::class
);
$this->placeholderRepository->save($placeholderEntity);
} else {
$this->placeholderRepository->delete($placeholderEntity);
}
}
}
}
declare(strict_types=1);
/**
* @author Amasty Team
* @copyright Copyright (c) 2022 Amasty (https://www.amasty.com)
* @package One Step Checkout for Magento 2
*/
namespace Amasty\Checkout\Model;
use Amasty\Checkout\Api\Data\PlaceholderInterface;
use Amasty\CheckoutCore\Model\Field;
use Magento\Framework\Api\DataObjectHelper;
use Magento\Framework\Exception\CouldNotDeleteException;
use Magento\Framework\Exception\CouldNotSaveException;
class SaveFields
{
/**
* @var PlaceholderRepository
*/
private $placeholderRepository;
/**
* @var DataObjectHelper
*/
private $dataObjectHelper;
public function __construct(
PlaceholderRepository $placeholderRepository,
DataObjectHelper $dataObjectHelper
) {
$this->placeholderRepository = $placeholderRepository;
$this->dataObjectHelper = $dataObjectHelper;
}
/**
* @param array $fields
* @param int $storeId
*
* @throws CouldNotDeleteException
* @throws CouldNotSaveException
*/
public function saveFields(array $fields, int $storeId): void
{
foreach ($fields as $attributeId => $fieldData) {
$placeholderEntity = $this->placeholderRepository->getById(
(int)$fieldData[PlaceholderInterface::PLACEHOLDER_ID]
);
if (($storeId != Field::DEFAULT_STORE_ID && empty($fieldData['use_default']))
|| $storeId == Field::DEFAULT_STORE_ID) {
unset($fieldData[PlaceholderInterface::PLACEHOLDER_ID], $fieldData['id']);
$fieldData[PlaceholderInterface::ATTRIBUTE_ID] = $attributeId;
$fieldData[PlaceholderInterface::STORE_ID] = $storeId;
$this->dataObjectHelper->populateWithArray(
$placeholderEntity,
$fieldData,
PlaceholderInterface::class
);
$this->placeholderRepository->save($placeholderEntity);
} else {
$this->placeholderRepository->delete($placeholderEntity);
}
}
}
}