* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/AFL-3.0 Academic Free License version 3.0 */ namespace PrestaShop\Module\PsxMarketingWithGoogle\Provider; use Context; use PrestaShop\Module\PsxMarketingWithGoogle\DTO\ConversionEventData; class CartEventDataProvider { /** * @var Context */ protected $context; public function __construct(Context $context) { $this->context = $context; } /** * Return the items concerned by the transaction * https://developers.google.com/analytics/devguides/collection/gtagjs/enhanced-ecommerce#action-data */ public function getEventData($sendTo, $data): ConversionEventData { $product = $data['product']; $idProductAttribute = isset($data['id_product_attribute']) ? $data['id_product_attribute'] : 0; return (new ConversionEventData()) ->setSendTo($sendTo) ->setCurrency($this->context->currency->iso_code) ->setValue((string) \Product::getPriceStatic($product->id, true, $idProductAttribute, 2)); } }