Skip to content

Commit

Permalink
Code refactoring
Browse files Browse the repository at this point in the history
  • Loading branch information
srenon committed May 10, 2020
1 parent 685d3c4 commit 167dfdb
Show file tree
Hide file tree
Showing 5 changed files with 29 additions and 34 deletions.
4 changes: 0 additions & 4 deletions CustomerData/JsDataLayer.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,6 @@
use MagePal\GoogleTagManager\Model\Cart as GtmCartModel;
use MagePal\GoogleTagManager\Model\Customer as GtmCustomerModel;

/**
* Class JsDataLayer
* @package MagePal\GoogleTagManager\CustomerData
*/
class JsDataLayer implements SectionSourceInterface
{
/**
Expand Down
4 changes: 0 additions & 4 deletions DataLayer/CategoryData/CategoryAbstract.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,6 @@

use Magento\Catalog\Model\Category;

/**
* Class CategoryPageProvider
* @package MagePal\GoogleTagManager\Model\DataLayer
*/
abstract class CategoryAbstract
{
/**
Expand Down
11 changes: 4 additions & 7 deletions DataLayer/CategoryData/CategoryProvider.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,10 @@

namespace MagePal\GoogleTagManager\DataLayer\CategoryData;

/**
* Class CategoryProvider
* @package MagePal\GoogleTagManager\DataLayer
*/
class CategoryProvider extends CategoryAbstract
{
/**
* @param array $categoryProviders
* @codeCoverageIgnore
*/
public function __construct(
array $categoryProviders = []
Expand All @@ -29,12 +24,14 @@ public function __construct(
public function getData()
{
$data = $this->getcategoryData();
$arraysToMerge = [];

/** @var CategoryProvider $categoryProvider */
foreach ($this->getCategoryProviders() as $categoryProvider) {
$categoryProvider->setCategory($this->getCategory())->setCategoryData($data);
$data = array_merge($data, $categoryProvider->getData());
$arraysToMerge[] = $categoryProvider->getData();
}

return $data;
return empty($arraysToMerge) ? $data : array_merge($data, ...$arraysToMerge);
}
}
6 changes: 4 additions & 2 deletions view/frontend/templates/iframe.phtml
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,12 @@
* See COPYING.txt for license details.
* http://www.magepal.com | [email protected]
*/

/** @var $block MagePal\GoogleTagManager\Block\GtmCode **/
$accountId = $block->getAccountId();
?>
<?php /** @var $block MagePal\GoogleTagManager\Block\GtmCode **/ ?>

<!-- Google Tag Manager by MagePal -->
<noscript><iframe src="<?= '/' . '/' ?>www.googletagmanager.com/ns.html?id=<?php echo $block->getAccountId() ?>"
<noscript><iframe src="<?= '/' . '/' ?>www.googletagmanager.com/ns.html?id=<?= /* @noEscape */ $accountId ?>"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager by MagePal -->
38 changes: 21 additions & 17 deletions view/frontend/templates/js.phtml
Original file line number Diff line number Diff line change
Expand Up @@ -4,36 +4,40 @@
* See COPYING.txt for license details.
* http://www.magepal.com | [email protected]
*/

/** @var $block MagePal\GoogleTagManager\Block\DataLayer **/
$dataLayerName = $block->getDataLayerName();
$accountId = $block->getAccountId();
?>
<?php /** @var $block MagePal\GoogleTagManager\Block\DataLayer **/ ?>

<!-- Google Tag Manager by MagePal -->
<script type="text/javascript">
window.<?= $block->getDataLayerName() ?> = window.<?= $block->getDataLayerName() ?> || [];
window.<?= /* @noEscape */ $dataLayerName ?> = window.<?= /* @noEscape */ $dataLayerName ?> || [];

<?php if (!$block->isGdprEnabled() && $block->addJsInHead()) : ?>
<?= $block->getDataLayerJs() ?>
<?php if (!$block->isGdprEnabled() && $block->addJsInHead()): ?>
<?= /* @noEscape */ $block->getDataLayerJs() ?>
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
j=d.createElement(s),dl=l!='<?= /* @noEscape */ $dataLayerName ?>'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','<?= $block->getDataLayerName() ?>','<?= $block->getAccountId() ?>');
<?php endif; ?>
})(window,document,'script','<?= /* @noEscape */ $dataLayerName ?>','<?= /* @noEscape */ $accountId ?>');
<?php endif; ?>
</script>

<?php if ($block->isGdprEnabled() || !$block->addJsInHead()) : ?>
<?php if ($block->isGdprEnabled() || !$block->addJsInHead()): ?>
<script type="text/x-magento-init">
{
"*": {
"magepalGtmDatalayer": {
"isCookieRestrictionModeEnabled": <?= $block->isCookieRestrictionModeEnabled() ?>,
"currentWebsite": <?= $block->getCurrentWebsiteId() ?>,
"cookieName": "<?= $block->getCookieRestrictionName() ?>",
"dataLayer": "<?= $block->getDataLayerName() ?>",
"accountId": "<?= $block->getAccountId() ?>",
"data": <?= $block->getDataLayerJson() ?>,
"isGdprEnabled": <?= $block->isGdprEnabled() ?>,
"gdprOption": <?= $block->getGdprOption() ?>,
"addJsInHeader": <?= $block->addJsInHead() ?>
"isCookieRestrictionModeEnabled": <?= /* @noEscape */ $block->isCookieRestrictionModeEnabled() ?>,
"currentWebsite": <?= /* @noEscape */ $block->getCurrentWebsiteId() ?>,
"cookieName": "<?= /* @noEscape */ $block->getCookieRestrictionName() ?>",
"dataLayer": "<?= /* @noEscape */ $block->getDataLayerName() ?>",
"accountId": "<?= /* @noEscape */ $block->getAccountId() ?>",
"data": <?= /* @noEscape */ $block->getDataLayerJson() ?>,
"isGdprEnabled": <?= /* @noEscape */ $block->isGdprEnabled() ?>,
"gdprOption": <?= /* @noEscape */ $block->getGdprOption() ?>,
"addJsInHeader": <?= /* @noEscape */ $block->addJsInHead() ?>
}
}
}
Expand Down

0 comments on commit 167dfdb

Please sign in to comment.