/**
  * 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;
 }
Ejemplo n.º 2
0
 /**
  * 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);
 }
Ejemplo n.º 3
0
 /**
  * @test
  * @covers \Yireo\GoogleTagManager2\Helper\Data::getConfigValue
  */
 public function testIsDebug()
 {
     $this->assertEquals($this->target->isDebug(), (bool) $this->_getConfigValue('debug'));
 }