Skip to content

Commit 735ac8d

Browse files
committed
Fix blocked video styles, DEV-1111
1 parent 8e13efa commit 735ac8d

File tree

1 file changed

+25
-6
lines changed

1 file changed

+25
-6
lines changed

view/frontend/templates/iframe-handler.phtml

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
<?php
2-
32
declare(strict_types=1);
43

54
use CustomGento\Cookiebot\ViewModel\Script;
@@ -12,8 +11,8 @@ use Magento\Framework\View\Helper\SecureHtmlRenderer;
1211
/** @var SecureHtmlRenderer $secureRenderer */
1312
/** @var Script $viewModel */
1413
$viewModel = $block->getData('view_model');
15-
$consentMessage = __('Please <a href="javascript:Cookiebot.renew()" class="cookiebot-iframe-consent-link">accept %1 cookies</a> to view this %2 content.');
16-
14+
$consentMessage
15+
= __('Please <a href="javascript:Cookiebot.renew()" class="cookiebot-iframe-consent-link">accept %1 cookies</a> to view this %2 content.');
1716
$scriptString = '
1817
document.addEventListener("DOMContentLoaded", function () {
1918
((document, selector, consentType) => {
@@ -61,9 +60,29 @@ $scriptString = '
6160
iframe.parentNode.insertBefore(divElement, iframe);
6261
});
6362
})(document, "iframe[data-cookieblock-src]", "marketing");
64-
})
65-
';
66-
63+
64+
function fixIframeStyle () {
65+
((document, selector) => {
66+
document.querySelectorAll(selector).forEach(iframe => {
67+
const pageBuilderContainer = iframe.closest(".pagebuilder-video-container");
68+
const pageBuilderColumn = iframe.closest(".pagebuilder-column");
69+
if (!pageBuilderContainer) {
70+
return;
71+
}
72+
if (!Cookiebot?.consent?.marketing) {
73+
pageBuilderContainer.style.paddingTop = "0";
74+
pageBuilderColumn.style.backgroundColor = "#fff";
75+
} else {
76+
pageBuilderContainer.style.paddingTop = "56.25%";
77+
}
78+
});
79+
})(document, "iframe");
80+
}
81+
82+
addEventListener("CookiebotOnConsentReady", function() {
83+
fixIframeStyle()
84+
});
85+
})';
6786
// checking on if SecureHtmlRenderer exists first, because this module is still compatible with Magento 2.3.x which doesn't include this class
6887
if (class_exists(SecureHtmlRenderer::class)) {
6988
echo $secureRenderer->renderTag('script', ['data-cookieconsent' => 'ignore'], $scriptString, false);

0 commit comments

Comments
 (0)