WishlistShareObserver.php 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Reports\Observer;
  7. use Magento\Framework\Event\ObserverInterface;
  8. use Magento\Reports\Model\Event;
  9. /**
  10. * Reports Event observer model
  11. */
  12. class WishlistShareObserver implements ObserverInterface
  13. {
  14. /**
  15. * @var EventSaver
  16. */
  17. protected $eventSaver;
  18. /**
  19. * @var \Magento\Reports\Model\ReportStatus
  20. */
  21. private $reportStatus;
  22. /**
  23. * @param EventSaver $eventSaver
  24. * @param \Magento\Reports\Model\ReportStatus $reportStatus
  25. */
  26. public function __construct(
  27. EventSaver $eventSaver,
  28. \Magento\Reports\Model\ReportStatus $reportStatus
  29. ) {
  30. $this->eventSaver = $eventSaver;
  31. $this->reportStatus = $reportStatus;
  32. }
  33. /**
  34. * Share customer wishlist action
  35. *
  36. * @param \Magento\Framework\Event\Observer $observer
  37. * @return void
  38. */
  39. public function execute(\Magento\Framework\Event\Observer $observer)
  40. {
  41. if (!$this->reportStatus->isReportEnabled(Event::EVENT_WISHLIST_SHARE)) {
  42. return;
  43. }
  44. $this->eventSaver->save(
  45. Event::EVENT_WISHLIST_SHARE,
  46. $observer->getEvent()->getWishlist()->getId()
  47. );
  48. }
  49. }