/** * 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 a configuration value * * @param null $key * @param null $default_value * * @return mixed */ public function getConfig($key = null, $default_value = null) { return $this->helper->getConfigValue($key, $default_value); }
/** * @test * @covers \Yireo\GoogleTagManager2\Helper\Data::getConfigValue */ public function testIsDebug() { $this->assertEquals($this->target->isDebug(), (bool) $this->_getConfigValue('debug')); }