57 $this->_giftMessageMessage = $giftMessageMessage;
67 $giftmessages = $this->getGiftmessages();
69 if (!is_array($giftmessages)) {
73 foreach ($giftmessages as $entityId => $giftmessage) {
96 $giftMessages = $this->getGiftmessages();
98 if (!is_array($giftMessages)) {
121 $giftmessageModel = $this->_messageFactory->create();
142 $giftmessageModel->load(
$entityModel->getGiftMessageId());
145 $giftmessageModel->addData($giftmessage);
147 if ($giftmessageModel->isMessageEmpty() && $giftmessageModel->getId()) {
150 $this->_saved =
false;
151 }
elseif (!$giftmessageModel->isMessageEmpty()) {
152 $giftmessageModel->save();
153 $entityModel->setGiftMessageId($giftmessageModel->getId());
157 $this->_saved =
true;
172 if ($giftmessageModel ===
null) {
173 $giftmessageModel = $this->_messageFactory->create()->load(
$entityModel->getGiftMessageId());
175 $giftmessageModel->delete();
188 $this->_session->setAllowQuoteItemsGiftMessage(
$items);
216 if (!is_array($this->_session->getAllowQuoteItemsGiftMessage())) {
220 return $this->_session->getAllowQuoteItemsGiftMessage();
269 return $this->_giftMessageMessage->isMessagesAllowed(
'item',
$item,
$item->getStore());
281 $deleteAllowedItems = [];
283 $product = $this->productRepository->getById(
$productId,
false, $this->_session->getStore()->getId());
290 if (in_array(
$item->getId(), $allowedItems) && !isset(
$data[
'giftmessage'])) {
291 $deleteAllowedItems[] =
$item->getId();
292 }
elseif (!in_array(
$item->getId(), $allowedItems) && isset(
$data[
'giftmessage'])) {
293 $allowedItems[] =
$item->getId();
297 $allowedItems = array_diff($allowedItems, $deleteAllowedItems);
310 $deleteAllowedItems = [];
316 $deleteAllowedItems[] = $itemId;
320 if (in_array(
$item->getId(), $allowedItems) && !isset(
$data[
'giftmessage'])) {
321 $deleteAllowedItems[] =
$item->getId();
322 }
elseif (!in_array(
$item->getId(), $allowedItems) && isset(
$data[
'giftmessage'])) {
323 $allowedItems[] =
$item->getId();
327 $allowedItems = array_diff($allowedItems, $deleteAllowedItems);
342 'item' =>
'quote_item',
344 'order_item' =>
'order_item',
361 return $this->_session->getQuote();
elseif(isset( $params[ 'redirect_parent']))
setAllowQuoteItems($items)
importAllowQuoteItemsFromProducts($products)
_deleteOne($entityModel, $giftmessageModel=null)
getAllowQuoteItemsProducts()
_saveOne($entityId, $giftmessage, $entityType)
__construct(\Magento\Catalog\Api\ProductRepositoryInterface $productRepository, \Magento\GiftMessage\Model\MessageFactory $messageFactory, \Magento\Backend\Model\Session\Quote $session, \Magento\GiftMessage\Helper\Message $giftMessageMessage)
importAllowQuoteItemsFromItems($items)
getIsAllowedQuoteItem($item)
isGiftMessagesAvailable($item)