wishlistProvider = $wishlistProvider; $this->formKeyValidator = $formKeyValidator; $this->itemCarrier = $itemCarrier; parent::__construct($context); } /** * Add all items from wishlist to shopping cart * * @return \Magento\Framework\Controller\ResultInterface */ public function execute() { /** @var \Magento\Framework\Controller\Result\Forward $resultForward */ $resultForward = $this->resultFactory->create(ResultFactory::TYPE_FORWARD); if (!$this->formKeyValidator->validate($this->getRequest())) { $resultForward->forward('noroute'); return $resultForward; } $wishlist = $this->wishlistProvider->getWishlist(); if (!$wishlist) { $resultForward->forward('noroute'); return $resultForward; } /** @var \Magento\Framework\Controller\Result\Redirect $resultRedirect */ $resultRedirect = $this->resultFactory->create(ResultFactory::TYPE_REDIRECT); $redirectUrl = $this->itemCarrier->moveAllToCart($wishlist, $this->getRequest()->getParam('qty')); $resultRedirect->setUrl($redirectUrl); return $resultRedirect; } }