/** * Save title of sample item in store scope * * @param \Magento\Downloadable\Model\Sample $sampleObject * @return $this */ public function saveItemTitle($sampleObject) { $writeAdapter = $this->_getWriteAdapter(); $sampleTitleTable = $this->getTable('downloadable_sample_title'); $bind = array(':sample_id' => $sampleObject->getId(), ':store_id' => (int) $sampleObject->getStoreId()); $select = $writeAdapter->select()->from($sampleTitleTable)->where('sample_id=:sample_id AND store_id=:store_id'); if ($writeAdapter->fetchOne($select, $bind)) { $where = array('sample_id = ?' => $sampleObject->getId(), 'store_id = ?' => (int) $sampleObject->getStoreId()); if ($sampleObject->getUseDefaultTitle()) { $writeAdapter->delete($sampleTitleTable, $where); } else { $writeAdapter->update($sampleTitleTable, array('title' => $sampleObject->getTitle()), $where); } } else { if (!$sampleObject->getUseDefaultTitle()) { $writeAdapter->insert($sampleTitleTable, array('sample_id' => $sampleObject->getId(), 'store_id' => (int) $sampleObject->getStoreId(), 'title' => $sampleObject->getTitle())); } } return $this; }
/** * Save title of sample item in store scope * * @param \Magento\Downloadable\Model\Sample $sampleObject * @return $this */ public function saveItemTitle($sampleObject) { $connection = $this->getConnection(); $sampleTitleTable = $this->getTable('downloadable_sample_title'); $bind = [':sample_id' => $sampleObject->getId(), ':store_id' => (int) $sampleObject->getStoreId()]; $select = $connection->select()->from($sampleTitleTable)->where('sample_id=:sample_id AND store_id=:store_id'); if ($connection->fetchOne($select, $bind)) { $where = ['sample_id = ?' => $sampleObject->getId(), 'store_id = ?' => (int) $sampleObject->getStoreId()]; if ($sampleObject->getUseDefaultTitle()) { $connection->delete($sampleTitleTable, $where); } else { $connection->update($sampleTitleTable, ['title' => $sampleObject->getTitle()], $where); } } else { if (!$sampleObject->getUseDefaultTitle()) { $connection->insert($sampleTitleTable, ['sample_id' => $sampleObject->getId(), 'store_id' => (int) $sampleObject->getStoreId(), 'title' => $sampleObject->getTitle()]); } } return $this; }
/** * Subroutine for buildLink and buildSample * * @param Sample $resourceData * @param SampleInterface $dataObject * @return null */ protected function setBasicFields($resourceData, $dataObject) { $dataObject->setId($resourceData->getId()); $storeTitle = $resourceData->getStoreTitle(); $title = $resourceData->getTitle(); if (!empty($storeTitle)) { $dataObject->setTitle($storeTitle); } else { $dataObject->setTitle($title); } $dataObject->setSortOrder($resourceData->getSortOrder()); $dataObject->setSampleType($resourceData->getSampleType()); $dataObject->setSampleFile($resourceData->getSampleFile()); $dataObject->setSampleUrl($resourceData->getSampleUrl()); }
/** * Subroutine for buildLink and buildSample * * @param \Magento\Downloadable\Model\Link|\Magento\Downloadable\Model\Sample $resourceData * @param Data\DownloadableLinkInfoBuilder|Data\DownloadableSampleInfoBuilder $builder * @return null */ protected function setBasicFields($resourceData, $builder) { $builder->populateWithArray([]); $builder->setId($resourceData->getId()); $storeTitle = $resourceData->getStoreTitle(); $title = $resourceData->getTitle(); if (!empty($storeTitle)) { $builder->setTitle($storeTitle); } else { $builder->setTitle($title); } $builder->setSortOrder($resourceData->getSortOrder()); $builder->setSampleResource($this->entityInfoGenerator('sample', $resourceData)); }