![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-backend/Block/Widget/Grid/Column/Renderer/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Backend\Block\Widget\Grid\Column\Renderer; /** * Grid select input column renderer * * @api * @since 100.0.2 */ class Select extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractRenderer { /** * @var \Magento\Backend\Block\Widget\Grid\Column\Renderer\Options\Converter */ protected $_converter; /** * @param \Magento\Backend\Block\Context $context * @param \Magento\Backend\Block\Widget\Grid\Column\Renderer\Options\Converter $converter * @param array $data */ public function __construct( \Magento\Backend\Block\Context $context, \Magento\Backend\Block\Widget\Grid\Column\Renderer\Options\Converter $converter, array $data = [] ) { $this->_converter = $converter; parent::__construct($context, $data); } /** * Get options from column * * @return array */ protected function _getOptions() { return $this->_converter->toFlatArray($this->getColumn()->getOptions()); } /** * Renders grid column * * @param \Magento\Framework\DataObject $row * @return string */ public function render(\Magento\Framework\DataObject $row) { $name = $this->getColumn()->getName() ? $this->getColumn()->getName() : $this->getColumn()->getId(); $html = '<select name="' . $this->escapeHtml($name) . '" ' . $this->getColumn()->getValidateClass() . '>'; $value = $row->getData($this->getColumn()->getIndex()); foreach ($this->_getOptions() as $val => $label) { $selected = $val == $value && $value !== null ? ' selected="selected"' : ''; $html .= '<option value="' . $this->escapeHtml($val) . '"' . $selected . '>'; $html .= $this->escapeHtml($label) . '</option>'; } $html .= '</select>'; return $html; } }