/**
  * Load data
  *
  * @param string $scope
  * @param string $scopeId
  * @return array
  */
 protected function loadData($scope, $scopeId)
 {
     $designConfig = $this->designConfigRepository->getByScope($scope, $scopeId);
     $fieldsData = $designConfig->getExtensionAttributes()->getDesignConfigData();
     $data = [];
     foreach ($fieldsData as $fieldData) {
         $data[$scope][$fieldData->getFieldConfig()['field']] = $fieldData->getValue();
     }
     $storedData = $this->dataPersistor->get('theme_design_config');
     if (isset($storedData['scope']) && isset($storedData['scope_id']) && $storedData['scope'] == $scope && $storedData['scope_id'] == $scopeId) {
         $data[$scope] = $storedData;
     }
     return $data;
 }
 /**
  * Get data
  *
  * @return array
  */
 public function getData()
 {
     if (isset($this->loadedData)) {
         return $this->loadedData;
     }
     $items = $this->collection->getItems();
     /** @var \Magento\Cms\Model\Block $block */
     foreach ($items as $block) {
         $this->loadedData[$block->getId()] = $block->getData();
     }
     $data = $this->dataPersistor->get('cms_block');
     if (!empty($data)) {
         $block = $this->collection->getNewEmptyItem();
         $block->setData($data);
         $this->loadedData[$block->getId()] = $block->getData();
     }
     return $this->loadedData;
 }
 /**
  * Get data
  *
  * @return array
  */
 public function getData()
 {
     if (isset($this->loadedData)) {
         return $this->loadedData;
     }
     $items = $this->collection->getItems();
     /** @var \Magento\Cms\Model\Page $page */
     foreach ($items as $page) {
         $this->loadedData[$page->getId()] = $page->getData();
     }
     $data = $this->dataPersistor->get('cms_page');
     if (!empty($data)) {
         $page = $this->collection->getNewEmptyItem();
         $page->setData($data);
         $this->loadedData[$page->getId()] = $page->getData();
     }
     return $this->loadedData;
 }
 /**
  * @return array
  */
 public function getData()
 {
     if (isset($this->loadedData)) {
         return $this->loadedData;
     }
     $items = $this->collection->getItems();
     /** @var Rule $rule */
     foreach ($items as $rule) {
         $rule->load($rule->getId());
         $this->loadedData[$rule->getId()] = $rule->getData();
     }
     $data = $this->dataPersistor->get('catalog_rule');
     if (!empty($data)) {
         $rule = $this->collection->getNewEmptyItem();
         $rule->setData($data);
         $this->loadedData[$rule->getId()] = $rule->getData();
     }
     return $this->loadedData;
 }
 /**
  * Get data
  *
  * @return array
  */
 public function getData()
 {
     if (isset($this->loadedData)) {
         return $this->loadedData;
     }
     $items = $this->collection->getItems();
     /** @var $tag \Magefan\Blog\Model\Tag */
     foreach ($items as $tag) {
         $this->loadedData[$tag->getId()] = $tag->getData();
     }
     $data = $this->dataPersistor->get('current_model');
     if (!empty($data)) {
         $tag = $this->collection->getNewEmptyItem();
         $tag->setData($data);
         $this->loadedData[$tag->getId()] = $tag->getData();
         $this->dataPersistor->clear('current_model');
     }
     return $this->loadedData;
 }
Beispiel #6
0
 /**
  * Resolve data persistence
  *
  * @param array $data
  * @return array
  */
 private function resolvePersistentData(array $data)
 {
     $persistentData = (array) $this->dataPersistor->get('catalog_product');
     $productId = $this->locator->getProduct()->getId();
     if (empty($data[$productId][self::DATA_SOURCE_DEFAULT])) {
         $data[$productId][self::DATA_SOURCE_DEFAULT] = [];
     }
     $data[$productId] = array_replace_recursive($data[$productId][self::DATA_SOURCE_DEFAULT], $persistentData);
     return $data;
 }