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\Backend\Block\Widget\Grid;
use Magento\Backend\Block\Template\Context;
use Magento\Framework\App\ObjectManager;
use Magento\Framework\AuthorizationInterface;
use Magento\Framework\DataObject;
use Magento\Framework\Json\EncoderInterface;
/**
* Grid widget massaction default block
*
* @api
* @deprecated 100.2.0 in favour of UI component implementation
* @since 100.0.2
*/
class Massaction extends \Magento\Backend\Block\Widget\Grid\Massaction\AbstractMassaction
{
/**
* @var AuthorizationInterface
*/
private $authorization;
/**
* Map bind item id to a particular acl type
* itemId => acl
*
* @var array
*/
private $restrictions = [
'enable' => 'Magento_Backend::toggling_cache_type',
'disable' => 'Magento_Backend::toggling_cache_type',
'refresh' => 'Magento_Backend::refresh_cache_type',
];
/**
* Massaction constructor.
*
* @param Context $context
* @param EncoderInterface $jsonEncoder
* @param array $data
* @param AuthorizationInterface $authorization
*/
public function __construct(
Context $context,
EncoderInterface $jsonEncoder,
array $data = [],
AuthorizationInterface $authorization = null
) {
$this->authorization = $authorization ?: ObjectManager::getInstance()->get(AuthorizationInterface::class);
parent::__construct($context, $jsonEncoder, $data);
}
/**
* {@inheritdoc}
*
* @param string $itemId
* @param array|DataObject $item
*
* @return $this
* @since 100.2.3
*/
public function addItem($itemId, $item)
{
if (!$this->isRestricted($itemId)) {
parent::addItem($itemId, $item);
}
return $this;
}
/**
* Check if access to action restricted
*
* @param string $itemId
*
* @return bool
*/
private function isRestricted(string $itemId): bool
{
if (!key_exists($itemId, $this->restrictions)) {
return false;
}
return !$this->authorization->isAllowed($this->restrictions[$itemId]);
}
}
?>
Did this file decode correctly?
Original Code
<?php
/**
* Copyright Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Backend\Block\Widget\Grid;
use Magento\Backend\Block\Template\Context;
use Magento\Framework\App\ObjectManager;
use Magento\Framework\AuthorizationInterface;
use Magento\Framework\DataObject;
use Magento\Framework\Json\EncoderInterface;
/**
* Grid widget massaction default block
*
* @api
* @deprecated 100.2.0 in favour of UI component implementation
* @since 100.0.2
*/
class Massaction extends \Magento\Backend\Block\Widget\Grid\Massaction\AbstractMassaction
{
/**
* @var AuthorizationInterface
*/
private $authorization;
/**
* Map bind item id to a particular acl type
* itemId => acl
*
* @var array
*/
private $restrictions = [
'enable' => 'Magento_Backend::toggling_cache_type',
'disable' => 'Magento_Backend::toggling_cache_type',
'refresh' => 'Magento_Backend::refresh_cache_type',
];
/**
* Massaction constructor.
*
* @param Context $context
* @param EncoderInterface $jsonEncoder
* @param array $data
* @param AuthorizationInterface $authorization
*/
public function __construct(
Context $context,
EncoderInterface $jsonEncoder,
array $data = [],
AuthorizationInterface $authorization = null
) {
$this->authorization = $authorization ?: ObjectManager::getInstance()->get(AuthorizationInterface::class);
parent::__construct($context, $jsonEncoder, $data);
}
/**
* {@inheritdoc}
*
* @param string $itemId
* @param array|DataObject $item
*
* @return $this
* @since 100.2.3
*/
public function addItem($itemId, $item)
{
if (!$this->isRestricted($itemId)) {
parent::addItem($itemId, $item);
}
return $this;
}
/**
* Check if access to action restricted
*
* @param string $itemId
*
* @return bool
*/
private function isRestricted(string $itemId): bool
{
if (!key_exists($itemId, $this->restrictions)) {
return false;
}
return !$this->authorization->isAllowed($this->restrictions[$itemId]);
}
}
Function Calls
None |
Stats
MD5 | ae9f6517d1df3591127e900c97802f4c |
Eval Count | 0 |
Decode Time | 86 ms |