41 \
Magento\Framework\Event\ManagerInterface $eventManager,
62 if (
count($linkedIds)) {
65 ->where(
'cms_entity_store.' . $linkField .
' IN (?)', $linkedIds);
69 foreach (
$result as $storeData) {
70 $storesData[$storeData[$linkField]][] = $storeData[
'store_id'];
73 foreach ($this as
$item) {
74 $linkedId =
$item->getData($linkField);
75 if (!isset($storesData[$linkedId])) {
79 if ($storeIdKey !==
false) {
80 $stores = $this->storeManager->getStores(
false,
true);
84 $storeId = current($storesData[$linkedId]);
89 $item->setData(
'store_id', $storesData[$linkedId]);
104 if ($field ===
'store_id') {
108 return parent::addFieldToFilter($field, $condition);
156 'main_table.' . $linkField .
' = store_table.' . $linkField,
159 'main_table.' . $linkField
162 parent::_renderFiltersBefore();
174 $countSelect = parent::getSelectCountSql();
189 $existingIdentifiers = [];
190 foreach ($this as
$item) {
191 $identifier =
$item->getData(
'identifier');
193 $data[
'value'] = $identifier;
196 if (in_array($identifier, $existingIdentifiers)) {
199 $existingIdentifiers[] = $identifier;
addFieldToFilter($field, $condition=null)
addStoreFilter($store, $withAdmin=true)
performAfterLoad($tableName, $linkField)
performAddStoreFilter($store, $withAdmin=true)
joinStoreRelationTable($tableName, $linkField)
addFilter($field, $value, $type='and')
__construct(\Magento\Framework\Data\Collection\EntityFactoryInterface $entityFactory, \Psr\Log\LoggerInterface $logger, \Magento\Framework\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Framework\Event\ManagerInterface $eventManager, \Magento\Store\Model\StoreManagerInterface $storeManager, \Magento\Framework\EntityManager\MetadataPool $metadataPool, \Magento\Framework\DB\Adapter\AdapterInterface $connection=null, \Magento\Framework\Model\ResourceModel\Db\AbstractDb $resource=null)
getColumnValues($colName)