1234567891011121314151617181920212223242526272829303132333435363738 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Catalog\Model;
- use Magento\Framework\Data\Collection\AbstractDb;
- use Magento\Framework\Data\CollectionModifierInterface;
- /**
- * Add visibility to product collection
- */
- class ProductVisibilityCondition implements CollectionModifierInterface
- {
- /**
- * @var \Magento\Catalog\Model\Product\Visibility
- */
- private $productVisibility;
- /**
- * ProductVisibilityCondition constructor.
- * @param \Magento\Catalog\Model\Product\Visibility $productVisibility
- */
- public function __construct(\Magento\Catalog\Model\Product\Visibility $productVisibility)
- {
- $this->productVisibility = $productVisibility;
- }
- /**
- * @param \Magento\Catalog\Model\ResourceModel\Product\Collection $collection
- * @return void
- */
- public function apply(AbstractDb $collection)
- {
- $collection->setVisibility($this->productVisibility->getVisibleInCatalogIds());
- }
- }
|