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.
*/
declare(strict_types=1);
namespace Magento\CatalogGraphQl\Model\Resolver\Product;
use Magento\Framework\Exception\LocalizedException;
use Magento\Framework\GraphQl\Query\Resolver\ContextInterface;
use Magento\Framework\GraphQl\Schema\Type\ResolveInfo;
use Magento\Catalog\Model\Product;
use Magento\Catalog\Model\ProductLink\Link;
use Magento\Framework\GraphQl\Config\Element\Field;
use Magento\Framework\GraphQl\Query\ResolverInterface;
/**
* @inheritdoc
*
* Format the product links information to conform to GraphQL schema representation
*/
class ProductLinks implements ResolverInterface
{
/**
* @var string[]
*/
private $linkTypes = ['related', 'upsell', 'crosssell'];
/**
* @inheritdoc
*
* Format product links data to conform to GraphQL schema
*
* @param \Magento\Framework\GraphQl\Config\Element\Field $field
* @param ContextInterface $context
* @param ResolveInfo $info
* @param array|null $value
* @param array|null $args
* @throws \Exception
* @return null|array
*/
public function resolve(
Field $field,
$context,
ResolveInfo $info,
array $value = null,
array $args = null
) {
if (!isset($value['model'])) {
throw new LocalizedException(__('"model" value should be specified'));
}
/** @var Product $product */
$product = $value['model'];
$links = null;
if ($product->getProductLinks()) {
$links = [];
/** @var Link $productLink */
foreach ($product->getProductLinks() as $productLink) {
if (in_array($productLink->getLinkType(), $this->linkTypes)) {
$links[] = $productLink->getData();
}
}
}
return $links;
}
}
?>
Did this file decode correctly?
Original Code
<?php
/**
* Copyright Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
declare(strict_types=1);
namespace Magento\CatalogGraphQl\Model\Resolver\Product;
use Magento\Framework\Exception\LocalizedException;
use Magento\Framework\GraphQl\Query\Resolver\ContextInterface;
use Magento\Framework\GraphQl\Schema\Type\ResolveInfo;
use Magento\Catalog\Model\Product;
use Magento\Catalog\Model\ProductLink\Link;
use Magento\Framework\GraphQl\Config\Element\Field;
use Magento\Framework\GraphQl\Query\ResolverInterface;
/**
* @inheritdoc
*
* Format the product links information to conform to GraphQL schema representation
*/
class ProductLinks implements ResolverInterface
{
/**
* @var string[]
*/
private $linkTypes = ['related', 'upsell', 'crosssell'];
/**
* @inheritdoc
*
* Format product links data to conform to GraphQL schema
*
* @param \Magento\Framework\GraphQl\Config\Element\Field $field
* @param ContextInterface $context
* @param ResolveInfo $info
* @param array|null $value
* @param array|null $args
* @throws \Exception
* @return null|array
*/
public function resolve(
Field $field,
$context,
ResolveInfo $info,
array $value = null,
array $args = null
) {
if (!isset($value['model'])) {
throw new LocalizedException(__('"model" value should be specified'));
}
/** @var Product $product */
$product = $value['model'];
$links = null;
if ($product->getProductLinks()) {
$links = [];
/** @var Link $productLink */
foreach ($product->getProductLinks() as $productLink) {
if (in_array($productLink->getLinkType(), $this->linkTypes)) {
$links[] = $productLink->getData();
}
}
}
return $links;
}
}
Function Calls
| None |
Stats
| MD5 | c0956b4bf9b09175ffd4e285974fad0c |
| Eval Count | 0 |
| Decode Time | 86 ms |