/** * Listen to the event core_layout_render_element * * @param \Magento\Framework\Event\Observer $observer * @return $this */ public function execute(\Magento\Framework\Event\Observer $observer) { if ($this->helper->isEnabled() == false) { return $this; } if ($this->helper->isMethodObserver() == false) { return $this; } $event = $observer->getEvent(); $blockName = $event->getElementName(); if (empty($blockName)) { return $this; } if ($blockName != 'root') { return $this; } $transport = $event->getTransport(); $html = $transport->getHtml(); $script = $this->helper->getHeaderScript(); if (empty($script)) { $this->helper->debug('Observer: Empty script'); return $this; } $html = preg_replace('/\\<body([^\\>]+)\\>/', '\\0' . $script, $html); $this->helper->debug('Observer: Replacing header'); $transport->setHtml($html); return $this; }
/** * Return whether this module is enabled or not * * @return bool */ public function isEnabled() { return $this->helper->isEnabled(); }
/** * @test * @covers \Yireo\GoogleTagManager2\Helper\Data::getConfigValue */ public function testIsEnabled() { $this->assertEquals($this->target->isEnabled(), (bool) $this->_getConfigValue('enabled')); }