_helperData = $helperData;
}
/**
* @param $page
* @param $subject
* @param $result
* @param $button
*
* @return string
* @throws LocalizedException
* @throws NoSuchEntityException
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
public function getHtmlOtherPage($page, $subject, $result, $button)
{
$parentStockCheck = true;
$preOrderStockQty =0;
if ($page == 'wishlist_index_index' && $subject->getSaleableItem()->getTypeId() == 'configurable') {
$sku = $subject->getSaleableItem()->getSku();
$product = $this->helper->getProductItemBySku($sku);
$productId = $product->getId();
$preOrder = $product->getData('preorder');
$isInStock = $product->isAvailable();
} else {
$productId = $subject->getSaleableItem()->getId();
$preOrder = $this->helper->getPreOrder($productId, $this->helper->getStoreId());
$isInStock = $this->helper->getIsInStock($productId);
$preOrderStockQty = $this->_helperData->getPreorderStockQty($productId);
}
if ($subject->getSaleableItem()->getTypeId() == 'configurable') {
$parentStockCheck = $this->helperProduct->isStockParent($productId);
}
if (($preOrder == 1 || $preOrder == 2 && !$isInStock) || !$parentStockCheck) {
if ($this->helper->isEnable() && !$this->helper->isMix() && $preOrderStockQty <= 0) {
$button = '';
}
$result = $result . "" . $button . "" . '
';
}
return $result;
}
}