12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Backend\Block\Widget\Grid\Column\Renderer;
- use Magento\Framework\DataObject;
- /**
- * Backend grid item renderer
- *
- * @api
- * @deprecated 100.2.0 in favour of UI component implementation
- * @since 100.0.2
- */
- class Text extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractRenderer
- {
- /**
- * Format variables pattern
- *
- * @var string
- */
- protected $_variablePattern = '/\\$([a-z0-9_]+)/i';
- /**
- * Get value for the cel
- *
- * @param DataObject $row
- * @return string
- */
- public function _getValue(DataObject $row)
- {
- if (null === $this->getColumn()->getFormat()) {
- return $this->getSimpleValue($row);
- }
- return $this->getFormattedValue($row);
- }
- /**
- * Get simple value
- *
- * @param DataObject $row
- * @return string
- */
- private function getSimpleValue(DataObject $row)
- {
- $data = parent::_getValue($row);
- $value = null === $data ? $this->getColumn()->getDefault() : $data;
- if (true === $this->getColumn()->getTranslate()) {
- $value = __($value);
- }
- return $this->escapeHtml($value);
- }
- /**
- * Replace placeholders in the string with values
- *
- * @param DataObject $row
- * @return string
- */
- private function getFormattedValue(DataObject $row)
- {
- $value = $this->getColumn()->getFormat() ?: null;
- if (true === $this->getColumn()->getTranslate()) {
- $value = __($value);
- }
- if (preg_match_all($this->_variablePattern, $value, $matches)) {
- foreach ($matches[0] as $index => $match) {
- $replacement = $row->getData($matches[1][$index]);
- $value = str_replace($match, $replacement, $value);
- }
- }
- return $this->escapeHtml($value);
- }
- }
|