Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php /** * Copyright Magento, Inc. All rights reserved. * See COPYING.txt for license ..
Decoded Output download
<?php
/**
* Copyright Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Catalog\Model;
use Magento\Catalog\Api\ProductRenderListInterface;
use Magento\Catalog\Model\ResourceModel\Product\CollectionFactory;
use Magento\Catalog\Ui\DataProvider\Product\ProductRenderCollectorComposite;
use Magento\Catalog\Ui\DataProvider\Product\ProductRenderCollectorInterface;
use Magento\Framework\Api\Search\SearchResultFactory;
use Magento\Framework\Api\SearchCriteria\CollectionProcessorInterface;
use Magento\Framework\Data\CollectionModifier;
use Magento\Framework\Data\CollectionModifierInterface;
/**
* Provide product render information (this information should be enough for rendering product on front)
*
* Render information provided for one or few products
*/
class ProductRenderList implements ProductRenderListInterface
{
/**
* @var CollectionProcessorInterface
*/
private $collectionProcessor;
/**
* @var CollectionFactory
*/
private $collectionFactory;
/**
* @var ProductRenderCollectorInterface
*/
private $productRenderCollectorComposite;
/**
* @var SearchResultFactory
*/
private $searchResultFactory;
/**
* @var \Magento\Catalog\Model\ProductRenderFactory
*/
private $productRenderFactory;
/**
* @var array
*/
private $productAttributes;
/**
* @var CollectionModifierInterface
*/
private $collectionModifier;
/**
* @param CollectionFactory $collectionFactory
* @param CollectionProcessorInterface $collectionProcessor
* @param ProductRenderCollectorComposite $productRenderCollectorComposite
* @param ProductRenderSearchResultsFactory $searchResultFactory
* @param ProductRenderFactory $productRenderDtoFactory
* @param Config $config
* @param CollectionModifier $collectionModifier
* @param array $productAttributes
*/
public function __construct(
CollectionFactory $collectionFactory,
CollectionProcessorInterface $collectionProcessor,
ProductRenderCollectorComposite $productRenderCollectorComposite,
ProductRenderSearchResultsFactory $searchResultFactory,
ProductRenderFactory $productRenderDtoFactory,
\Magento\Catalog\Model\Config $config,
CollectionModifier $collectionModifier,
array $productAttributes
) {
$this->collectionProcessor = $collectionProcessor;
$this->collectionFactory = $collectionFactory;
$this->productRenderCollectorComposite = $productRenderCollectorComposite;
$this->searchResultFactory = $searchResultFactory;
$this->productRenderFactory = $productRenderDtoFactory;
$this->productAttributes = array_merge($productAttributes, $config->getProductAttributes());
$this->collectionModifier = $collectionModifier;
}
/**
* @inheritdoc
*/
public function getList(\Magento\Framework\Api\SearchCriteriaInterface $searchCriteria, $storeId, $currencyCode)
{
$items = [];
$productCollection = $this->collectionFactory->create();
$productCollection->addAttributeToSelect($this->productAttributes)
->setStoreId($storeId)
->addMinimalPrice()
->addFinalPrice()
->addTaxPercents();
$this->collectionModifier->apply($productCollection);
$this->collectionProcessor->process($searchCriteria, $productCollection);
foreach ($productCollection as $item) {
$productRenderInfo = $this->productRenderFactory->create();
$productRenderInfo->setStoreId($storeId);
$productRenderInfo->setCurrencyCode($currencyCode);
$this->productRenderCollectorComposite->collect($item, $productRenderInfo);
$items[$item->getId()] = $productRenderInfo;
}
$searchResult = $this->searchResultFactory->create();
$searchResult->setItems($items);
$searchResult->setTotalCount(count($items));
$searchResult->setSearchCriteria($searchCriteria);
return $searchResult;
}
}
?>
Did this file decode correctly?
Original Code
<?php
/**
* Copyright Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Catalog\Model;
use Magento\Catalog\Api\ProductRenderListInterface;
use Magento\Catalog\Model\ResourceModel\Product\CollectionFactory;
use Magento\Catalog\Ui\DataProvider\Product\ProductRenderCollectorComposite;
use Magento\Catalog\Ui\DataProvider\Product\ProductRenderCollectorInterface;
use Magento\Framework\Api\Search\SearchResultFactory;
use Magento\Framework\Api\SearchCriteria\CollectionProcessorInterface;
use Magento\Framework\Data\CollectionModifier;
use Magento\Framework\Data\CollectionModifierInterface;
/**
* Provide product render information (this information should be enough for rendering product on front)
*
* Render information provided for one or few products
*/
class ProductRenderList implements ProductRenderListInterface
{
/**
* @var CollectionProcessorInterface
*/
private $collectionProcessor;
/**
* @var CollectionFactory
*/
private $collectionFactory;
/**
* @var ProductRenderCollectorInterface
*/
private $productRenderCollectorComposite;
/**
* @var SearchResultFactory
*/
private $searchResultFactory;
/**
* @var \Magento\Catalog\Model\ProductRenderFactory
*/
private $productRenderFactory;
/**
* @var array
*/
private $productAttributes;
/**
* @var CollectionModifierInterface
*/
private $collectionModifier;
/**
* @param CollectionFactory $collectionFactory
* @param CollectionProcessorInterface $collectionProcessor
* @param ProductRenderCollectorComposite $productRenderCollectorComposite
* @param ProductRenderSearchResultsFactory $searchResultFactory
* @param ProductRenderFactory $productRenderDtoFactory
* @param Config $config
* @param CollectionModifier $collectionModifier
* @param array $productAttributes
*/
public function __construct(
CollectionFactory $collectionFactory,
CollectionProcessorInterface $collectionProcessor,
ProductRenderCollectorComposite $productRenderCollectorComposite,
ProductRenderSearchResultsFactory $searchResultFactory,
ProductRenderFactory $productRenderDtoFactory,
\Magento\Catalog\Model\Config $config,
CollectionModifier $collectionModifier,
array $productAttributes
) {
$this->collectionProcessor = $collectionProcessor;
$this->collectionFactory = $collectionFactory;
$this->productRenderCollectorComposite = $productRenderCollectorComposite;
$this->searchResultFactory = $searchResultFactory;
$this->productRenderFactory = $productRenderDtoFactory;
$this->productAttributes = array_merge($productAttributes, $config->getProductAttributes());
$this->collectionModifier = $collectionModifier;
}
/**
* @inheritdoc
*/
public function getList(\Magento\Framework\Api\SearchCriteriaInterface $searchCriteria, $storeId, $currencyCode)
{
$items = [];
$productCollection = $this->collectionFactory->create();
$productCollection->addAttributeToSelect($this->productAttributes)
->setStoreId($storeId)
->addMinimalPrice()
->addFinalPrice()
->addTaxPercents();
$this->collectionModifier->apply($productCollection);
$this->collectionProcessor->process($searchCriteria, $productCollection);
foreach ($productCollection as $item) {
$productRenderInfo = $this->productRenderFactory->create();
$productRenderInfo->setStoreId($storeId);
$productRenderInfo->setCurrencyCode($currencyCode);
$this->productRenderCollectorComposite->collect($item, $productRenderInfo);
$items[$item->getId()] = $productRenderInfo;
}
$searchResult = $this->searchResultFactory->create();
$searchResult->setItems($items);
$searchResult->setTotalCount(count($items));
$searchResult->setSearchCriteria($searchCriteria);
return $searchResult;
}
}
Function Calls
| None |
Stats
| MD5 | a03efb179db69d83dda13cfb6e1e40c8 |
| Eval Count | 0 |
| Decode Time | 112 ms |