File: /home/petsclubcc/magento/vendor/magento/module-import-export/Controller/Adminhtml/Export/Export.php
<?php
/**
* Copyright © 2016 Magento. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\ImportExport\Controller\Adminhtml\Export;
use Magento\Framework\Controller\ResultFactory;
use Magento\ImportExport\Controller\Adminhtml\Export as ExportController;
use Magento\Backend\App\Action\Context;
use Magento\Framework\App\Response\Http\FileFactory;
use Magento\ImportExport\Model\Export as ExportModel;
use Magento\Framework\App\Filesystem\DirectoryList;
use Magento\Framework\Exception\LocalizedException;
class Export extends ExportController
{
/**
* @var \Magento\Framework\App\Response\Http\FileFactory
*/
protected $fileFactory;
/**
* @param \Magento\Backend\App\Action\Context $context
* @param \Magento\Framework\App\Response\Http\FileFactory $fileFactory
*/
public function __construct(
Context $context,
FileFactory $fileFactory
) {
$this->fileFactory = $fileFactory;
parent::__construct($context);
}
/**
* Load data with filter applying and create file for download.
*
* @return \Magento\Backend\Model\View\Result\Redirect
*/
public function execute()
{
if ($this->getRequest()->getPost(ExportModel::FILTER_ELEMENT_GROUP)) {
try {
/** @var $model \Magento\ImportExport\Model\Export */
$model = $this->_objectManager->create('Magento\ImportExport\Model\Export');
$model->setData($this->getRequest()->getParams());
return $this->fileFactory->create(
$model->getFileName(),
$model->export(),
DirectoryList::VAR_DIR,
$model->getContentType()
);
} catch (LocalizedException $e) {
$this->messageManager->addError($e->getMessage());
} catch (\Exception $e) {
$this->_objectManager->get('Psr\Log\LoggerInterface')->critical($e);
$this->messageManager->addError(__('Please correct the data sent value.'));
}
} else {
$this->messageManager->addError(__('Please correct the data sent value.'));
}
/** @var \Magento\Backend\Model\View\Result\Redirect $resultRedirect */
$resultRedirect = $this->resultFactory->create(ResultFactory::TYPE_REDIRECT);
$resultRedirect->setPath('adminhtml/*/index');
return $resultRedirect;
}
}