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.
*/
/**
* Theme grid column filter
*/
namespace Magento\Backend\Block\Widget\Grid\Column\Filter;
/**
* Theme grid filter
*/
class Theme extends \Magento\Backend\Block\Widget\Grid\Column\Filter\AbstractFilter
{
/**
* @var \Magento\Framework\View\Design\Theme\LabelFactory
*/
protected $_labelFactory;
/**
* @param \Magento\Backend\Block\Context $context
* @param \Magento\Framework\DB\Helper $resourceHelper
* @param \Magento\Framework\View\Design\Theme\LabelFactory $labelFactory
* @param array $data
*/
public function __construct(
\Magento\Backend\Block\Context $context,
\Magento\Framework\DB\Helper $resourceHelper,
\Magento\Framework\View\Design\Theme\LabelFactory $labelFactory,
array $data = []
) {
$this->_labelFactory = $labelFactory;
parent::__construct($context, $resourceHelper, $data);
}
/**
* Retrieve filter HTML
*
* @return string
*/
public function getHtml()
{
$options = $this->getOptions();
if ($this->getColumn()->getWithEmpty()) {
array_unshift($options, ['value' => '', 'label' => '']);
}
$html = sprintf(
'<select name="%s" id="%s" class="admin__control-select no-changes" %s>%s</select>',
$this->_getHtmlName(),
$this->_getHtmlId(),
$this->getUiId('filter', $this->_getHtmlName()),
$this->_drawOptions($options)
);
return $html;
}
/**
* Retrieve options set in column.
*
* Or load if options was not set.
*
* @return array
*/
public function getOptions()
{
$options = $this->getColumn()->getOptions();
if (empty($options) || !is_array($options)) {
/** @var $label \Magento\Framework\View\Design\Theme\Label */
$label = $this->_labelFactory->create();
$options = $label->getLabelsCollection();
}
return $options;
}
/**
* Render SELECT options
*
* @param array $options
* @return string
*/
protected function _drawOptions($options)
{
if (empty($options) || !is_array($options)) {
return '';
}
$value = $this->getValue();
$html = '';
foreach ($options as $option) {
if (!isset($option['value']) || !isset($option['label'])) {
continue;
}
if (is_array($option['value'])) {
$html .= '<optgroup label="' . $option['label'] . '">' . $this->_drawOptions(
$option['value']
) . '</optgroup>';
} else {
$selected = $option['value'] == $value && $value !== null ? ' selected="selected"' : '';
$html .= '<option value="' . $option['value'] . '"' . $selected . '>' . $option['label'] . '</option>';
}
}
return $html;
}
/**
* Retrieve filter condition for collection
*
* @return mixed
*/
public function getCondition()
{
if ($this->getValue() === null) {
return null;
}
$value = $this->getValue();
if ($value == 'all') {
$value = '';
}
return ['eq' => $value];
}
}
?>
Did this file decode correctly?
Original Code
<?php
/**
* Copyright Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
/**
* Theme grid column filter
*/
namespace Magento\Backend\Block\Widget\Grid\Column\Filter;
/**
* Theme grid filter
*/
class Theme extends \Magento\Backend\Block\Widget\Grid\Column\Filter\AbstractFilter
{
/**
* @var \Magento\Framework\View\Design\Theme\LabelFactory
*/
protected $_labelFactory;
/**
* @param \Magento\Backend\Block\Context $context
* @param \Magento\Framework\DB\Helper $resourceHelper
* @param \Magento\Framework\View\Design\Theme\LabelFactory $labelFactory
* @param array $data
*/
public function __construct(
\Magento\Backend\Block\Context $context,
\Magento\Framework\DB\Helper $resourceHelper,
\Magento\Framework\View\Design\Theme\LabelFactory $labelFactory,
array $data = []
) {
$this->_labelFactory = $labelFactory;
parent::__construct($context, $resourceHelper, $data);
}
/**
* Retrieve filter HTML
*
* @return string
*/
public function getHtml()
{
$options = $this->getOptions();
if ($this->getColumn()->getWithEmpty()) {
array_unshift($options, ['value' => '', 'label' => '']);
}
$html = sprintf(
'<select name="%s" id="%s" class="admin__control-select no-changes" %s>%s</select>',
$this->_getHtmlName(),
$this->_getHtmlId(),
$this->getUiId('filter', $this->_getHtmlName()),
$this->_drawOptions($options)
);
return $html;
}
/**
* Retrieve options set in column.
*
* Or load if options was not set.
*
* @return array
*/
public function getOptions()
{
$options = $this->getColumn()->getOptions();
if (empty($options) || !is_array($options)) {
/** @var $label \Magento\Framework\View\Design\Theme\Label */
$label = $this->_labelFactory->create();
$options = $label->getLabelsCollection();
}
return $options;
}
/**
* Render SELECT options
*
* @param array $options
* @return string
*/
protected function _drawOptions($options)
{
if (empty($options) || !is_array($options)) {
return '';
}
$value = $this->getValue();
$html = '';
foreach ($options as $option) {
if (!isset($option['value']) || !isset($option['label'])) {
continue;
}
if (is_array($option['value'])) {
$html .= '<optgroup label="' . $option['label'] . '">' . $this->_drawOptions(
$option['value']
) . '</optgroup>';
} else {
$selected = $option['value'] == $value && $value !== null ? ' selected="selected"' : '';
$html .= '<option value="' . $option['value'] . '"' . $selected . '>' . $option['label'] . '</option>';
}
}
return $html;
}
/**
* Retrieve filter condition for collection
*
* @return mixed
*/
public function getCondition()
{
if ($this->getValue() === null) {
return null;
}
$value = $this->getValue();
if ($value == 'all') {
$value = '';
}
return ['eq' => $value];
}
}
Function Calls
| None |
Stats
| MD5 | 724c8ea44e4c94901ab8002d8275ee0d |
| Eval Count | 0 |
| Decode Time | 110 ms |