<?php
/**
 * Magento 2 Google Analytics 4 (GA4) GTM
 *
 * NOTICE OF LICENSE
 *
 * This source file is subject to the Anowave license that is
 * available through the world-wide-web at this URL:
 * https://www.anowave.com/license-agreement/
 *
 * DISCLAIMER
 *
 * Do not edit or add to this file if you wish to upgrade this extension to newer
 * version in the future.
 *
 * @category 	Anowave
 * @package 	Anowave_Ec
 * @copyright 	Copyright (c) 2026 Anowave (https://www.anowave.com/)
 * @license  	https://www.anowave.com/license-agreement/
 */
namespace Anowave\Ec\Observer;

use Magento\Catalog\Api\Data\ProductInterface;
use Magento\Framework\Event\Observer as Event;
use Magento\Framework\Event\ObserverInterface;
use Anowave\Ec\Registry\CurrentCategory;

/**
 * Class RegisterCurrentCategory
 *
 * Current product observer
 */
class RegisterCurrentCategory implements ObserverInterface
{
    /**
     * @var CurrentProduct
     */
    private $currentCategory;

    public function __construct
    (
        CurrentCategory $currentCategory
    ) 
    {
        $this->currentCategory = $currentCategory;
    }

    /**
     * Trigger event
     *
     * @param Event $event
     */
    public function execute(Event $event)
    {
        /** 
         * @var ProductInterface $product 
         **/
        $category = $event->getData('category');

        $this->currentCategory->set($category);
    }
}