customerRepository = $customerRepository; $this->subscriberFactory = $subscriberFactory; } /** * Customer mass subscribe action * * @param AbstractCollection $collection * @return \Magento\Backend\Model\View\Result\Redirect */ protected function massAction(AbstractCollection $collection) { $customersUpdated = 0; foreach ($collection->getAllIds() as $customerId) { // Verify customer exists $this->customerRepository->getById($customerId); $this->subscriberFactory->create()->subscribeCustomerById($customerId); $customersUpdated++; } if ($customersUpdated) { $this->messageManager->addSuccess(__('A total of %1 record(s) were updated.', $customersUpdated)); } /** @var \Magento\Backend\Model\View\Result\Redirect $resultRedirect */ $resultRedirect = $this->resultFactory->create(ResultFactory::TYPE_REDIRECT); $resultRedirect->setPath($this->getComponentRefererUrl()); return $resultRedirect; } }