| Current Path : /home/rtorresani/www/vendor/magento/module-paypal/Controller/Adminhtml/Paypal/Reports/ |
| Current File : //home/rtorresani/www/vendor/magento/module-paypal/Controller/Adminhtml/Paypal/Reports/Fetch.php |
<?php
/**
*
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Paypal\Controller\Adminhtml\Paypal\Reports;
use Magento\Framework\Controller\ResultFactory;
class Fetch extends \Magento\Paypal\Controller\Adminhtml\Paypal\Reports
{
/**
* Authorization level of a basic admin session
*
* @see _isAllowed()
*/
const ADMIN_RESOURCE = 'Magento_Paypal::fetch';
/**
* Forced fetch reports action
*
* @return \Magento\Backend\Model\View\Result\Redirect
*/
public function execute()
{
try {
$reports = $this->_settlementFactory->create();
/* @var $reports \Magento\Paypal\Model\Report\Settlement */
$credentials = $reports->getSftpCredentials();
if (empty($credentials)) {
throw new \Magento\Framework\Exception\LocalizedException(
__('We found nothing to fetch because of an empty configuration.')
);
}
foreach ($credentials as $config) {
try {
$fetched = $reports->fetchAndSave(
\Magento\Paypal\Model\Report\Settlement::createConnection($config)
);
$this->messageManager->addSuccessMessage(
__(
'We fetched %1 report rows from "%2@%3."',
$fetched,
$config['username'],
$config['hostname']
)
);
} catch (\Exception $e) {
$this->messageManager->addExceptionMessage(
$e,
__('We can\'t fetch reports from "%1@%2."', $config['username'], $config['hostname'])
);
}
}
} catch (\Exception $e) {
$this->messageManager->addExceptionMessage($e, $e->getMessage());
}
/** @var \Magento\Backend\Model\View\Result\Redirect $resultRedirect */
$resultRedirect = $this->resultFactory->create(ResultFactory::TYPE_REDIRECT);
return $resultRedirect->setPath('*/*/index');
}
}