12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- <?php
- /**
- *
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Newsletter\Controller\Adminhtml\Subscriber;
- use Magento\Newsletter\Controller\Adminhtml\Subscriber;
- use Magento\Backend\App\Action\Context;
- use Magento\Framework\App\Response\Http\FileFactory;
- use Magento\Newsletter\Model\SubscriberFactory;
- use Magento\Framework\App\ObjectManager;
- class MassDelete extends Subscriber
- {
- /**
- * @var SubscriberFactory
- */
- private $subscriberFactory;
-
- /**
- * @param Context $context
- * @param FileFactory $fileFactory
- */
- public function __construct(
- Context $context,
- FileFactory $fileFactory,
- SubscriberFactory $subscriberFactory = null
- ) {
- $this->subscriberFactory = $subscriberFactory ?: ObjectManager::getInstance()->get(SubscriberFactory::class);
- parent::__construct($context, $fileFactory);
- }
-
- /**
- * Delete one or more subscribers action
- *
- * @return void
- */
- public function execute()
- {
- $subscribersIds = $this->getRequest()->getParam('subscriber');
- if (!is_array($subscribersIds)) {
- $this->messageManager->addError(__('Please select one or more subscribers.'));
- } else {
- try {
- foreach ($subscribersIds as $subscriberId) {
- $subscriber = $this->subscriberFactory->create()->load(
- $subscriberId
- );
- $subscriber->delete();
- }
- $this->messageManager->addSuccess(__('Total of %1 record(s) were deleted.', count($subscribersIds)));
- } catch (\Exception $e) {
- $this->messageManager->addError($e->getMessage());
- }
- }
- $this->_redirect('*/*/index');
- }
- }
|