| Current Path : /home/rtorresani/www/vendor/magento/module-offline-shipping/Block/Adminhtml/Form/Field/ |
| Current File : //home/rtorresani/www/vendor/magento/module-offline-shipping/Block/Adminhtml/Form/Field/Export.php |
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\OfflineShipping\Block\Adminhtml\Form\Field;
/**
* Export CSV button for shipping table rates
*
* @author Magento Core Team <core@magentocommerce.com>
*/
class Export extends \Magento\Framework\Data\Form\Element\AbstractElement
{
/**
* @var \Magento\Backend\Model\UrlInterface
*/
protected $_backendUrl;
/**
* @param \Magento\Framework\Data\Form\Element\Factory $factoryElement
* @param \Magento\Framework\Data\Form\Element\CollectionFactory $factoryCollection
* @param \Magento\Framework\Escaper $escaper
* @param \Magento\Backend\Model\UrlInterface $backendUrl
* @param array $data
*/
public function __construct(
\Magento\Framework\Data\Form\Element\Factory $factoryElement,
\Magento\Framework\Data\Form\Element\CollectionFactory $factoryCollection,
\Magento\Framework\Escaper $escaper,
\Magento\Backend\Model\UrlInterface $backendUrl,
array $data = []
) {
parent::__construct($factoryElement, $factoryCollection, $escaper, $data);
$this->_backendUrl = $backendUrl;
}
/**
* @return string
*/
public function getElementHtml()
{
/** @var \Magento\Backend\Block\Widget\Button $buttonBlock */
$buttonBlock = $this->getForm()->getParent()->getLayout()->createBlock(
\Magento\Backend\Block\Widget\Button::class
);
$params = ['website' => $buttonBlock->getRequest()->getParam('website')];
$url = $this->_backendUrl->getUrl("*/*/exportTablerates", $params);
$data = [
'label' => __('Export CSV'),
'onclick' => "setLocation('" .
$url .
"conditionName/' + $('carriers_tablerate_condition_name').value + '/tablerates.csv' )",
'class' => '',
];
$html = $buttonBlock->setData($data)->toHtml();
return $html;
}
}