![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/cartforge.co/app/code/Xtento/StockImport/Setup/ |
<?php /** * Product: Xtento_StockImport * ID: u66QkJ5rBwmimhUzUElhIKqqWRvsbhC3WLqSMk5AjmQ= * Last Modified: 2019-02-05T17:10:52+00:00 * File: app/code/Xtento/StockImport/Setup/RecurringData.php * Copyright: Copyright (c) XTENTO GmbH & Co. KG <[email protected]> / All rights reserved. */ namespace Xtento\StockImport\Setup; use Magento\Framework\Setup\InstallDataInterface; use Magento\Framework\Setup\ModuleContextInterface; use Magento\Framework\Setup\ModuleDataSetupInterface; /** * Class RecurringData * @package Xtento\StockImport\Setup */ class RecurringData implements InstallDataInterface { /** * @var \Magento\Framework\ObjectManagerInterface */ protected $objectManager; /** * @var \Xtento\XtCore\Helper\Utils */ protected $utilsHelper; /** * RecurringData constructor. * * @param \Magento\Framework\ObjectManagerInterface $objectManager * @param \Xtento\XtCore\Helper\Utils $utilsHelper */ public function __construct( \Magento\Framework\ObjectManagerInterface $objectManager, \Xtento\XtCore\Helper\Utils $utilsHelper ) { $this->objectManager = $objectManager; $this->utilsHelper = $utilsHelper; } /** * {@inheritdoc} */ public function install(ModuleDataSetupInterface $setup, ModuleContextInterface $context) { if (version_compare($this->utilsHelper->getMagentoVersion(), '2.2', '>=')) { $this->convertSerializedDataToJson($setup); } } /** * Convert data from serialized to JSON format. * * Must be done on every call to setup:upgrade, as eventually someone who has the latest module version of this * module installed but upgrades from Magento 2.1 to 2.2, and then serialized data must be converted to JSON. * * @param \Magento\Framework\Setup\ModuleDataSetupInterface $setup * * @return void */ private function convertSerializedDataToJson(\Magento\Framework\Setup\ModuleDataSetupInterface $setup) { /** @var \Magento\Framework\DB\FieldDataConverterFactory $fieldDataConverterFactory */ $fieldDataConverterFactory = $this->objectManager->create('\Magento\Framework\DB\FieldDataConverterFactory'); /** @var \Magento\Framework\DB\FieldDataConverter $fieldDataConverter */ $fieldDataConverter = $fieldDataConverterFactory->create('\Xtento\StockImport\Test\SerializedToJsonDataConverter'); $fieldsToConvert = ['configuration', 'conditions_serialized']; foreach ($fieldsToConvert as $fieldName) { $fieldDataConverter->convert( $setup->getConnection(), $setup->getTable('xtento_stockimport_profile'), 'profile_id', $fieldName ); } } }