Action.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Cms\Block\Adminhtml\Page\Grid\Renderer;
  7. class Action extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractRenderer
  8. {
  9. /**
  10. * @var Action\UrlBuilder
  11. */
  12. protected $actionUrlBuilder;
  13. /**
  14. * @param \Magento\Backend\Block\Context $context
  15. * @param Action\UrlBuilder $actionUrlBuilder
  16. * @param array $data
  17. */
  18. public function __construct(
  19. \Magento\Backend\Block\Context $context,
  20. Action\UrlBuilder $actionUrlBuilder,
  21. array $data = []
  22. ) {
  23. $this->actionUrlBuilder = $actionUrlBuilder;
  24. parent::__construct($context, $data);
  25. }
  26. /**
  27. * Render action
  28. *
  29. * @param \Magento\Framework\DataObject $row
  30. * @return string
  31. */
  32. public function render(\Magento\Framework\DataObject $row)
  33. {
  34. $href = $this->actionUrlBuilder->getUrl(
  35. $row->getIdentifier(),
  36. $row->getData('_first_store_id'),
  37. $row->getStoreCode()
  38. );
  39. return '<a href="' . $href . '" target="_blank">' . __('Preview') . '</a>';
  40. }
  41. }